Chapter 9. The Boot Loader

Contents

9.1. Selecting a Boot Loader
9.2. Booting with GRUB
9.3. Configuring the Boot Loader with YaST
9.4. Uninstalling the Linux Boot Loader
9.5. Creating Boot CDs
9.6. The Graphical SUSE Screen
9.7. Troubleshooting
9.8. For More Information

Abstract

This chapter describes how to configure GRUB, the boot loader used in SUSE Linux. A special YaST module is available for performing all settings. If you are not familiar with the subject of booting in Linux, read the following sections to acquire some background information. This chapter also describes some of the problems frequently encountered when booting with GRUB and their solutions.

This chapter focuses on boot management and the configuration of the boot loader GRUB. The boot procedure as a whole is outlined in Chapter 8, Booting and Configuring a Linux System. A boot loader represents the interface between machine (BIOS) and the operating system (SUSE Linux). The configuration of the boot loader directly impacts the start of the operating system.

The following terms appear frequently in this chapter and might need some explanation:

Master Boot Record

The structure of the MBR is defined by an operating system–independent convention. The first 446 bytes are reserved for the program code. They typically hold the boot loader program, in this case, GRUB stage 1. The next 64 bytes provide space for a partition table of up to four entries (see Section 1.8.1.1, “Partition Types” (↑Start-Up)). The partition table contains information about the partitioning of the hard disk and the file system type. The operating system needs this table for handling the hard disk. With GRUB stage 1 in the MBR, exactly one partition must be marked active. The last two bytes of the MBR must contain a static “magic number” (AA55). An MBR containing a different value is regarded as invalid by BIOSs.

Boot Sectors

Boot sectors are the first sectors of hard disk partitions with the exception of the extended partition, which merely serves as a “container” for other partitions. These boot sectors have 512 bytes of space for code used to boot an operating system installed in the respective partition. This applies to boot sectors of formatted DOS, Windows, and OS/2 partitions, which also contain some important basic data of the file system. In contrast, the boot sectors of Linux partitions are initally empty after setting up a file system other than XFS. Therefore, a Linux partition is not bootable by itself, even if it contains a kernel and a valid root file system. A boot sector with valid code for booting the system has the same magic number as the MBR in its last two bytes (AA55).


9.1. Selecting a Boot Loader

By default, the boot loader GRUB is used in SUSE Linux. However, in some cases and for special hardware and software constellations, LILO may be necessary. If you update from an older SUSE Linux version that uses LILO, LILO is installed.

Information about the installation and configuration of LILO is available in the Support Database under the keyword LILO and in /usr/share/doc/packages/lilo.