#### Linux From Scratch - Version 11.1-rc1

### Chapter 8. Installing Basic System Software

- Prev

  Groff-1.22.4

- Next

  Gzip-1.11

- Up
- Home

# 8.59. GRUB-2.06

The GRUB package contains the GRand Unified Bootloader.

Approximate build time: 0.7 SBU
Required disk space: 158 MB

## 8.59.1. Installation of GRUB

### Note

If your system has UEFI support and you wish to boot LFS with UEFI, you can skip this package in LFS, and install GRUB with UEFI support (and its dependencies) following the BLFS page at the end of this chapter.

Prepare GRUB for compilation:

    ./configure --prefix=/usr          \
                --sysconfdir=/etc      \
                --disable-efiemu       \
                --disable-werror

The meaning of the new configure options:

`--disable-werror`

  This allows the build to complete with warnings introduced by more recent Flex versions.

`--disable-efiemu`

  This option minimizes what is built by disabling a feature and testing programs not needed for LFS.

Compile the package:

    make

The test suite for this packages is not recommended. Most of the tests depend on packages that are not available in the limited LFS environment. To run the tests anyway, run make check.

Install the package:

    make install
    mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions

Using GRUB to make your LFS system bootable will be discussed in Section 10.4, “Using GRUB to Set Up the Boot Process”.

## 8.59.2. Contents of GRUB

Installed programs: grub-bios-setup, grub-editenv, grub-file, grub-fstest, grub-glue-efi, grub-install, grub-kbdcomp, grub-macbless, grub-menulst2cfg, grub-mkconfig, grub-mkimage, grub-mklayout, grub-mknetdir, grub-mkpasswd-pbkdf2, grub-mkrelpath, grub-mkrescue, grub-mkstandalone, grub-ofpathname, grub-probe, grub-reboot, grub-render-label, grub-script-check, grub-set-default, grub-sparc64-setup, and grub-syslinux2cfg
Installed directories: /usr/lib/grub, /etc/grub.d, /usr/share/grub, and /boot/grub (when grub-install is first run)

### Short Descriptions

grub-bios-setup | Is a helper program for grub-install
grub-editenv | A tool to edit the environment block
grub-file | Checks if FILE is of the specified type.
grub-fstest | Tool to debug the filesystem driver
grub-glue-efi | Processes ia32 and amd64 EFI images and glues them according to Apple format.
grub-install | Install GRUB on your drive
grub-kbdcomp | Script that converts an xkb layout into one recognized by GRUB
grub-macbless | Mac-style bless on HFS or HFS+ files
grub-menulst2cfg | Converts a GRUB Legacy `menu.lst` into a `grub.cfg` for use with GRUB 2
grub-mkconfig | Generate a grub config file
grub-mkimage | Make a bootable image of GRUB
grub-mklayout | Generates a GRUB keyboard layout file
grub-mknetdir | Prepares a GRUB netboot directory
grub-mkpasswd-pbkdf2 | Generates an encrypted PBKDF2 password for use in the boot menu
grub-mkrelpath | Makes a system pathname relative to its root
grub-mkrescue | Make a bootable image of GRUB suitable for a floppy disk or CDROM/DVD
grub-mkstandalone | Generates a standalone image
grub-ofpathname | Is a helper program that prints the path of a GRUB device
grub-probe | Probe device information for a given path or device
grub-reboot | Sets the default boot entry for GRUB for the next boot only
grub-render-label | Render Apple .disk_label for Apple Macs
grub-script-check | Checks GRUB configuration script for syntax errors
grub-set-default | Sets the default boot entry for GRUB
grub-sparc64-setup | Is a helper program for grub-setup
grub-syslinux2cfg | Transform a syslinux config file into grub.cfg format

- Prev

  Groff-1.22.4

- Next

  Gzip-1.11

- Up
- Home