%general-entities; ]> Making the LFS system bootable We highly recommend that you create a Grub boot floppy diskette just in case. Insert a blank floppy diskette and run the following commands: dd if=/boot/grub/stage1 of=/dev/fd0 bs=512 count=1 dd if=/boot/grub/stage2 of=/dev/fd0 bs=512 seek=1 Remove the diskette and store it somewhere safe. Now we'll run the grub shell: grub First, tell Grub where to search for its stage{1,2} files -- you can use the Tab key everywhere to make Grub show the alternatives: root (hd0,3) Tell Grub to install itself into the MBR (Master Boot Record) of hda: setup (hd0) If all is well, Grub will have reported finding its files in /boot/grub. That's all there is to it: quit Now we need to create a menu list file, defining Grub's boot menu: cat > /boot/grub/menu.lst << "EOF" # Begin /boot/grub/menu.lst # By default boot the first menu entry. default 0 # Allow 30 seconds before booting the default. timeout 30 # Use prettier colors. color green/black light-green/black # The first entry is for LFS. title LFS &version; root (hd0,3) kernel /boot/lfskernel-&linux-version; root=/dev/hda4 EOF You may want to add an entry for your host distribution. It might look like this: cat >> /boot/grub/menu.lst << "EOF" title Red Hat root (hd0,2) kernel /boot/kernel-2.4.20 root=/dev/hda3 initrd /boot/initrd-2.4.20 EOF Also, if you happen to dual-boot Windows, the following entry should allow booting it: cat >> /boot/grub/menu.lst << "EOF" title Windows rootnoverify (hd0,0) chainloader +1 EOF The FHS stipulates that Grub's menu.lst file should be symlinked to /etc/grub/menu.lst. To satisfy this requirement, issue the following command: mkdir /etc/grub && ln -s /boot/grub/menu.lst /etc/grub