Search

GRUB, GNU GRand Unified Boot Loader

Boot loader is a software code that runs before the Operating System and helps in loading the Operating System. Boot loaders usually contain several ways to boot the Operating System kernel and also contain commands for trouble-shooting or passing some values to the kernel while booting.

When a computer with Red Hat Enterprise Linux is powered on, the Red Hat Enterprise Linux Operating System is loaded into memory and started by a boot loader. A boot loader program is located on the system's primary hard drive and the boot loader has the responsibility of loading the Linux kernel with its required necessary files into the computer’s memory.

RedHat enterprise editions for different hardware architecture use different boot loaders. The following table shows the different boot loaders for different hardware platforms.

Architecture

Boot Loaders

AMD32, AMD64,

GRUB

Intel x86, EMT64T

GRUB

Intel Itanium

ELILO

IBM eServer System i

OS/400

IBM eServer System p

YABOOT

IBM System z

z/IPL

The GRUB (GNU GRand Unified Boot loader) is the default boot loader for AMD32, AMD64, Intel x86 and Intel EMT64T based hardware platforms. GRUB (GNU GRand Unified Boot loader) enables the selection of the installed operating system at boot time. GRUB also allows the user to pass arguments to the kernel while booting.

Different stages of Linux booting.

1. The Stage 1 or primary boot loader is read into memory by the BIOS from the Master Boot Record (MBR). The primary boot loader exists on less than 512 bytes of disk space within the MBR and is capable of loading either the Stage 1.5 or Stage 2 boot loader.

2. The Stage 1.5 boot loader is read into memory by the Stage 1 boot loader.

3. The Stage 2 or secondary boot loader is read into memory. The secondary boot loader displays the GRUB menu and command environment. This interface allows the user to select which kernel or operating system to boot, pass arguments to the kernel, or look at system parameters.

4. The secondary boot loader reads the operating system or kernel as well as the contents of /boot/sysroot/ into memory. Once GRUB determines which operating system or kernel to start, it loads it into memory and transfers control of the machine to that operating system.

5) init program is initiated and it will read the inittab file (/etc/inittab) and set up the appropriate runlevel.

Related Tutorials
• Working with grub.conf configuration file
• How to password protect GRUB (GNU GRand Unified Boot loader)
• Linux Rescue Mode (Linux Rescue Environment)
• init process and Linux runlevels
• inittab configuration file
• Working with inittab configuration file
• inittab format