Grub2 - Bootet ein System nur über Commandline nicht über Menüeintrag
Stefan U. Hegner
stefan at hegner-online.de
Sat Dec 29 14:24:53 CET 2012
Moinsen,
habe gerade einen nachweihnachtlichen Grub-Koller ;-((.
Mein Rechner hat einen Raid-Controller (gebootet ist der auf /dev/sda)
und eine alte PATA Platte (gebootet ist die auf /dev/sdb). Mein /boot
liegt auf /dev/sda1; auf /dev/sda2 habe ich ein Ubuntu-Rettungssystem.
Grub2 scheint die zu vertauschen, was ja prinzipiell kein Problem sein
sollte. Mein "normales" Debian wird von Grub2 wie folgt erkannt und in
einen funktionierenden Menüeintrag verwurschtet:
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 3a9ce315-deb5-448a-9502-697c9f2a5922
echo 'Loading Linux 2.6.32-5-amd64 ...'
linux /vmlinuz-2.6.32-5-amd64 root=/dev/mapper/crypt-areca1-root ro quiet splash
echo 'Loading initial ramdisk ...'
initrd /initrd.img-2.6.32-5-amd64
}
Ich möchte über Grub auch mein Rettungssystem booten. In meiner
/boot/grub/grub.cfg habe ich über /etc/grub.d/11_ubuntu folgenden
Menüeintrag generiert:
menuentry "HD1-label Ubuntu 12.10-64, kernel 3.5.0-17-generic (Rettungssystem)" {
insmod part_msdos
insmod ext2
set root='(hd1,msdos2)'
echo 'Loading Ubuntu Linux 12.10 ...'
linux /boot/vmlinuz-3.5.0-17-generic root=/dev/disk/by-label/ubuntu-root
initrd /boot/intitrd.img-3.5.0-17-generic
}
bzw. alternativ über Verwendung der UUID:
menuentry "HD1-uuid Ubuntu 12.10-64, kernel 3.5.0-17-generic" {
insmod part_msdos
insmod ext2
set root='(hd1,msdos2)'
search --no-floppy --fs-uuid --set ea899bc4-adc2-40fd-9d3a-b758e279bfb5
echo 'Loading Ubuntu Linux 12.10 ...'
linux /boot/vmlinuz-3.5.0-17-generic root=UUID=ea899bc4-adc2-40fd-9d3a-b758e279bfb5
initrd /boot/intitrd.img-3.5.0-17-generic
}
Wenn ich diese Menüeinträge boote, bekomme ich Kernel-Panic, denn das
System findet das root-Volume nicht. Im Dump sehe ich, dass als /dev/sda
meine zweite Platte (/dev/sdb) und das optische Laufwerk (/dev/sr0)
gefunden wird, nicht dagegen mein RAID-Controller:
Cannot open root device "UUID=ea899 ..." (bzw. "/dev/disk/by-label ..."
Available partitions ... sr0 ... sda ... sda1
Aber mir scheint auch, dass die initrd gar nicht erst geladen wird. -
Funktioniert der 3.5 er Kernel an der Stelle komplett anders?
Hatte auch noch alternativ den ubuntu-kernel und die initrd in die
/boot-Partition nach /dev/sda1/ubuntu gepackt und auch das führt dazu,
dass der Kernel geladen und die initrd nicht gefunden wird:
menuentry "HD1-1-label-boot Ubuntu 12.10-64, kernel 3.5.0-17-generic (Rettungssystem)" {
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
echo 'Loading Ubuntu Linux 12.10 ...'
linux /ubuntu/vmlinuz-3.5.0-17-generic root=/dev/disk/by-label/ubuntu-root
echo 'Loading initial Ramdisk ...'
initrd /ubuntu/intitrd.img-3.5.0-17-generic
}
Aber was ich absolut nicht begreife ist folgendes:
Gebe ich dagegen am Grub-Prompt die Zeilen manuell ein, werden die
Platten nicht vertauscht (!!!) ...
> set root='(hd0,msdos2)'
> linux /boot/vmlinuz-3.5.0-17-generic
root=/dev/disk/by-label/ubuntu-root
> initrd /boot/intitrd.img-3.5.0-17-generic
> boot
und die Kiste startet sauber das Ubuntu - alles gut! - Alternativ habe
ich für root= schon /dev/sda2 bzw. UUID=xxxx ... und dem kernel aus
/dev/sda1/ubuntu probiert - das alles funktioniert.
Jaaa, ich kann mir für mein Rettungssystem, was ich hoffentlich nie
brauchen werde einen Zettel mit grub-Kommandos schreiben und den ganzen
Kram vergessen ... aber das fände ich auch blöd, nach all den Stunden,
die ich hieran schon gebastelt habe.
Auch würde ich gerne verstehen, wo das Problem ist (3.5er Kernel, der
Raid, falsche Grub2-Config). Mag' mir wer einen heißen Tipp geben, wie
ich das vielleicht doch noch hinbekomme?
LG und 1000 Dank!
Stefan.
--
Stefan U. Hegner
<stefan at hegner-online.de>
* * *
D-32584 Löhne --- good ole Germany
internet: http://www.hegner-web.de
* * *
GPG-Key | D9DB 51BD 2DA6 9B3A 41CB
F-Print | 0287 05A1 8D11 38BA CE91
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lug-owl.de/pipermail/linux/attachments/20121229/45f81ff0/attachment.sig>
More information about the Linux
mailing list