Index: BOOK/bootable/x86/grub.xml
===================================================================
--- BOOK/bootable/x86/grub.xml (revision 61ad0b7f48f96d7ead631f94565795d14fab768d)
+++ BOOK/bootable/x86/grub.xml (revision 4e60ea5edec657066d47302cbedd0a46bde15825)
@@ -18,5 +18,5 @@
Your shiny new CLFS system is almost complete. One of the last
things to do is to ensure that the system can be properly booted. The
- instructions below apply only to computers of IA-32 architecture,
+ instructions below apply only to computers of x86 and x86_64 architecture,
meaning mainstream PCs. Information on boot loading
for
other architectures should be available in the usual resource-specific
@@ -29,42 +29,12 @@
the computer if the computer becomes unusable (un-bootable).
- Earlier, we compiled and installed the GRUB boot loader software
- in preparation for this step. The procedure involves writing some special
- GRUB files to specific locations on the hard drive. We highly recommend
- creating a GRUB boot floppy diskette as a backup. Insert a blank floppy
- diskette and run the following commands:
+ The first thing we need to do is generate a configuration for
+ GRUB. In previous versions of grub we could create the configuration manually
+ here, but with GRUB2 we can generate grub.cfg
+ automatically. You can do this with the following command:
-dd if=/boot/grub/stage1 of=/dev/fd0 bs=512 count=1
-dd if=/boot/grub/stage2 of=/dev/fd0 bs=512 seek=1
+grub-mkconfig -o /boot/grub/grub.cfg
- Remove the diskette and store it somewhere safe. Now, run the
- grub shell:
-
-grub
-
- GRUB uses its own naming structure for drives and partitions in
- the form of (hdn,m), where n
- is the hard drive number and m is the partition
- number, both starting from zero. For example, partition hda1 is (hd0,0) to
- GRUB and hdb3 is
- (hd1,2). In contrast to Linux, GRUB does not
- consider CD-ROM drives to be hard drives. For example, if using a CD
- on hdb and a second hard drive
- on hdc, that second hard drive
- would still be (hd1).
-
- Using the above information, determine the appropriate designator
- for the root partition (or boot partition, if a separate one is used).
- For the following example, it is assumed that the root (or separate boot)
- partition is hda4.
-
- Tell GRUB where to search for its stage{1,2}
- files. The Tab key can be used everywhere to make GRUB show the
- alternatives:
-
-root (hd0,3)
-
-
+
The following command will overwrite the current boot loader.
Do not run the command if this is not desired, for example, if using
@@ -72,69 +42,12 @@
In this scenario, it would make more sense to install GRUB into the
boot sector
of the CLFS partition. In this case, this
- next command would become setup (hd0,3).
+ next command would become grub-install /dev/sda2
+ .
- Tell GRUB to install itself into the MBR of
- hda:
+ Instruct GRUB to install itself int othe MBR of
+ sda:
-setup (hd0)
-
- If all went well, GRUB will have reported finding its files in
- /boot/grub. That's all there is
- to it. Quit the grub shell:
-
-quit
-
- 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 CLFS.
-title CLFS &version;
-root (hd0,3)
-kernel /boot/clfskernel-&linux-version; root=/dev/hda4
-EOF
-
-
- Add an entry for the host distribution if desired. It might look
- like this:
-
-cat >> /boot/grub/menu.lst << "EOF"
-title Red Hat
-root (hd0,2)
-kernel /boot/kernel-2.6.5 root=/dev/hda3
-initrd /boot/initrd-2.6.5
-EOF
-
- If dual-booting Windows, the following entry will allow
- booting it:
-
-cat >> /boot/grub/menu.lst << "EOF"
-title Windows
-rootnoverify (hd0,0)
-chainloader +1
-EOF
-
- If info grub does not provide all necessary
- material, additional information regarding GRUB is located on its
- website at: .
-
- The FHS stipulates that the bootloader's configuration file should
- be symlinked to /etc/{Bootloader Name}.
- To satisfy this requirement for GRUB, issue the following command:
-
-mkdir -v /etc/grub &&
-ln -sv /boot/grub/menu.lst /etc/grub
+grub-install /dev/sda