PDA

View Full Version : [SOLVED] Lucid Grub2 hangs - dual boot with two disks



mirach
April 30th, 2010, 08:33 PM
Just installed 10.04 and it doesn't seem to get through Grub. Grub seems to start but I'm not positive since no messages are echoed.

I installed 10.04 on one of my two hard drives which was set to be the first boot device in BIOS. WinXP is on the second drive.

Here is the contents of grub.cfg:


#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
set saved_entry=${prev_saved_entry}
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
fi
}

function recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9ed945af-bb72-465c-aab9-3f5417262ee6 ro quiet splash
initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
echo 'Loading Linux 2.6.32-21-generic ...'
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9ed945af-bb72-465c-aab9-3f5417262ee6 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Home Edition (on /dev/sda1)" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 5cbcce93bcce66dc
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

My plan was that the MBR would be written to the Linux disk and Grub would allow me to select XP during boot. This worked fine in 9.04 once I made this modification to menu.lst:

# on /dev/sda1
title Microsoft Windows XP Home Edition
rootnoverify (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1

Thanks in advance to anyone who can help...

Gyanos422
April 30th, 2010, 08:54 PM
Just installed 10.04 and it doesn't seem to get through Grub. Grub seems to start but I'm not positive since no messages are echoed.

I installed 10.04 on one of my two hard drives which was set to be the first boot device in BIOS. WinXP is on the second drive.

Here is the contents of grub.cfg:


#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
set saved_entry=${prev_saved_entry}
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
fi
}

function recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9ed945af-bb72-465c-aab9-3f5417262ee6 ro quiet splash
initrd /boot/initrd.img-2.6.32-21-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-21-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
echo 'Loading Linux 2.6.32-21-generic ...'
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=9ed945af-bb72-465c-aab9-3f5417262ee6 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-21-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd1,1)'
search --no-floppy --fs-uuid --set 9ed945af-bb72-465c-aab9-3f5417262ee6
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Microsoft Windows XP Home Edition (on /dev/sda1)" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 5cbcce93bcce66dc
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###My plan was that the MBR would be written to the Linux disk and Grub would allow me to select XP during boot. This worked fine in 9.04 once I made this modification to menu.lst:

# on /dev/sda1
title Microsoft Windows XP Home Edition
rootnoverify (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1

Thanks in advance to anyone who can help...



I used to boot that way too. 9.04 had 'grub' while 9.10 and up use 'grub2' and that coding doesn't work anymore. I wish it WAS that simple, it made life so much easier.

Gyanos422
April 30th, 2010, 09:09 PM
I have someone who's giving me some help. Check out my thread

http://ubuntuforums.org/showthread.php?t=1467001

oldfred
April 30th, 2010, 09:24 PM
Your grub.cfg says windows is hd0,1 which is sda1. And Ubuntu is on hd1,1 or sdb1. Since it has an entry for windows it should give you that option.

Did you install grub to sda or sdb? The advance button during install lets you choose. Try rebooting and choose the other drive.

I would still suggest having grub in sdb and set that drive in BIOS to boot. And have windows boot loader in sda so you can boot it on its own if you wanted.

mirach
April 30th, 2010, 10:56 PM
Thanks for the replies. I reran the install and this time right after the partition selection I get a summary window with the "Advanced" button. In there as oldfred suggested I picked sdb and finished the install. Now it behaves as it should - a window comes up that allows selection of the OS to boot.

Thanks again!