1

Why is GRUB so much more popular than LILO? The only distribution that I can think of that uses LILO by default is Slackware Linux. All other distributions use GRUB. To this day I've never understood GRUB. LILO seems simpler.

Power User website has 950 tags for GRUB, and just 11 for LILO, which confirms that GRUB is much more popular.

Are there any advantages of GRUB over LILO? If so what are they?

bodacydo
  • 322
  • 1
    Well LILO has been around a long time, and you didn't say ELILO. Old LILO doesn't support things like EFI booting. ELILO does. This chart does give you an idea of what many bootloaders (including ELILO and GRUB) have to offer. –  Oct 25 '14 at 01:46
  • if EFI booting is a target of interest for you, then you might be surprised to learn that neither one has much of a purpose at all - and any bootloader in that context is not only redundant but also likely more trouble than it is worth. EFI bootloading is very rarely a good idea, as the EFI firmware already serves this purpose and obscuring that function will probably only confuse the situation further. See Is LILO still usable on a modern PC? for a discussion on why. – mikeserv Oct 25 '14 at 06:38

3 Answers3

2

Simple things are often the best, but they lack the features from more complex tools that are sometimes useful. If you don't use those features, the extra documentation you have to wade through and things you can do wrong is a disadvantage. This applies to lilo vs. grub as well as to many other software (sed vs awk, C vs C++ (especially the newer versions with templates ))

Popularity is not always a question of better. I used lilo for several years before switching to grub because my distro made that change. I had trouble adjusting, e.g. with finding out how to save the selected boot item (and never found out how to set the next entry to boot from windows, like I used to with lilo)

But I liked the greater ease with which to install Linux next to Windows. The main advantage I see when interacting with grub (not caring for graphical boot screens) is that (grub2) has submenus making it easier to handle a large amount of entries. Lilo also doesn't support the Btrfs filesystem that I at one time used for the partition I boot from.

As Michael already indicated lilo doesn't handle EFI booting. The longevity and long-time usefulness of lilo are a result of the stability of the BIOS functionality it builds on top of and its relative low complexity.

Anthon
  • 79,293
  • 1
    ELILO handles EFI booting of course, and grub2 offers almost nothing whatsoever that cannot be had without a bootloader at all in that context on many systems, though for additional filesystems and consistent feel you may need a boot-manager - which is still a couple of orders of magnitudes less complex than is grub2. – mikeserv Dec 21 '14 at 18:27
1

The biggest deficiency that LILO had was it didn't know anything about filesystems. It stored a static list of where the disk blocks holding the kernel were on disk. Same with the initial ramdisk image. The upshot of this is that that if you rebuilt your kernel or initial ramdisk, you had to remember to re-run the lilo command even if the files kept the same name.

With GRUB, you only have to take extra action (editing a config file) if putting in a new kernel with a new filename, since it knows how to read the filesystem (with support for the various ext2/3/4 filesystems, and several others).

BTW, if you wanted something that is half way between lilo and grub (simple like lilo, but can read filesystems), look at syslinux. It is typically used for booting iso images, but it also includes extlinux for the ext[234] filesystems, and a module for a dos filesystem too.

0

GRUB: GRUB stands for Grand Unified Bootloader
LILO has no interactive command interface, whereas GRUB does.
LILO does not support booting from a network, whereas GRUB does
GRUB has the knowledge of the filesystem (the older Linux loader LILO didn't understand filesystem).

HalosGhost
  • 4,790