Der md-Raid kann nicht auf Laufwerken zusammengefügt werden, die aus ReadyNas Duo v1 gezogen wurden

2843
mr.b

Ich spiele mit einem ReadyNAS-Gerät, das ich kürzlich erworben habe. Es ist eine SPARC-basierte Box, und es läuft Linux.

Da das Gerät ziemlich langsam ist, habe ich ein Laufwerk aus dem Array herausgezogen und hoffte, es wesentlich schneller mit Dateien als über Ethernet zu füllen. Das Zusammenstellen des MD-Raids scheint mir jedoch unmöglich.

Aufbau:

  • /dev/sdb ist ein vom NAS gezogenes Gerät.
  • /dev/sdb[1-3]Partitionen sind vom fdTyp (Linux Raid Autodetect).
  • Jede Partition ist Teil des jeweiligen /dev/md[0-2]raid1-Geräts.
  • Alle RAID-Arrays funktionieren einwandfrei, wenn das Gerät an den NAS angeschlossen ist.

Folgendes bekomme ich:

# mdadm --assemble --scan mdadm: failed to add /dev/sdb3 to /dev/md/2_0: Invalid argument mdadm: failed to RUN_ARRAY /dev/md/2_0: Invalid argument mdadm: failed to add /dev/sdb2 to /dev/md/1_0: Invalid argument mdadm: failed to RUN_ARRAY /dev/md/1_0: Invalid argument mdadm: failed to add /dev/sdb1 to /dev/md/0_0: Invalid argument mdadm: failed to RUN_ARRAY /dev/md/0_0: Invalid argument mdadm: failed to add /dev/sdb to /dev/md/2: Invalid argument mdadm: failed to RUN_ARRAY /dev/md/2: Invalid argument mdadm: No arrays found in config file or automatically  # mdadm -E /dev/sdb1 /dev/sdb1: Magic : a92b4efc Version : 0.90.03 UUID : 8ae34a5e:c446418f:1245590f:4aa53e2a Creation Time : Wed Mar 13 09:56:36 2013 Raid Level : raid1 Used Dev Size : 2047936 (2000.27 MiB 2097.09 MB) Array Size : 2047936 (2000.27 MiB 2097.09 MB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 0  Update Time : Wed Mar 13 10:19:36 2013 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Checksum : f7dff982 - expected 5532a626 Events : 91658897063936   Number Major Minor RaidDevice State this 1 33 1 1 active sync  0 0 22 1 0 active sync 1 1 33 1 1 active sync   # cat /proc/mdstat Personalities : Unused devices: <none> 

Geräte /dev/sdb2und Geräte /dev/sdb3haben die gleiche Ausgabe wie oben, außer UUID, Used Dev Size, Array Size, Preferred Minor, Checksum und Events. Ich habe sie aus Gründen der Übersichtlichkeit weggelassen.

Ich habe irgendwo gelesen, dass der obige Fehler bedeutet, dass Kernelmodule zuerst geladen werden müssen, aber ich glaube, wenn ich ein raid1-Array auf einem anderen Paar von Festplatten erstellt (obwohl diese Festplatte noch vorhanden ist), hätte Linux alles automatisch geladen notwendige Module (korrigiere mich wenn ich hier falsch liege). Und es erkennt immer noch keine MD-Raid-Geräte.

Versuche, ein Array von Hand zusammenzustellen, bringen nichts Nützliches:

# mdadm --assemble /dev/md0 /dev/sdb1 mdadm: failed to add /dev/sdb1 to /dev/md0: Invalid argument mdadm: /dev/md0 assembled from 0 drives - need all 2 to start it (use --run to insist). 

Hier war mdadm sehr klar, was es braucht, da es sich hierbei um ein raid1-Array handelt. Da es sich jedoch um einen Teil der Spiegelkopie handelt, muss es eigenständig arbeiten können:

# mdadm --assemble /dev/md0 /dev/sdb1 --run mdadm: failed to add /dev/sdb1 to /dev/md0: Invalid argument mdadm: failed to RUN_ARRAY /dev/md0: Invalid argument 

Wie kann ich diese MD-RAID-Geräte montieren?

2

1 Antwort auf die Frage

0
azzid

Hatte das gleiche Problem:

$ sudo mdadm --assemble /dev/md100 /dev/sdj3  mdadm: failed to add /dev/sdj3 to /dev/md100: Invalid argument mdadm: /dev/md100 assembled from 0 drives - need all 2 to start it (use --run to insist). 

dmesg hat folgenden Fehler angezeigt:

$ dmesg | grep sdj3 [ 102.886486] sdj: sdj1 sdj2 sdj3 [ 103.138246] md: invalid superblock checksum on sdj3 [ 103.138250] md: sdj3 does not have a valid v0.90 superblock, not importing! 

Welches kann behoben werden durch:

$ sudo mdadm --assemble /dev/md100 /dev/sdj3 --update=summaries --force mdadm: /dev/md100 has been started with 1 drive (out of 2). 

Wenn Sie alle Ihre Laufwerke angeschlossen haben, sollten deren Namen zusammengefügt werden. In diesem Beispiel war nur eine CD (sdj3) angeschlossen.

BEARBEITEN:

Ich sollte ein paar folgende snafus hinzufügen.

Das Anbringen des MD-Arrays ist aufgrund der LVM nicht möglich:

$ sudo mount /dev/md100 /mnt/readynas mount: unknown filesystem type 'LVM2_member' 

lvdisplay kann Ihnen den Namen des Lvm-Geräts geben:

$ sudo lvdisplay | grep "LV Path" LV Path /dev/c/c 

Die Montage dieses Geräts schlägt jedoch auch fehl:

$ sudo mount /dev/c/c /mnt/readynas mount: wrong fs type, bad option, bad superblock on /dev/mapper/c-c, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so 

dmesg sagt dir warum :

$ dmesg | tail -2 [ 2294.007063] EXT4-fs (dm-1): mounting ext3 file system using the ext4 subsystem [ 2294.007069] EXT4-fs (dm-1): bad block size 16384 

Auf Ubuntu, das mit einem anderen Tool zum Einhängen des Dateisystems behandelt werden kann:

$ sudo apt-get install fuseext2 $ sudo fuseext2 -o ro,allow_other /dev/c/c /mnt/readynas