World Library  
Flag as Inappropriate
Email this Article

LILO (boot loader)

Article Id: WHEBN0000287810
Reproduction Date:

Title: LILO (boot loader)  
Author: World Heritage Encyclopedia
Language: English
Subject: SILO (boot loader), Linux startup process, Bootmanager, Comparison of boot loaders, XOSL
Collection: Free Boot Loaders
Publisher: World Heritage Encyclopedia

LILO (boot loader)

Standard LILO menu display.
Developer(s) Werner Almesberger (1992–1998), John Coffman (1999–2007), Joachim Wiedorn (since 2010)
Stable release 24.1 (17 October 2014)
Development status maintained
Type Bootloader
License BSD license

LILO (LInux LOader) is a boot loader for Linux and was the default boot loader for most Linux distributions in the years after the popularity of loadlin. Today, most distributions use GRUB as the default boot loader.


  • Overview 1
  • LILO files 2
    • lilo.conf 2.1
    • /boot/ 2.2
  • Master boot record 3
  • Output 4
  • Error codes 5
  • ELILO 6
  • See also 7
  • Notes 8
  • References 9
  • External links 10


LILO does not depend on a specific file system, and can boot an operating system (e.g., Linux kernel images) from floppy disks and hard disks. One of up to sixteen different images can be selected at boot time. Various parameters, such as the root device, can be set independently for each kernel. LILO can be placed in the master boot record (MBR) or the boot sector of a partition. In the latter case, the MBR must contain code to load LILO.

At system start, only the BIOS drivers are available for LILO to access hard disks. For this reason, a very old BIOS access area is limited to cylinders 0 to 1023 of the first two hard disks. For a later BIOS, LILO can use 32-bit "logical block addressing" (LBA) to access the entire capacity of the hard disks the BIOS has access to.

LILO files


The lilo.conf file is typically located at /etc/lilo.conf. Within lilo.conf there are typically two section types. The first section, which defines the global options, contains parameters which specify boot location attributes. The second section(s) contain parameters associated with the operating system images to be loaded. The section type can be repeated for up to 16 different boot selections.

Remember to run the /sbin/lilo command after editing the /etc/lilo.conf file so that your changes take effect.

Definition information can be found in the LILO Manpage.

An example for /etc/lilo.conf:



Note: Here LILO offers after correct installation a menu with Linux and FreeBSD.


LILO stores a number of files in the /boot/ – see /boot/: LILO.

Master boot record

LILO can write a Master Boot Record on a device:

/sbin/lilo -M


When LILO loads itself it displays the word “LILO”. Each letter is printed before or after some specific action. If LILO fails at some point, the letters printed so far can be used to identify the problem.

No part of LILO has been loaded. LILO either isn't installed or the partition on which its boot sector is located isn't active. The boot media is incorrect or faulty.
The first stage boot loader has been loaded and started, but it can't load the second stage boot loader. The two-digit error codes indicate the type of problem. This condition usually indicates a media failure or bad disk parameters in the BIOS.
The first stage boot loader was able to load the second stage boot loader, but has failed to execute it. This can be caused by bad disk parameters in the BIOS.
The second stage boot loader has been started, but it can't load the descriptor table from the map file. This is typically caused by a media failure or by bad disk parameters in the BIOS.
The second stage boot loader has been loaded at an incorrect address. This is typically caused by bad disk parameters in the BIOS.
The descriptor table is corrupt. This can be caused by bad disk parameters in the BIOS.
All parts of LILO have been successfully loaded.

Error codes

e.g.: L 01 01 01, L 07 07 07 etc..

Error code Name Description
0x00 Internal Error This code is generated by the sector read routine of the LILO boot loader whenever an internal inconsistency is detected. This might be caused by corrupt files. Try re-building the map file. Another possible cause for this error are attempts to access cylinders beyond 1024 while using the LINEAR option.
0x01 Illegal Command This shouldn't happen, but if it does, it may indicate an attempt to access a disk which is not supported by the BIOS. Definitely check to see if the disk is seen by the BIOS first (and that the BIOS detail is complete).
0x02 Address mark not found This usually indicates a media problem. Try again several times.
0x03 Write-protected disk This should only occur on write operations.
0x04 Sector not found This typically indicates a geometry mismatch. If you're booting a raw-written disk image, verify whether it was created for disks with the same geometry as the one you're using. If you're booting from a SCSI disk or a large IDE disk, you should check, whether LILO has obtained correct geometry data from the kernel or whether the geometry definition corresponds to the real disk geometry. Removing COMPACT may help too. So may adding LBA32 or LINEAR.
0x06 Change line active This should be a transient error. Try booting a second time.
0x07 Invalid initialization The BIOS failed to properly initialize the disk controller. You should control the BIOS setup parameters. A warm boot might help too. (Boot a rescue disc and rerun LILO.)
0x08 DMA overrun This shouldn't happen. Try booting again.
0x09 DMA attempt across 64k boundary This shouldn't happen, but may indicate a disk geometry mis-match. Try omitting the COMPACT option. You may need to specify the disk geometry yourself.
0x0C Invalid media This shouldn't happen and might be caused by a media error. Try booting again.
0x10 CRC error A media error has been detected. Try booting several times, running the map installer a second time (to put the map file at some other physical location or to write "good data" over the bad spot), mapping out the bad sectors/tracks and, if all else fails, replacing the media.
0x11 ECC correction successful A read error occurred, but was corrected. LILO does not recognize this condition and aborts the load process anyway. A second load attempt should succeed.
0x20 Controller error This shouldn't happen, then again, none of these errors should happen eh?
0x40 Seek failure This might be a media problem. Try booting again.
0x80 Disk timeout The disk or the drive isn't ready. Either the media is bad or the disk isn't spinning. If you're booting from a floppy, you might not have closed the drive door. Otherwise, trying to boot again might help.
0x99 Invalid Second Stage Mismatch between drive and BIOS geometry, or a bad map file. Some evidence that LINEAR needs to be set on the disk (see LiloNotes)
0x9A Can't Find Second Stage Check to see if you have the correct device for boot, e.g. boot=/dev/hda1 when it should be in the MBR i.e. boot=/dev/hda.
0xBB BIOS error This shouldn't happen. Try booting again. If the problem persists, removing the COMPACT option or adding/removing LINEAR or LBA32 might help.


Developer(s) HP
Stable release 3.16 / March 29, 2013
Type Bootloader
License GPL

For EFI-based PC hardware the now orphaned[1] ELILO boot loader was developed,[2] originally by Hewlett Packard for IA-64 systems made, but later also for standard Intel IA-32 and x86-64 hardware with EFI support.

On any version of Linux running on Intel-based Apple Macintosh hardware, ELILO is one of the available bootloaders.[3]

It supports network booting using TFTP/DHCP.

See also


  • LILO installation instructions
  • LILO mini-HOWTO
  • LILO error messages at the Wayback Machine (archived April 2, 2013)
  • LILO and GRUB: Boot Loaders Made Simple by Judith Myerson
  • From Lilo to Grub at the Wayback Machine (archived February 2, 2009)
  • Lilo tips from the Linux Kernel Howto
  • Bonney, Laurence (2005-08-24). "Boot loader showdown: Getting to know LILO and GRUB: Contrast and compare these two contenders".  
  •  – Linux Administration and Privileged Commands Manual
  •  – Linux File Formats Manual


  1. ^ "ELILO: EFI Linux Boot Loader". Retrieved 2015-07-04. This project is orphaned, Debian dropped it in 2014, and RH & SUSE stopped using this tree (and feeding back change) long before that so no longer interested in working on it. 
  2. ^ "Chapter 24. Configuring ELILO",
  3. ^ "Managing EFI Boot Loaders for Linux", Rod Smith

External links

  • Official homepage
  • Project homepage on Alioth
  • How to Remove the Linux LILO Boot Manager
  • How Can I Uninstall Lilo?
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Hawaii eBook Library are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.