Wednesday, February 21, 2007

linux: grub vs lilo

GNU GRUB 2:

Here are some of GRUB 2's features that make it more attractive than LILO (imo):

* Scripting support, such as conditionals, loops, variables and functions.
* Graphical interface.
* Dynamic loading of modules in order to extend itself at the run time rather than at the build time.
* Portability for various architectures.
* Internationalization. This includes support for non-ASCII character code, message catalogs like gettext, fonts, graphics console, and so on.
* Real memory management, to make GNU GRUB more extensible.
* Modular, hierarchical, object-oriented framework for file systems, files, devices, drives, terminals, commands, partition tables and OS loaders.
* Cross-platform installation which allows for installing GRUB from a different architecture.
* Rescue mode saves unbootable cases. Stage 1.5 was eliminated.
* Fix design mistakes in GRUB Legacy, which could not be solved for backward-compatibility, such as the way of numbering partitions."



GRUB (Legacy) vs. LILO

As stated at the start of this article, 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.

No comments: