From Funtoo
Revision as of 02:38, June 1, 2015 by Threesixes (talk | contribs) (add debian sources support)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search



We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Lilo linux loader is a boot loader to load linux, and other operating systems. Lilo is called by default when running make install in kernel source directories.



root # emerge lilo


Lilo's default configuration example has hda references, lets change those to sda recursively using sed.

root # sed -i -e 's/hda/sda/' /etc/lilo.conf.example

Now we copy the example configuration to the running configuration.

root # cp /etc/lilo.conf.example /etc/lilo.conf

Loading Initramfs/Initrd

   /etc/lilo.conf - initramfs/initrd do not require root=, however they must have real_root appended
image = /boot/bzImage
	label = Funtoo-Debsrcs
	read-only # read-only for checking
	append="quiet real_root=/dev/sda1"

Default OS

To change default booting os.

# MBR to install LILO to:
boot = /dev/sda
map = /boot/.map
default = Funtoo


To have lilo auto start after a set time.

# If you always want to see the prompt with a 15 second timeout:


For silent kernel decompression at boot:

label = Funtoo
	read-only # read-only for checking
	append = "quiet"

alternate init systems

to load an alternate init system, example systemd instead of openrc:

label = Funtoo-systemd
	read-only # read-only for checking
	append = "quiet init=/usr/lib/systemd/systemd"

Old Configs

It is a good idea to keep an old image around in case problems crop up in new kernel builds.

#image = /boot/bzImage.old
        root = /dev/sda3
        #root = /devices/discs/disc0/part3
        label = funtoo.old
        read-only # read-only for checking#

Kernel Linking

Using symlinks is a good idea to be able to determine if the loader is loading the correct image, and enable tab auto completion to ensure we are loading what we intend to. symlinks remove an easy area to fumble when adjusting configurations.

First install of debian sources:

root # ln -s /boot/kernel-debian-sources-* /boot/bzImage
root # ln -s /boot/initramfs-debian-sources-* /boot/init.bzImage

If you have multiple debian sources installed, and compiled, change the * to the exact file name.

root # ln -s /boot/vmlinuz-version /boot/bzImage
root # ln -s /boot/vmlinuz-version.old /boot/bzImage.old

if you do not use make install to copy your kernel to /boot, you must run lilo to load the new kernel images & install lilo to the hard drives mbr


Install lilo to the MBR.

root # lilo


problem: Fatal: First sector of /dev/sda1 doesn't have a valid boot signature solution: delete or comment out un-used blocks at the bottom of /etc/lilo.conf and just leave in the funtoo statements.