<sect1 id="ch08-lilo">
<title>Making the LFS system bootable</title>
<?dbhtml filename="lilo.html" dir="chapter08"?>

<para>In order to be able to boot the LFS system, we need to update our
bootloader. We're assuming that your host system is using Lilo (since
that's the most commonly used boot loader at the moment).</para>

<para>We will not be running the lilo program inside chroot. Running lilo
inside chroot can have fatal side-effects which render your MBR useless
and you'd need a boot disk to be able to start any Linux system (either
the host system or the LFS system).</para>

<para>First we'll exit chroot and copy the lfskernel file to the host 
system:</para>

<para><screen><userinput>logout</userinput>
<userinput>cp $LFS/boot/lfskernel /boot</userinput></screen></para>

<para>The next step is adding an entry to /etc/lilo.conf so that we can
choose LFS when booting the computer:</para>

<para><screen><userinput>cat &gt;&gt; /etc/lilo.conf &lt;&lt; "EOF"</userinput>
image=/boot/lfskernel
        label=lfs
        root=&lt;partition&gt;
        read-only
<userinput>EOF</userinput></screen></para>

<para>&lt;partition&gt; must be replaced with the LFS 
partition's designation.</para>

<para>Also note that if you are using reiserfs for your root partition,
the line <userinput>read-only</userinput> should be changed to
<userinput>read-write</userinput>.</para>

<para>Now, update the boot loader by running:</para>

<para><screen><userinput>/sbin/lilo -v</userinput></screen></para>

<para>The last step is synchronizing the host system's lilo
configuration files with the LFS system's:</para>

<para><screen><userinput>cp /etc/lilo.conf $LFS/etc &amp;&amp;
cp $(grep "image.*=" /etc/lilo.conf | cut -f 2 -d "=") $LFS/boot</userinput></screen></para>

</sect1>

