LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Grub menu not showing up (https://www.linuxquestions.org/questions/linux-newbie-8/grub-menu-not-showing-up-504555/)

jdiemer 11-24-2006 02:32 PM

Grub menu not showing up
 
I'm trying to configure a dual-boot machine, 2 SATA drives. Sda contains WindowsXP. Sdb has Centos. The bios has boot option where one can boot from either hard drive.

The computer folks here really like XP, and have the ability to push out new XP images at any time. Therefore, Linux must be on sdb, and the bootloader for linux must also reside on the same drive (or when they push out a new XP image, they'll reformat sda, and destroy the linux bootloader there).

Ok, so I think I've explained why I need the bootloader on sdb.

So here's what's going on. Grub won't show it's menu. When I select to boot drive 2, it simply takes me to the grub command line. From there, I can type in the following:

root (hd0,0)
kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/sdb2 rhgb quiet
initrd /initrd-2.6.9-34.ELsmp.img

And Linux runs beautifully.

You might notice that I'm using hd0, when Linux resides on sdb. When I try to tell grub to use (hd1,0) , it complains about the partition type. It appears that grub(or the bios) is perhaps switching hd0/hd1? However, it is still referred to as /dev/sdbX correctly.

grub.conf:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd1,0)
# kernel /vmlinuz-version ro root=/dev/sdb2
# initrd /initrd-version.img
#boot=/dev/sdb1

default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz

title CentOS-4 x86_64 (2.6.9-34.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/sdb2 rhgb quiet
initrd /initrd-2.6.9-34.ELsmp.img
title CentOS-4 x86_64-up (2.6.9-34.EL)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.EL ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.9-34.EL.img


device.map:

# this device map was generated by anaconda
(fd0) /dev/fd0
(hd0) /dev/sda
(hd1) /dev/sdb

filesystem:
/dev/sdb2 /
/dev/sdb1 /boot
none /dev/shm
/dev/sdb6 /home
/dev/sdb5 /var


Any thoughts on why grub's pretty menu won't show up?

Thanks!

Brian1 11-24-2006 03:18 PM

What /dev/sdb* is your /boot directory on?

Brian

titopoquito 11-24-2006 03:20 PM

I had the same problem with my Linux partitions on sda and two IDE harddisks set prior in boot order by the BIOS. I have to admit I didn't try too long, but I didn't get it to work. It seemed that GRUB indeed saw my sda (put first in boot order) as hd(0) when booting but after booting as hd(2).
There might be a way by changing /boot/grub/devices.map but I did not want to try it and ended up with restoring the "original" boot sequence and install the GRUB loader to hda. If you had the possibility to boot from floppy or even better an USB stick that might make it much easier I guess.

jdiemer 11-24-2006 04:16 PM

Quote:

Originally Posted by Brian1
What /dev/sdb* is your /boot directory on?

Brian

I have a separate boot partition at /dev/sdb1

burninGpi 11-24-2006 08:28 PM

First, the "boot" lines are missing from your grub.conf:
Code:

title CentOS-4 x86_64 (2.6.9-34.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/sdb2 rhgb quiet
initrd /initrd-2.6.9-34.ELsmp.img
boot

title CentOS-4 x86_64-up (2.6.9-34.EL)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.EL ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.9-34.EL.img
boot

What FS is your /boot?

Oh, and sometimes, the splashimage causes problems. try commenting it out ;)

burninGpi 11-24-2006 09:02 PM

try putting this in your grub.conf:
Code:

...
title CentOS-4 x86_64 (2.6.9-34.ELsmp)
map (hd1) (hd0)
root (hd1,0)
kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/sdb2 rhgb quiet
initrd /initrd-2.6.9-34.ELsmp.img
boot


jdiemer 11-28-2006 12:30 PM

Quote:

Originally Posted by burninGpi
First, the "boot" lines are missing from your grub.conf:
Code:

title CentOS-4 x86_64 (2.6.9-34.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.ELsmp ro root=/dev/sdb2 rhgb quiet
initrd /initrd-2.6.9-34.ELsmp.img
boot

title CentOS-4 x86_64-up (2.6.9-34.EL)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.EL ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.9-34.EL.img
boot

What FS is your /boot?

Oh, and sometimes, the splashimage causes problems. try commenting it out ;)

I added the boot lines, commented out the splashimage, and added the map command...and the menu still does not show up. It only takes me to the grub command prompt.

My /boot is on ext3.


All times are GMT -5. The time now is 10:48 AM.