Hallo!
Ich habe mehrere Partitionen mit mehreren installierten Linux-Distributionen. Von Ubuntu 10.04 auf /dev/sda2 aus versuche ich, mit update-grub das Boot-Menü zu aktualisieren, so dass ich alle Installationen von allen Partitionen starten kann, u. a. "ubuntu10.04_alt" von /dev/sda7.
Leider erzeugt update-grub für /dev/sda7 anscheinend einen falschen Eintrag in der grub.cfg: Die UUID in der "search....."-Zeile stimmt noch, aber der "root=UUID=....."-Parameter stimmt nicht, er steht auf der UUID der /dev/sda2-Partition. Wenn ich beim Booten /dev/sda7 auswähle, bootet er tatsächlich immer von /dev/sda2.
Meine Frage: Woher weiß update-grub, was er in der Zeile "linux /boot/vmlinuz..... root=UUID=....." als UUID eintragen muss? Wo nimmt er die (offensichtlich falsche) UUID her? Wie kann es überhaupt sein, dass UUID in der "search....."-Zeile und der in der "linux....."-Zeile abweichen?
Hier meine Festplattenstruktur:
bernd@bernd-desktop:~$ sudo blkid /dev/sda1: TYPE="swap" /dev/sda2: LABEL="ubuntu10.04" UUID="28ef2c60-39f6-41b3-9e83-5596b8006efd" TYPE="ext4" /dev/sda3: LABEL="openSUSE11.2" UUID="1e0044a5-7498-4369-be82-3dd746daccc6" TYPE="ext4" /dev/sda5: LABEL="ubuntu9.10_neu" UUID="227d1d0a-47ce-46a5-ba47-257f4db53d82" TYPE="ext4" /dev/sda6: LABEL="ubuntu9.10_alt" UUID="96d7f857-d4bb-4699-a48a-2155bfe27c6b" SEC_TYPE="ext2" TYPE="ext3" /dev/sda7: LABEL="ubuntu10.04_alt" UUID="dd708dce-4a70-4e1a-b192-1dd2912a2312" TYPE="ext4" /dev/sdb1: LABEL="2TB-Festplatte" UUID="75f8a205-6cde-4155-acbd-9a0131c01cca" TYPE="ext4" /dev/sdb3: LABEL="ubuntu 9.10" UUID="6591be16-498e-470a-9786-6339b1d6adfd" SEC_TYPE="ext2" TYPE="ext3"
Hier die relevanten Ausschnitte aus grub.cfg:
[...] ### BEGIN /etc/grub.d/10_linux ### menuentry 'Ubuntu, mit Linux 2.6.32-22-generic' --class ubuntu --class gnu-linux --class gnu --class os { recordfail insmod ext2 set root='(hd0,2)' search --no-floppy --fs-uuid --set 28ef2c60-39f6-41b3-9e83-5596b8006efd linux /boot/vmlinuz-2.6.32-22-generic root=UUID=28ef2c60-39f6-41b3-9e83-5596b8006efd ro initrd /boot/initrd.img-2.6.32-22-generic } [...] ### BEGIN /etc/grub.d/30_os-prober ### [...] menuentry "Ubuntu, mit Linux 2.6.32-22-generic (on /dev/sda7)" { insmod ext2 set root='(hd0,7)' search --no-floppy --fs-uuid --set dd708dce-4a70-4e1a-b192-1dd2912a2312 linux /boot/vmlinuz-2.6.32-22-generic root=UUID=28ef2c60-39f6-41b3-9e83-5596b8006efd ro initrd /boot/initrd.img-2.6.32-22-generic } [...]
Die /etc/fstab auf /dev/sda2:
# /etc/fstab: static file system information. # # Use 'blkid -o value -s UUID' to print the universally unique identifier # for a device; this may be used with UUID= as a more robust way to name # devices that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc nodev,noexec,nosuid 0 0 # / was on /dev/sda7 during installation UUID=28ef2c60-39f6-41b3-9e83-5596b8006efd / ext4 errors=remount-ro 0 1 /dev/sda1 none swap sw 0 0 /dev/sdb1 /bigdata ext4 rw 0 2
Die /etc/fstab auf /dev/sda7:
# /etc/fstab: static file system information. # # Use 'blkid -o value -s UUID' to print the universally unique identifier # for a device; this may be used with UUID= as a more robust way to name # devices that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc nodev,noexec,nosuid 0 0 # / was on /dev/sda7 during installation UUID=dd708dce-4a70-4e1a-b192-1dd2912a2312 / ext4 errors=remount-ro 0 1 /dev/sda1 none swap sw 0 0 /dev/sdb1 /bigdata ext4 rw 0 2
Danke & Grüße im Voraus!
Bernd