Erstellen einer RAID1-Partition mit mdadm unter Ubuntu

22290
Jonik

Ich versuche, eine RAID1-Partition auf meiner Ubuntu 9.10-Workstation einzurichten.

Bei diesem Dual-Boot-System läuft Ubuntu von einem separaten Laufwerk ( /dev/sdc- einer SSD, die recht klein ist, weshalb ich mehr Speicherplatz benötige). Daneben gibt es zwei herkömmliche 500-GB-Festplatten, auf denen Windows 7 installiert ist (ich möchte, dass die Windows-Installation intakt bleibt) und etwa die Hälfte des Speicherplatzes nicht zugewiesen ist. In diesem Bereich möchte ich eine einzige große RAID1-Partition für Linux einrichten.

(Dies ist meines Erachtens Software-RAID, wohingegen die Windows-Partitionen auf Hardware-RAID basieren. Ich hoffe, das ist kein Problem ... Edit : Siehe Peters Kommentar. Ich denke, das sollte kein Problem sein, seit ich es sehe beide Laufwerke separat unter Linux.)

Auf beiden Platten, /dev/sdaund /dev/sdbich erstellt, fdisk, identische neue Partitionen vom Typ „Linux RAID Autodetect“ mit dem nicht zugeordneten Speicherplatz aufzufüllen.

 Device Boot Start End Blocks Id System /dev/sda1 1 10 80293+ de Dell Utility /dev/sda2 * 11 106 768000 7 HPFS/NTFS Partition 2 does not end on cylinder boundary. /dev/sda3 106 30787 246439936 7 HPFS/NTFS /dev/sda4 30787 60801 241095200+ fd Linux raid autodetect 

So würde Ich mag von / dev / sda4 einen RAID - Array erstellen und / dev / sdb4 mitmdadm . Aber ich scheine es nicht zum Laufen zu bringen:

$ sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sd4 mdadm: Cannot open /dev/sda4: Device or resource busy mdadm: Cannot open /dev/sdb4: Device or resource busy mdadm: create aborted 

Nach dem Booten der Maschine führt derselbe Befehl dazu:

$ sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sda4 /dev/sdb4 mdadm: Cannot open /dev/sda4: No such file or directory mdadm: Cannot open /dev/sdb4: No such file or directory 

Nun scheint es, dass die Geräte beim Booten nicht automatisch erkannt werden ... Beide verwenden fdisk sdaund sehen sdbdennoch korrekt aus.

Edit : Nach einem weiteren Neustart sind die Geräte wieder da:

$ ls /dev/sd* /dev/sda /dev/sda2 /dev/sda4 /dev/sdb1 /dev/sdb3 /dev/sdc /dev/sdc2 /dev/sda1 /dev/sda3 /dev/sdb /dev/sdb2 /dev/sdb4 /dev/sdc1 /dev/sdc5 

Bei der Erstellung des RAID-Arrays ist jedoch "Gerät oder Ressource beschäftigt". Recht seltsam. Jede Hilfe wäre dankbar!

Update : Könnte der Device Mapper etwas damit zu tun haben? Wie /dev/mapperund dmraidauf all diese beziehen sich mdadmohnehin Sachen? Beide bieten Software-RAID, aber ... anders? Entschuldigung für meine Unwissenheit hier.

Darunter /dev/mapper/befinden sich einige Gerätedateien, die meiner Meinung nach irgendwie mit den 3 Windows-RAID-Partitionen übereinstimmen (sd 1 bis sd 3). Ich weiß nicht, warum es vier dieser Arrays gibt.

$ ls /dev/mapper/ control isw_dgjjcdcegc_ARRAY1 isw_dgjjcdcegc_ARRAY3 isw_dgjjcdcegc_ARRAY isw_dgjjcdcegc_ARRAY2  

Lösung : Es war der mdadm-Wikipedia-Artikel, der mich in die richtige Richtung schob. In dieser Antwort habe ich Details darüber veröffentlicht, wie ich alles zum Laufen gebracht habe .

6
Wenn Ihr Windows sich auf einem Hardware-RAID befand, können Sie `/ dev / sda` und` / dev / sdb` nicht als separate Laufwerke "sehen". Peter Eisentraut vor 14 Jahren 1
@Peter: Ok, danke. Ich weiß nicht, wie das RAID für Windows funktioniert, aber in diesem Fall sollte es auf Linux-Seite jedenfalls kein Problem sein. Jonik vor 14 Jahren 0
Ich glaube, ich habe etwas gefunden: http://en.wikipedia.org/wiki/Mdadm#Known_problems "Ein häufiger Fehler beim Erstellen von RAID-Geräten ist, dass der dmraid-Treiber die Kontrolle über alle Geräte übernommen hat, die im neuen Gerät verwendet werden sollen RAID-Gerät. Fehlermeldungen wie diese werden auftreten: mdadm: / dev / sdb1 kann nicht geöffnet werden: Gerät oder Ressource beschäftigt ". Ich werde versuchen, was der Wiki-Artikel vorschlägt. Jonik vor 14 Jahren 0

3 Antworten auf die Frage

5
Jonik

Endlich etwas Fortschritt!

dmraidIn der Tat war der Täter, wie der Wikipedia-Eintrag von mdadm nahelegte. Ich habe versucht, dmraid- Pakete zu entfernen (und ausgeführt, update-initramfsobwohl ich nicht sicher bin, ob dies relevant ist).

Danach und nach dem Neustart sind die Geräte /dev/mapperuntergegangen (was in Ordnung ist - ich muss nicht auf die Windows NTFS-Partitionen unter Linux zugreifen):

$ ls /dev/mapper/ control 

Und vor allem mdadm --createfunktioniert!

$ sudo mdadm -Cv -l1 -n2 /dev/md0 /dev/sda4 /dev/sdb4 mdadm: size set to 241095104K mdadm: array /dev/md0 started. 

Ich habe überprüft /proc/mdstatund mdadm --detail /dev/md0beide zeigen, dass mit dem neu erstellten Array alles in Ordnung ist.

$ cat /proc/mdstat [..]  md0 : active raid1 sdb4[1] sda4[0] 241095104 blocks [2/2] [UU] [==========>..........] resync = 53.1% (128205632/241095104)  finish=251.2min speed=7488K/sec  

Dann habe ich ein Dateisystem auf der neuen Partition erstellt:

$ sudo mkfs.ext4 /dev/md0 

Und zum Schluss gerade das Ding unter /opt(& aktualisiert /etc/fstab) montiert . (Ich hätte LVM natürlich auch hier benutzen können, aber ehrlich gesagt, in diesem Fall habe ich keinen Sinn darin gesehen, und ich habe schon genug Zeit damit verschwendet, dieses System zum Laufen zu bringen ...)

Nun ist die RAID-Partition einsatzbereit und ich habe viel Speicherplatz. :-)

$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sdc5 70G 52G 15G 79% / /dev/md0 227G 188M 215G 1% /opt 

Update : Es gibt immer noch Probleme mit meinem RAID-Gerät. Nach dem Neustart schlägt das Einhängen fehl, obwohl ich es in fstab habe, und manchmal (nach dem Neustart) scheint es in einem inaktiven Zustand zu sein und kann auch nicht manuell eingehängt werden. Siehe die Folgefrage, die ich gepostet habe.

Es tut mir leid für Fragen, die für Super User zu schwierig erscheinen ... ;-) Ich hoffe jedoch, dass dies in der Zukunft jemandem (mit etwas Hilfe von Google) weiterhilft. Jonik vor 14 Jahren 0
Es ist absolut angebracht, Ihre eigene Frage hier zu beantworten. Sie können auch Ihre eigene Antwort annehmen. gute Arbeit, um es herauszufinden; Die Frage war gut und diese Antwort ist eine nette Einschätzung der Situation. quack quixote vor 14 Jahren 0
Ja, ich weiß (und werde es akzeptieren, wenn die Frist es zulässt). Ich hatte einfach Lust, diesen Kommentar hinzuzufügen, weil ich ein wenig enttäuscht / amüsiert war, SU im Wesentlichen nur als "Gummiente" verwendet zu haben. :-) Aber egal - ich bin froh, dass ich irgendwann alles zum Laufen gebracht habe. Jonik vor 14 Jahren 0
2
JoTraGo
sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sd4 mdadm: Cannot open /dev/sda4: Device or resource busy mdadm: create aborted 

This trick worked for me: Check /proc/mdstat: note the device name stated there eg. md_d0, then:

sudo mdadm --stop /dev/md_d0 

Now the create command should work.

1
silk

Vielleicht eine dumme Antwort, aber - sind Sie sicher, dass sd 4 nirgendwo von Ubuntu hängt?

Und welches Motherboard haben Sie, wie Sie sagen, über Hardware-Raid? Es kann wirklich ein Software-Raid sein, der hier vielleicht stört.

Nein, sd 4 wurde nicht gemountet. In gewisser Weise störten sich verschiedene RAID-Systeme in der Tat ... siehe vollständige Erklärung: http://superuser.com/questions/101630/creating-a-raid1-partition-with-mdadm-on-ubuntu/102111#102111 Jonik vor 14 Jahren 0