You are here: Home / Featured, Open Source / LINUX AND BOOT LOADERS


Posted by .

Boot loaders are the programs which loads the kernel to the RAM from the Hard disk. In the case of Windows they use a program called boot-manager. Considering Linux we have several boot loaders available, but the best are LILO and GRUB(or GNU GRUB) which is being used by various distributions by default. If we compare with Microsoft’s boot-loader with Linux boot-loader ,the Linux boot-loaders will support the boot entries of other OS like windows or Mac while in Windows the boot-manager will not allow to store boot entries of Operating Systems other than Linux by default.


The LILO is the ancient boot loader, which was the only available boot loader for Linux Distributions, but the popularity of GRUB had been suppressed the usage of LILO. It is actually a second stage boot loader for x86 systems which means the boot loader works as two stages. The configuration file used for the booting file is lilo.conf which is written to the MBR(Master Boot Record) Of the device by the LILO during its is an example for a typical lilo.conf


                                               boot = /dev/sda
                                               default =theapp
                                               #kernel image to boot
                                               image = /boot/zimage
                                               label= theapp





The grub or GNU-grub is the most common boot loader used in the Linux Systems. This works much similar to LILO loader.But the simplicity and the efficiency made it so popular today.

What it actually does is it finds the kernel from the boot able device and put it into the main memory.But this process happens in different stages. Grub has 3 stages -Grub 1, Grub 1.5, Grub 2. These loaders will fit into the MBR of the device. The grub 1 will mount necessary devices that are needed to support Grub 2 boot loader which reads the configuration files and present a user interface.

If the grub2 is not fit in the MBR then instead of the grub2 we make use of grub 1.5.Grub is controlled by the file /boot/grub/menu.lst which is stored in the boot partition during installation.for troubleshooting on the particular  GRUB problems click here.

———Example for GRUB menu.lst———


                                                     title                  Linux
                                                     root                 (hda 0,1)
                                                     kernel /zImage root =/dev/hda2 ro


———Example for GRUB menu.lst———




Leave a Reply