GRUB Menu Configuration File

The configuration file, which is used to create the list in GRUB's menu interface of operating systems to boot, essentially allows the user to select a pre-set group of commands to execute. The commands given in the Section called GRUB Commands can be used, as well as some special commands that are only available in the configuration file.

Special Configuration File Commands

The following commands can only be used in the GRUB menu configuration file:

The # character can be used to place comments in the menu configuration file.

Configuration File Structure

GRUB menu interface's configuration file is /boot/grub/grub.conf. The commands to set the global preferences for the menu interface are placed at the top of the file, followed by the different entries for each of the operating systems or kernels listed in the menu.

A very basic GRUB menu configuration file designed to boot either Red Hat Linux or Microsoft Windows 2000 might look as follows:

default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz

# section to load linux
title Red Hat Linux (2.4.18-5.47)
        root (hd0,0)
        kernel /vmlinuz-2.4.18-5.47 ro root=/dev/sda2
        initrd /initrd-2.4.18-5.47.img

# section to load Windows 2000
title windows
        rootnoverify (hd0,0)
        chainloader +1

This file would tell GRUB to build a menu with Red Hat Linux as the default operating system, set to autoboot it after 10 seconds. Two sections are given, one for each operating system entry, with commands specific to this system's disk partition table.

NoteNote
 

Note the default is specified as a number. This refers to the first title line GRUB comes across. If you want windows to be the default, change the default= value to 1.

Configuring a GRUB menu configuration file to boot multiple operating systems is beyond the scope of this chapter. Please consult the Section called Additional Resources for detailed information about configuring GRUB to boot different operating systems.