Using Grub

I'd avoided installing Grub on the upgrade to Redhat 7.3, since I was quite comfortable with Lilo. However, the FreeBSD boot loader on maroon, while simple (no configuration at all), was a little too cryptic for my users. Identifying Windows 2000 as ?? struck even me as a little unfriendly.

I added the Grub package to maroon and, after a little study, performed the following steps:

  1. Copied the Grub stage files, installed in /usr/local/share/grub/i386-freebsd, to the /boot/grub directory:
    cd /usr/local/share/grub/i386-freebsd 
    cp stage* /boot/grub 
    cp *stage1_5 /boot/grub 
    
  2. Created the Grub menu configuration file, /boot/grub/menu.lst (the suffix is ell ess tee), with the following contents:
     
    default 0 
    timeout 10
    
    title Windows 2000
    rootnoverify (hda0,0)
    makeactive
    chainloader +1
    
    title FreeBSD
    root (hd0,1,a)
    kernel /boot/loader
    
  3. Installed Grub on the MBR by issuing the grub commands:
    root (hd0,1,a)
    setup (hd0)
    

Grub worked well, and its advantage over Lilo was that you didn't need to remember to run /sbin/lilo when the configuration file changed.

I installed Grub on gold (the Linux Redhat 7.3 machine). The setup is slightly different, in that the configuration file is called /boot/grub/grub.conf. The Grub commands to load Linux are something like:

title RH Linux 2.4.18-10
root (hd0,1)
kernel /boot/vmlinuz-2.4.18-10 ro root=/dev/hda2
initrd /boot/initrd-2.4.18-10.img

Note that if you need to enter Grub commands at boot time (maybe the configuration file is unreadable), then you must enter the command boot after the appropriate boot setup commands. Note that the title directive should be omitted; it's only necessary for the menu.