1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <sect1 id="ch08-grub">
- <title>Making the LFS system bootable</title>
- <?dbhtml filename="grub.html" dir="chapter08"?>
- <para>Now that we have our shiny new Linux-From-Scratch system completed,
- we need to ensure we can boot it. To do this, we will run the
- <userinput>grub</userinput> program.</para>
- <para><screen><userinput>grub</userinput></screen></para>
- <para>Grub uses its own naming structure for drives, in the form of (hdn,m),
- where n is the hard drive number, and m is the partition number, both of which
- start from zero. So, partition hda1 would be (hd0,0) to Grub, and hdb2 would
- be (hd1,1). Also, Grub doesn't pay attention to CD-ROM drives at all, so if,
- for example, you have a CD on hdb, and a second hard drive on hdc, partitions
- on that second hard drive would still be (hd1,m).</para>
- <para>So, using the information above, select the appropriate designator for
- your root partition. For the purposes of this, we will assume (hd0,3) for
- your root partition. First, we tell grub where to find its files:</para>
- <para><screen><userinput>root (hd0,3)
- setup (hd0)
- quit</userinput></screen></para>
- <para>This tells Grub to look for its files on hda4 (hd0,3), and install itself
- into the MBR (Master Boot Record) of hda.</para>
- <para>Also, we need to create the <filename>menu.lst</filename> file, which
- Grub uses to designate its boot menu:</para>
- <para><screen><userinput>cat > /boot/grub/menu.lst << "EOF"
- # Begin /boot/grub/menu.lst
- # Default to first menu entry
- default 0
- # Allow 30 seconds before booting default
- timeout 30
- # Use prettier colors
- color green/black light-green/black
- # Default Entry for LFS
- title LFS 5.0
- root (hd0,3)
- kernel /boot/lfskernel root=/dev/hda4 ro
- EOF</userinput></screen></para>
- <para>You might also want to add in an entry for your host distribution. It
- might look similar to this:</para>
- <para><screen><userinput>cat >> /boot/grub/menu.lst << "EOF"
- # Redhat Linux
- title Redhat
- root (hd0,2)
- kernel /boot/kernel-2.4.20 root=/dev/hda3 ro
- initrd /boot/initrd-2.4.20
- EOF</userinput></screen></para>
- <para>Also, if you happen to dual-boot Windows, the following entry should
- allow booting it:</para>
- <para><screen><userinput>cat >> /boot/grub/menu.lst << "EOF"
- # Windows
- title Windows
- rootnoverify (hd0,0)
- chainloader +1
- EOF</userinput></screen></para>
- <para>You can find more info regarding Grub on its web site, located at:
- <ulink url="http://www.gnu.org/software/grub"/>, as well as in the LFS Grub
- HOWTO located at:
- <ulink url="http://www.linuxfromscratch.org/hints/downloads/files/grub-howto.txt"/>.</para>
- </sect1>
|