What is LILO(Linux Loader) ?LILO is the old Linux Loader LILO is a bootstrap program. It is the piece of code which the PC BIOS loads into memory when the computer starts. LILO knows how to locate the Linux kernel (as well as a few other necessities).
Where to load them into memory, and how to then start the kernel (which starts Linux).LILO also allows you to select among various kernel images and boot routines when booting. Because of this, LILO can also be used as a boot manager. Many Linux users also have their computer able to start DOS, Windows, or OS/2, as well as several configurations of Linux.
Itâ€™s config file usually resides in /etc/lilo.config. When you change the config, you need to update the MBR (or boot sector of your /boot partition) by running the â€œliloâ€ command. When LILO bootâ€™s, it has limited options to allow you to modify/control the boot. It is able to read a subset of the available filesystem types (such as ext2/3, and a few others). If you never need to make changes at boot time, then LILO will work just fine for you.
What is GRUB(GRand Unified Bootloader) ?
GRUB stands for GRand Unified Bootloader and is a GNU Bootloader that can boot a variety of operating systems from Linux, Mach4, vSTA, DOS, NT 3.51, the *BSD variants and any generic OS you can add to it with its easy-to-use boot menu.
GRUB takes away all the complexities out of trying to boot your OS by doing it for you. GRUB can handle a variety of filesystems from MS-DOS FAT systems over Linux ext2fs (Second Extended File System) to BSD FFS, and can load kernels in various binary formats, including â€œgenericâ€ ELF, FreeBSD a.out, flat binary, and â€œgenericâ€ executableâ€™s (any file with a valid multiboot header). One major advantage of GRUB (or more precisely, a multiboot standard bootloader) is that the kernel will be entered in a known state, which includes the A20Line having been enabled, and ProtectedMode having been entered. This takes a lot of the pain out of writing a kernel, rendering GRUB a very useful tool for the amateur, or anyone who wants to spend more time on the intricacies of the kernel rather than worrying about these generic start-up procedures.
Its config file is usually in /boot/grub and might be called grub.conf or menu.lst. When you change the config file, you merely reboot to read the changes. The structure of the config file is very different than that of LILO, even though they each convery essentially the same information. When you boot with GRUB, you have a vast array of options available to you. You can actually build a test startup config dynamically and boot from it, very handy if you have somehow really messed up your actual config file. GRUB can read most of the current filesystem types. If you ever find that you need to make changes at boot time, usually you will find GRUB more useful. That is only my opinion of course, others may totaly disagree.
What is difference between GRUB and LILO ?
All boot loaders work in a similar way to fulfill a common purpose. But LILO and GRUB do have a number of differences:
* LILO has no interactive command interface, whereas GRUB does.
* LILO does not support booting from a network, whereas GRUB does.
* LILO stores information regarding the location of the operating systems it can to load physically on the MBR. If you change your LILO config file, you have to rewrite the LILO stage one boot loader to the MBR. Compared with GRUB, this is a much more risky option since a misconfigured MBR could leave the system unbootable. With GRUB, if the configuration file is configured incorrectly, it will simply default to the GRUB command-line interface.
* LILO only loads linux and other boot loaders. and GRUB loads a large number of OSâ€™s.
* LILO works by loading itself into a space that will fit on the MBR. Grub has two stages (because itâ€™s too overcomplicated to work as well, err I mean as easily as lilo). It loads stage 1 off the MBR (usually) and stage 2 out of /boot, along with itâ€™s config.