LILO is an acronym for the
LInux LOader and has been used
to boot Linux on x86 systems for many years. Although GRUB is now the
default boot loader, some users prefer to use LILO because it is more
familiar to them and others use it out of necessity, since GRUB may have
trouble booting some hardware.
2.8.1. LILO and the x86 Boot Process
This section discusses in detail the specific role LILO plays
when booting an x86 system. For a detailed look at the overall boot
process, see Section 1.2 A Detailed Look at the Boot Process.
LILO loads itself into memory almost identically to GRUB, except it is
only a two stage loader.
The Stage 1 or primary boot loader is read into
memory by the BIOS from the MBR. The primary boot loader exists on less
than 512 bytes of disk space within the MBR. It only loads the
Stage 2 boot loader and passes disk geometry information to it.
The Stage 2 or secondary boot loader is read into
memory. The secondary boot loader displays the Red Hat Linux
initial screen. This screen allows you to select which operating
system or Linux kernel to boot.
The Stage 2 boot loader reads the operating system
or kernel and initrd into
memory. Once LILO determines which operating system
to start, it loads it into memory and hands control of the
machine to that operating system.
Once the Stage 2 boot loader is in memory, LILO displays the initial
Red Hat Linux screen with the different operating systems or kernels it has
been configured to boot. By default, if Red Hat Linux is the only operating
system installed, linux will be the only
available option. If the system has multiple processors there will be
a linux-up option for the single processor
kernel and a linux option for the multiple
processor (SMP) kernel. If LILO is configured to boot other operating
systems, those boot entries also appear on this screen.
The arrow keys allow a user to highlight the desired operating system
and the [Enter] key begins the boot process.
To access a boot: prompt, press
2.8.2. LILO versus GRUB
In general, LILO works similarly to GRUB except for three major
It has no interactive command interface.
It stores information about the location of the kernel or other
operating system it is to load on the MBR.
It cannot read ext2 partitions.
The first point means the command prompt for LILO is not interactive and
only allows one command with arguments.
The last two points mean that if you change LILO's configuration file
or install a new kernel, you must rewrite the Stage 1 LILO boot loader
to the MBR by using the following command:
This method is more risky than the method used by GRUB because a
misconfigured MBR leaves the system unbootable. With GRUB, if the
configuration file is erroneously configured, it will default to its
command line interface where the user can boot the system manually.
If upgrading the kernel using the Red Hat Update Agent, the MBR
will be updated automatically. More information about RHN is available
online at the following URL: https://rhn.redhat.com