ubuntuusers.de

Grub bootet nicht vom RAID1

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

jones79

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Hallo!

Ich kriegs irgendwie nicht hin von meinem RAID zu booten... Meine Konfiguration:

/dev/sda1: dahin zeigt die RAID-Platte /dev/md0
/dev/sdb1: ursprüngliches System, dieses hab ich dann kopiert nach /dev/md0
/dev/sda2: Bootpartition /boot

Jetzt würde ich gerne von Grub direkt aus /dev/md0, also aus dem RAID booten und dann die Festplatte mit den ursprünglichen System als zweite Platte in das RAID1 aufnehmen. (wie hier beschrieben: http://www.pc-erfahrung.de/linux/linux-software-raid-how-to-mit-mdadm-raidutils.html.

Allerdings komm ich nicht so recht mit den Grub-Parametern zu recht oder hab irgendeinen Fehler gemacht. Ich verstehe nicht genau wohin in diesem Fall der root-Parameter in der menu.lst zeigen muss...

Hier mal die menu.lst:

title		BOOTPARTITON - RAID Ubuntu 8.10, kernel 2.6.27-14-generic
root		(hd1,0)
kernel		(hd0,1)/boot/vmlinuz-2.6.27-14-generic root=/dev/md0 ro quiet splash locale=de_DE 
initrd		(hd0,1)/boot/initrd.img-2.6.27-14-generic
quiet

Und die fstab aus der RAID-Partition /dev/md0/etc/

/dev/sda2	/boot 		ext3 defaults,errors=remount-ro,relatime 0 1
/dev/md0 	/ 		ext3 defaults,errors=remount-ro,relatime 0 1

Ich hoffe, dass ihr mir auf die Sprünge helfen könnt. Viele Grüße, Markus

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Grüße.

Hast du das gleiche Problem wie hier? http://forum.ubuntuusers.de/topic/raid-nachtraeglich-installieren/

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Hi!

Vielen Dank für die schnelle Antwort!

Ja, ich glaube mein Problem ist ähnlich, den Artikel auf howtoforge hatte ich schon gefunden bevor ich hier gepostet hab, aber hat mir auch nich weitergeholten.

Weiter unten in den Beitrag dessen Link du genannt hat schreibt einer

Im Wiki steht das man von Raid1 booten kann. Leider erscheint beim boot Vorgang das 
die root partition (md0) nicht gefunden werden kann. Versucht habe ich es als 
md0, md_d0 und mit der UUID in der fstab und der menu.lst.

Und bei mir ist es genau so. Du hast in deiner Vorgehensweise geschrieben, dass man über chroot in das kopierte System gehen soll. Ich hab noch nie ganz verstanden, warum eine Grub-Installation unter chroot anders wirkt als eine direkt z.b. von einer Live-CD. Ich übergebe doch die ganzen Orte der Systeme in der menu.lst. Kannst du mir da vielleicht ein paar Worte dazu schreiben.

Sollte ich dann über chroot in das virtuelle Verzeichnis /dev/md0 oder in /dev/sda1 wechseln...die sind ja quasi identisch.

Vielen Dank, Markus

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Die Grub-Install von ner LiveCD läuft doch auch über chroot.

Poste doch mal folgenden Dateien: /etc/fstab /etc/mtab /boot/grub/menu.lst und /etc/mdadm/mdadm.conf sowie

sudo blkid
sudo fdisk -l
mount

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Ok, also ich befinde mich jetzt per chroot in der Partition von der ich booten will.

Vorgehensweise GRUB-Artikel im Wiki -Methode 3: Chroot über ein Live-System

/etc/fstab
UUID=3f3cb26a-ff37-4b8b-954c-6c43d4230e00 /boot ext3 defaults,errors=remount-ro,relatime 0 1
UUID=5713736a-133e-4cb6-8357-2dda8907a322 / ext3 defaults,errors=remount-ro,relatime 0 1
/etc/mtab
/dev/sdb1 / ext3 rw,relatime,errors=remount-ro 0 0
tmpfs /lib/init/rw tmpfs rw,nosuid,mode=0755 0 0
/proc /proc proc rw,noexec,nosuid,nodev 0 0
sysfs /sys sysfs rw,noexec,nosuid,nodev 0 0
varrun /var/run tmpfs rw,nosuid,mode=0755 0 0
varlock /var/lock tmpfs rw,noexec,nosuid,nodev,mode=1777 0 0
udev /dev tmpfs rw,mode=0755 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=620 0 0
fusectl /sys/fs/fuse/connections fusectl rw 0 0
lrm /lib/modules/2.6.27-14-generic/volatile tmpfs rw,mode=755 0 0
none /proc/bus/usb usbfs rw,devgid=1001,devmode=664 0 0
securityfs /sys/kernel/security securityfs rw 0 0
nfsd /proc/fs/nfsd nfsd rw 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,noexec,nosuid,nodev 0 0
gvfs-fuse-daemon /home/administrator/.gvfs fuse.gvfs-fuse-daemon rw,nosuid,nodev,user=administrator 0 0
/dev/sda2 /media/boot ext3 rw 0 0
/dev/md0 /mnt/ziel ext3 rw 0 0
/dev/sdc1 /media/Kleine fuseblk rw,nosuid,nodev,allow_other,blksize=4096 0 0
/dev/sdf1 /media/CANON_DC vfat rw,nosuid,nodev,uhelper=hal,shortname=mixed,uid=1000,utf8,umask=077,flush 0 0
/dev/sdb1 /mnt/quelle ext3 rw 0 0
/boot/grub/menu.lst (der nicht funktionierende Eintrag)
title		BOOTPARTITON - RAID Ubuntu 8.10, kernel 2.6.27-14-generic
uuid		3f3cb26a-ff37-4b8b-954c-6c43d4230e00
##root		(hd0,1)
kernel		/boot/vmlinuz-2.6.27-14-generic root=UUID=5713736a-133e-4cb6-8357-2dda8907a322 ro quiet splash locale=de_DE 
initrd		/boot/initrd.img-2.6.27-14-generic
quiet
/etc/mdadm/mdadm.conf (nur die wichtige Zeile)
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=b1252633:a166f6e5:21c8caa4:d967ef64

Im folgenden Abschnitt stimmt die UUID von md0 nicht mit der aus der mdadm.comf überein...ist das vielleicht das Problem? Und die UUIDs von sda1 und md0 stimmen überein.

sudo blkid:
/dev/sda1: UUID="5713736a-133e-4cb6-8357-2dda8907a322" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sdb1: UUID="9b521d3e-0c0a-467d-a01e-3a40ba0fd04b" SEC_TYPE="ext2" TYPE="ext3" 
/dev/sdb2: TYPE="swap" UUID="36f2a5c9-15ae-4a4e-8668-055ac20431c6" 
/dev/md0: UUID="5713736a-133e-4cb6-8357-2dda8907a322" TYPE="ext3" SEC_TYPE="ext2" 
/dev/sda2: LABEL="BOOT" UUID="3f3cb26a-ff37-4b8b-954c-6c43d4230e00" TYPE="ext3"
sudo fdisk -l
Platte /dev/sda: 500.1 GByte, 500107862016 Byte
255 Köpfe, 63 Sektoren/Spuren, 60801 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Disk identifier: 0x000e3b54

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1               1       57883   464945166   fd  Linux raid autodetect
/dev/sda2   *       57884       57915      257040   83  Linux

Platte /dev/sdb: 500.1 GByte, 500107862016 Byte
255 Köpfe, 63 Sektoren/Spuren, 60801 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Disk identifier: 0x000e3b54

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sdb1   *           1       57883   464945166   fd  Linux raid autodetect
/dev/sdb2           57884       58132     2000092+  82  Linux Swap / Solaris
mount
/dev/sdb1 on / type ext3 (rw,relatime,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
/proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
varrun on /var/run type tmpfs (rw,nosuid,mode=0755)
varlock on /var/lock type tmpfs (rw,noexec,nosuid,nodev,mode=1777)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
lrm on /lib/modules/2.6.27-14-generic/volatile type tmpfs (rw,mode=755)
none on /proc/bus/usb type usbfs (rw,devgid=1001,devmode=664)
securityfs on /sys/kernel/security type securityfs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/administrator/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=administrator)
/dev/sda2 on /media/boot type ext3 (rw)
/dev/md0 on /mnt/ziel type ext3 (rw)
/dev/sdc1 on /media/Kleine type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096)
/dev/sdf1 on /media/CANON_DC type vfat (rw,nosuid,nodev,uhelper=hal,shortname=mixed,uid=1000,utf8,umask=077,flush)
/dev/sdb1 on /mnt/quelle type ext3 (rw)

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

jones79 schrieb:

Im folgenden Abschnitt stimmt die UUID von md0 nicht mit der aus der mdadm.comf überein...ist das vielleicht das Problem? Und die UUIDs von sda1 und md0 stimmen überein.

Hm, hast du die gesamte Partition auf die andere Platte kopiert (mit dd oder so)? Versuche mal die UUID von md0 zu ändern und passe dann auch die mdadm.conf an.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Kopiert hab ichs nicht mit dd, aber ich hab den MBR mit der Partitionstabelle übertragen, damit die Hauptpartition identisch ist. Deswegen vielleicht die übereinstimmenden UUIDs. Ich hab jetzt eine neue UUID für /dev/md0 erstellt und mdadm.conf angepasst. Aber die UUID hat sich für beide Geräte wieder auf einen identischen Wert eingestellt - also für /dev/sda1 und /dev/md0. Vielleicht ist das eben weil die Laufwerke quasi identisch sind. Und ich die neue UUID auch in die /etc/fstab auf md0 eingetragen für "/".

Aber beim Booten erhalte ich immer eine Fehlermeldung dass er die UUID von /dev/md0 nicht findet. Ungefähr so: /disk-by-UUID/"UUID von /dev/md0" nicht gefunden

Also findet er den Kernel, aber der findet wohl die in der fstab per UUID angegebene /dev/md0 nicht. Oder es liegt am Übergabeparameter von Grub an den Kernel "root=UUIDvon/dev/md0". Jedenfalls wird die UUId nicht gefunden.

Bin absolut ratlos. Hast du noch eine Idee?

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Achso, natürlich müssen die die gleiche UUID haben 😳

Versuche mal root direkt so zu übergeben:

root=/dev/md0

Sonst kanns eigentlich nur sein, dass der mdadm nicht im initramfs liegt.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Hm also das mit der direkten Übergabe als /dev/md0 klappt auch nicht, gleiche Fehlermeldung.

Aber das mit initramfs, was du erwähnt hast, das ist glaub eine gute Spur. Du bist gut ☺ Grad seh ich nämlich, dass die Fehlermeldung, zu der ich nach einer Weile weitergeleitet werde mich zu einem Prompt mit blinkendem Cursor bringt:

ALERT! /dev/md0 does not exist. Dropping to a shell!
(initramfs) _

Ok, also das hab ich wirklich noch nie gesehen...was soll ich da machen?

Hab grad mal geschaut, also /dev/md0 existiert nicht in dieser Konsole...

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Du musst nochmal mit nem LiveSystem in ne chroot-Umgebung und den Schritt aus deiner Anleitung wiederholen, wo mdadm installiert wird und wo das initramfs upgedatet wird.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Hi!

Also, in der Anleitung mit der ich das RAID aufgebaut hab, hab ich nix gefunden über initramfs, aber ich hab bischen hier im Forum gestöbert und mit dem Befehl

update-initramfs -u -k all

hab ich jetzt wohl mdadm integriert und dann diese initrd-Datei in meine boot-Partition kopiert, da ich nicht als chroot drin war. Also scheint zu gehen, der Rechner bootet und mount zeigt dass /dev/md0 als / eingehängt ist, das sieht doch schon mal gut aus.

Ich trau dem Frieden zwar noch nicht ganz, aber ich denke es geht. Ich melde mich später nochmal.

jones79

(Themenstarter)

Anmeldungsdatum:
23. Juni 2009

Beiträge: 79

Ok, alles funktioniert traumhaft ☺

Vielen Dank für Eure Hilfe! 👍

hannemann

Anmeldungsdatum:
25. Mai 2007

Beiträge: 1310

Danke Danke Danke Danke Danke Danke Danke Danke Danke Danke Danke usw...

Das MUSS ins WIKI unter Software Raid. Ich hab noch nie einen Artikel geschrieben oder bearbeitet. Vielleicht könnte das jemand übernehmen.

👍

stfischr Team-Icon

Avatar von stfischr

Anmeldungsdatum:
1. März 2007

Beiträge: 19197

Ach du bist doch nur zu Faul. 😉 done

hannemann

Anmeldungsdatum:
25. Mai 2007

Beiträge: 1310

Ich gebe zu, das ich mich schon in der Schule mit Aufsätzen nicht wirklich hervortun konnte. Vielleicht schiebe ich deswegen meine Unerfahrenheit vor, da ich mich nicht dazu in der Lage sehe, einen WIKI Artikel für andere verständlich zu verfassen bzw. zu verbessern.

Außerdem muss ich den ganzen Tag HTML, CSS, JavaScript, MySQL, Bash und PHP in die Mühle hacken und hab in meiner Freizeit echt keinen Bock mehr mir noch ne Syntax reinzutun.

Zu Faul... Pah... Am WE ist noch Zeit. 😉

Muss der Artikel nicht vorher in eine Baustelle verschoben werden usw.?

Siehste, da geht es schon los. Für zwei Sätze ins Wiki eintragen schon die erste Unsicherheit... Ich machs aber trotzdem 😛

Antworten |