I've just installed Ubuntu 9.10 along side F11. My disk now looks
like this:
/dev/sda1 F11 boot
/dev/sda2 F11 root
/dev/sda3 F11 swap
/dev/sda5 F11 home
/dev/sda6 9.10 root
/dev/sda7 9.10 home
/dev/sda8 91.0 swap
When I reboot, I get grub, which has entries listed for both systems, but
when I try to boot Fedora now, I get an error message: "error: You need to
load the kernel first". (Ubuntu boots fine).
I've tried booting manually from the grub command line, but the commands no
longer appear to be the same, as Ubuntu is now using grub 2. Here are the
relevant section from grub.cfg (menu.lst is now obsolete):
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Fedora (2.6.30.9-90.fc11.i586) (on /dev/sda2)" {
insmod ext2
set root=(hd0,2)
search --no-floppy --fs-uuid --set 5a8b0f33-5369-4a45-a501-455ed10f4fa7
linux /boot/vmlinuz-2.6.30.9-90.fc11.i586 ro
root=UUID=5a8b0f33-5369-4a45-a501-455ed10f4fa7 rhgb resume=/dev/sda3
initrd /boot/initrd-2.6.30.9-90.fc11.i586.img
}
menuentry "Fedora (2.6.29.4-167.fc11.i586) (on /dev/sda2)" {
insmod ext2
set root=(hd0,2)
search --no-floppy --fs-uuid --set 5a8b0f33-5369-4a45-a501-455ed10f4fa7
linux /boot/vmlinuz-2.6.29.4-167.fc11.i586 ro
root=UUID=5a8b0f33-5369-4a45-a501-455ed10f4fa7 resume=/dev/sda3 rhgb
initrd /boot/initrd-2.6.29.4-167.fc11.i586.img
}
### END /etc/grub.d/30_os-prober ###
The above entries were generated automatically.
Does anyone know how to fix the error?
Alternately, is there a way of telling the MBR to boot /dev/sda1 (F11 boot)
instead of /dev/sda6 (Ubuntu root), which is what is happening now?
menuentry "Fedora (2.6.30.9-90.fc11.i586) (on /dev/sda2)" {
insmod ext2
set root=(hd0,2)
search --no-floppy --fs-uuid --set 5a8b0f33-5369-4a45-a501-455ed10f4fa7
linux /boot/vmlinuz-2.6.30.9-90.fc11.i586 ro
root=UUID=5a8b0f33-5369-4a45-a501-455ed10f4fa7 rhgb resume=/dev/sda3
initrd /boot/initrd-2.6.30.9-90.fc11.i586.img
}
Change
set root=(hd0,2)
to
set root=(hd0,1)
Change
search --no-floppy --fs-uuid --set 5a8b0f33-5369-4a45-a501-455ed10f4fa7
to
search --no-floppy --fs-uuid --set UUID_of_sda1
Change
linux /boot/vmlinuz-2.6.30.9-90.fc11.i586 ro
to
linux /vmlinuz-2.6.30.9-90.fc11.i586 ro
Change
root=UUID=5a8b0f33-5369-4a45-a501-455ed10f4fa7 rhgb resume=/dev/sda3
to
root=UUID=UUID_of_sda2 rhgb resume=/dev/sda3
Change
initrd /boot/initrd-2.6.30.9-90.fc11.i586.img
to
initrd /initrd-2.6.30.9-90.fc11.i586.img
(What does "resume=/dev/sda3" do?)
You can either change these lines in /boot/grub/grub.cfg (but keep a
backup because it will be overwritten the next time that grub-mkconfig
is run) or chmod -x /etc/grub.d/30_os-probe and add your Fedora
entries into /etc/grub.d/40_custom.
# cat /etc/grub.d/40_custom
cat << EOF
menuentry "F11 on sda1/sda2 {
...
}
EOF