GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie bekomme ich ein inaktives RAID-Gerät wieder zum Laufen?

Für Ihre Bonusfrage:

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

Ich habe festgestellt, dass ich das Array manuell in /etc/mdadm/mdadm.conf hinzufügen muss damit Linux es beim Neustart mounten kann. Ansonsten bekomme ich genau das, was Sie hier haben - md_d1 -Geräte, die inaktiv sind usw.

Die conf-Datei sollte wie unten aussehen - d.h. ein ARRAY -Zeile für jedes md-Gerät. In meinem Fall fehlten die neuen Arrays in dieser Datei, aber wenn Sie sie aufgelistet haben, ist dies wahrscheinlich keine Lösung für Ihr Problem.

# definitions of existing MD arrays
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

Fügen Sie ein Array pro md-Gerät hinzu, und fügen Sie sie nach dem oben eingefügten Kommentar hinzu, oder wenn kein solcher Kommentar vorhanden ist, am Ende der Datei. Sie erhalten die UUIDs, indem Sie sudo mdadm -E --scan ausführen :

$ sudo mdadm -E --scan
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

Wie Sie sehen, können Sie einfach die Ausgabe des Scan-Ergebnisses in die Datei kopieren.

Ich verwende Ubuntu Desktop 10.04 LTS, und soweit ich mich erinnere, unterscheidet sich dieses Verhalten von der Serverversion von Ubuntu, aber es ist so lange her, dass ich meine MD-Geräte auf dem Server erstellt habe, dass ich mich irren kann. Es kann auch sein, dass ich nur eine Option verpasst habe.

Wie auch immer, das Hinzufügen des Arrays in der conf-Datei scheint den Zweck zu erfüllen. Ich habe die oben genannten Raids 1 und 5 jahrelang ohne Probleme ausgeführt.


Warnung: Lassen Sie mich zunächst sagen, dass mir das Folgende (aufgrund der Verwendung von "--force") riskant erscheint, und wenn Sie nicht wiederherstellbare Daten haben, würde ich empfehlen, Kopien der beteiligten Partitionen zu erstellen, bevor Sie anfangen, irgendetwas auszuprobieren unter. Dies hat jedoch bei mir funktioniert.

Ich hatte das gleiche Problem, mit einem Array, das als inaktiv angezeigt wurde, und nichts, was ich getan habe, einschließlich "mdadm --examine --scan>/etc/mdadm.conf", wie von anderen hier vorgeschlagen, hat überhaupt geholfen.

In meinem Fall, als es versuchte, das RAID-5-Array nach einem Laufwerksaustausch zu starten, sagte es, dass es verschmutzt sei (über dmesg ):

md/raid:md2: not clean -- starting background reconstruction
md/raid:md2: device sda4 operational as raid disk 0
md/raid:md2: device sdd4 operational as raid disk 3
md/raid:md2: device sdc4 operational as raid disk 2
md/raid:md2: device sde4 operational as raid disk 4
md/raid:md2: allocated 5334kB
md/raid:md2: cannot start dirty degraded array.

Dadurch wird es in /proc/mdstat als inaktiv angezeigt :

md2 : inactive sda4[0] sdd4[3] sdc4[2] sde4[5]
      3888504544 blocks super 1.2

Ich habe festgestellt, dass alle Geräte die gleichen Ereignisse hatten, mit Ausnahme des Laufwerks, das ich ersetzt hatte (/dev/sdb4 ):

[[email protected] sr]# mdadm -E /dev/sd*4 | grep Event
mdadm: No md superblock detected on /dev/sdb4.
         Events : 8448
         Events : 8448
         Events : 8448
         Events : 8448

Die Array-Details zeigten jedoch, dass 4 von 5 Geräten verfügbar waren:

[[email protected] sr]# mdadm --detail /dev/md2
/dev/md2:
[...]
   Raid Devices : 5
  Total Devices : 4
[...]
 Active Devices : 4
Working Devices : 4
[...]
    Number   Major   Minor   RaidDevice State
       0       8        4        0      inactive dirty  /dev/sda4
       2       8       36        2      inactive dirty  /dev/sdc4
       3       8       52        3      inactive dirty  /dev/sdd4
       5       8       68        4      inactive dirty  /dev/sde4

(Das Obige stammt aus dem Gedächtnis in der Spalte "Status", ich kann es nicht in meinem Scroll-Back-Puffer finden).

Ich konnte dies lösen, indem ich das Array stoppte und es dann wieder zusammensetzte:

mdadm --stop /dev/md2
mdadm -A --force /dev/md2 /dev/sd[acde]4

Zu diesem Zeitpunkt war das Array in Betrieb und lief mit 4 der 5 Geräte, und ich konnte das Ersatzgerät hinzufügen und es neu aufbauen. Ich kann problemlos auf das Dateisystem zugreifen.


Linux
  1. Wie bekomme ich 4k @ 60hz bei 4:2:0 beim Arbeiten in Ubuntu 16.04?

  2. Ersetzen einer ausgefallenen Spiegelfestplatte in einem Software-RAID-Array (mdadm)

  3. Einfaches mdadm RAID 1, das Ersatz nicht aktiviert

  4. Wie kann man mdadm zwingen, das RAID5-Array zu stoppen?

  5. Es ist unmöglich, das Raid-Gerät zu stoppen

Wie erstelle ich ein Array eindeutiger Elemente aus einer Zeichenfolge/einem Array in Bash?

Wie bekomme ich Mumbles Overlay zum Laufen?

Wie bekomme ich ein Iball 3.5g-Modem, das unter Ubuntu funktioniert?

Wie bekomme ich die Helligkeit auf einem Lenovo Ideapad Yoga zum Laufen?

Wie bekomme ich den Lilliput USB-Monitor zum Laufen?

Wie erhalte ich eine funktionierende Mtp-Verbindung für Galaxy S2 in 12.04?