[TECHSUCKS] MDADM TROUBLE
2006 July 13Nachdem ich kuerzlich Ceres neu installiert hatte, bekam ich heute auch schon die ersten Probleme mit der Installation.
Anscheinend hat sich eine Festplatte eine Auszeit gegoennt (warum, weiss ich noch nicht. Hitze? Spannungsabfall?) und ich erstmal Panik.
Gut, alles auf RAID 1 / 5, sollte noch alles da sein, denkt man. Aber erstens kommt es bekanntlich anders, und zweitens wenn man denkt.
raid5: cannot start dirty degraded error
bekam ich da von meinem Kernel zu lesen. Ehm... HAEH? Wie jetzt?
/proc/mdstat bestaetigte mir, dass das RAID laeuft, aber 'inactive' sei. Auch 'mdadm -R /dev/md/4' zickte rum und wollte das RAID partout nicht starten. Ich hab dann versucht, mdadm zu zwingen, das RAID komplett zu erstellen:
mdadm --assemble --force /dev/md4 /dev/hda7 /dev/hdc7 /dev/hdb7
Aber auch das fuehrte zu keinem Ergebnis.
Dann versuchte ich, das RAID neu zu erstellen. Ja, mit --create, also das alte Zeug loeschen. Dies funktionierte teilweise. Das RAID war zwar wieder (immer noch?) da, aber ebenfalls 'inactive'.
Auch 'mdadm -R /dev/md/4' startete das RAID nicht.
mdadm --manage /dev/md/4 -a /dev/hdb7
kehrte kommentarlos zur Shell zurueck. Keine Ausgabe, kein Eintrag in dmesg, kein Eintrag in /var/log/messages, einfach nichts.
Und genau da liegt das Problem, mit dem ich eine Stunde gekaempft habe. 'mdadm --help' sagt:
# mdadm --help
...
mdadm --manage device options...
make changes to an existing array.
mdadm device options...
Shorthand for --manage.
...
# /sbin/mdadm --manage --help
...
Options that are valid with management mode are:
--add -a : hotadd subsequent devices to the array
...
...
mdadm --manage device options...
make changes to an existing array.
mdadm device options...
Shorthand for --manage.
...
# /sbin/mdadm --manage --help
...
Options that are valid with management mode are:
--add -a : hotadd subsequent devices to the array
...
Also sollte doch eigentlich irgendwas passieren. Noe. Ich habe herausgefunden, dass entweder mdadm oder aber der --help Text fehlerhaft ist.
Denn dies hier fuehrte schliesslich zum Erfolg:
# mdadm -A /dev/md/4 # Array starten, wird als 'inactive' markiert sein und unbrauchbar sein
# mdadm --manage /dev/md/4 -a /dev/hdb7 # macht nichts
# mdadm /dev/md/4 -a /dev/hdb7 # Fuegt md/4 tatsaechlich /dev/hdb7 hinzu!
# mdadm -R /dev/md/4 # Startet md/4 und setzt den resync Prozess in Gang
# mdadm --manage /dev/md/4 -a /dev/hdb7 # macht nichts
# mdadm /dev/md/4 -a /dev/hdb7 # Fuegt md/4 tatsaechlich /dev/hdb7 hinzu!
# mdadm -R /dev/md/4 # Startet md/4 und setzt den resync Prozess in Gang
Ab hier war es nur noch eine Sache von 'fsck.reiserfs /dev/md/4 --fix-fixable' und ich konnte mein Dateisystem wieder verwenden. Puh!
Gleich mal bei den mdadm Jungs beschweren, wenn die nicht die Doku vermurkst haetten, waer ich wesentlich frueher fertig geworden. So nach ungefaehr 5 Minuten...
EOF
Category: blog
Tags: TechSucks