So, da war es mal wieder: das Update des Grauens, das man „mal schnell“ anstoßen wollte und das einem dann den Sonntagnachmittag versaut. Bei mir war’s das Update auf Lenny 6.0.3. Als mich apt-get nach den Platten gefragt hat, auf denen ich Grub installieren möchte, wurde ich schon stutzig. sda, sdb, md1 und md2 standen zur Auswahl – und es kam, wie es kommen musste: egal, welche ich ausgewählt habe, kam nur dieses Gemopper:
/usr/sbin/grub-setup: warn: This msdos-style partition label has no post-MBR gap; embedding won't be possible!. /usr/sbin/grub-setup: error: embedding is not possible, but this is required when the root device is on a RAID array or LVM volume.
Na toll. Leider spuckt Tante Google hierzu nicht sonderlich viel zielführendes aus, also hier mein kleines How-To.
Warnhinweis: bitte nur nachmachen, wenn man weiß, was man tut. Alle Kommandos, die hier stehen, eignen sich prima zum kaputtkonfigurieren des GANZEN Systems.
Das Szenario, das ich hatte, war dies: RAID-1 für /boot und / (und für Swap. Ich weiß, das ist Kappes. Also ändern wir das gleich, während wir dran sind). Hier meine Konfig:
cat /proc/mdstat Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] md2 : active raid1 sda3[0] sdb3[1] 726266432 blocks [2/2] [UU] md1 : active raid1 sda2[0] sdb2[1] 2104448 blocks [2/2] [UU] md0 : active raid1 sda1[0] sdb1[1] 4200896 blocks [2/2] [UU]
Die Einzelplatten sind gleich konfiguriert, und zwar so:
I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0004be32 Device Boot Start End Blocks Id System /dev/sda1 1 8401994 4200997 fd Linux raid autodetect /dev/sda2 8401995 12611024 2104515 fd Linux raid autodetect /dev/sda3 12611025 1465144064 726266520 fd Linux raid autodetect
…und die „1“ beim ersten Partitions-Start ist auch gleich das Problemkind. Allerdings hatte ich richtig Massel: die sda1 und sdb1 ergeben md0, und die ist bei mir als Swap eingetragen. Also müssen wir die umbauen und so einrichten, dass sie „höher“ als am Block 1 anfängt. Let’s go:
swapoff -a
mdadm --stop /dev/md0
fdisk /dev/sda
…und die Partition 1 umbasteln: löschen (d, 1), neu anlegen (n, p, 1, 63, [Maximalgröße hier eingeben]), Typ ändern (t, 1, fd), schreiben: w. Wer mag, tut das gleiche auf sdb (aus Gründen der Ästhetik, damit die Partitionen gleich groß sind zum Beispiel). Dann bauen wir das RAID wieder zusammen, dieses Mal als Raid-0 für den Swap (warum auch nicht?):
mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sda1 /dev/sdb1
Und: Energie, Scotty:
mkswap /dev/md0
nebst einem
swapon -a
So, dann bitte nicht vergessen, Grub wieder draufzubügeln – dieses Mal hoffentlich ohne Fehlermeldung. Sonst wird der nächste Reboot etwas hässlich… ;-)
Danke an die Jungs aus dem Hetzner-Forum – die hatten die Lösung (allerdings halt nicht zu Googeln…)
was für ein zufall… drei tage nach diesem posting lauf ich in genau das gleiche problem und kann es genau so lösen. eigenartig nur, dass ich diesen stress nur bei einem von 14 mehr oder weniger gleich konfigurierten hosts hatte. nicht dass mich das so interessieren würde, dass ich ich dem jetzt nachgehe… ich bin froh, dass ich das schlamassel in weniger als einer viertelstunde beseitigen konnte.
vielen dank!
achja, bei mir war noch ein „partprobe /dev/sda /dev/sdb“ nach dem partitionieren nötig, damit der kernel den neuen partitiontable mitkriegt.
Prima, danke für die Ergänzung! Und freut mich, wenn ich jemand anders das Rumgesuche ersparen konnte… ;)
Danke auch von mir.
EIn Hinweis noch: Es ist ev. nötig die /etc/mdadm/mdadm.conf noch anzupassen damit das neu gemachte Raid auch beim booten zusammengebaut wrid.
Also mdadm –detail –scan >> /etc/mdadm/mdadm.conf, dann editieren und die alten ARRAY …. Zeilen entfernen.
Danke für die Anleitung; hatte nach dem dist-upgrade auf squeeze genau das Problem.
Da sage ich auch einfach mal:
DANKE!
Diese Anleitung samt Kommentaren (insbesondere bzgl. mdadm.conf) haben mir gerade den Feierabend gerettet.
Update durch und jetzt ein Bierchen drauf. ;-)
Prost! :)
Vielen Dank! Nach 2 Stunden rumsuchen hat mir dieser Eintrag einen kompletten reinstall erspart und einiges an Nerven. Der Abend ist gerettet :)
Na, so soll es doch sein. Reicht ja, wenn sich einer von uns die Mühe gemacht hat… ;)
Danke,
das war gerade sehr hilfreich. ;-)
Viele Grüße aus Hamburg,
Jens
Wunderbar! :)
Hervorzüglich!
this is gold
ffs distupgrade didnt even bother to check such basics
argh