<?xml version="1.0"?>
<!DOCTYPE article PUBLIC  "-//OASIS//DTD DocBook XML V4.1.2//EN"
    "http://docbook.org/xml/4.1.2/docbookx.dtd" [
<!ENTITY howto         "http://tldp.org/HOWTO/">
<!ENTITY mini-howto    "http://tldp.org/HOWTO/mini/">
<!ENTITY prompt "<prompt>[user@machine ~/dir]$</prompt>">
<!ENTITY rootprompt "<prompt>[root@machine ~/dir]#</prompt>">
]>

<article>
<articleinfo>
<title>LILO with Multiple Linux Distributions mini-HOWTO</title>

<author>
     <firstname>Daniel</firstname>
     <surname>Goldsmith</surname>
     <affiliation>
        <address>
           <email>daniel.goldsmith@gmail.com</email>
        </address>
     </affiliation>
  </author>

  <revhistory>
     <revision>
	<revnumber>v0.8</revnumber>
	<date>2004-06-30</date>
	<authorinitials>dg</authorinitials>
	<revremark>
	   Conversion to xml-docbook
	</revremark>
     </revision>
<revision>
	<revnumber>v0.7</revnumber>
	<date>2004-06-22</date>
	<authorinitials>dg</authorinitials>
	<revremark>
	   Conversion to HTML
	</revremark>
     </revision>
<revision>
	<revnumber>v0.5</revnumber>
	<date>2004-05-20</date>
	<authorinitials>dg</authorinitials>
	<revremark>
First Coherent version.
	</revremark>
     </revision>
</revhistory>

<abstract>
    <para>
      This document describes HOWTO use LILO to boot two different
      Linux distributions, using the author's experience on an
      older machine as a reference.
    </para>
</abstract>
</articleinfo>


    <sect1 id="chap1">
<title>Introduction</title>
    <sect2 id="chap1.part1"><title>Purpose</title>
    <para>
      Linux is a freely-distributable implementation of Unix for
      inexpensive personal machines (it was developed on 386s, and
      now supports 486, 586, Pentium, PowerPC, Sun Sparc, ARM and
      DEC Alpha hardware, and even the IBM System 390 mainframe!).
      It supports a wide range of software, including X Windows,
      Emacs, TCP/IP networking (including SLIP), and many
      applications.
    </para>
    <para>
      This guide attempts to show how the writer used LILO to
      successfully launch two different Linux distributions on one
      computer, which itself is crippled by the 1024 cylinder limit
    </para></sect2>
    <sect2 id="chap1.part2"><title> Background Material></title>
    <para>
      Before going any further into this guide, I suggest you read
      the Lilo manual pages until you at least understand the
      jargon. The <ulink url="www.tldp.org/HOWTO/mini/LILO.html">LILO
      mini-HOWTO</ulink> by Miroslav "Misko" Skori is a fairly
      comprehensive guide to the LILO system and should be read
      through.
    </para>
    <para>
      You should also read and understand the <ulink url="www.tldp.org/HOWTO/Large-Disk-HOWTO.html">Large
      Disk HOWTO</ulink> by Andries Brouwe, which explains all about
      Disk Geometry and the 1024 cylinder problem.
    </para>
    <para>
      Other suggested reading would include the <ulink url="www.netspace.net.au/~gok/power2bash">Power Up to
      Bash Prompt HOWTO</ulink> by Greg O'Keefe and, for the basics, <ulink url="www.tldp.org/HOWTO/Unix-and-Internet-Fundamentals-HOWTO.html">
      Unix and Internet Fundamentals HOWTO</ulink> by Eric S. Raymond.
    </para>
    <para>
      If you are new to Linux, there are several sources of basic
      information about the system. The largest such is the <ulink url="www.tldp.org">Linux Documentation Project</ulink>.
      The <ulink
      url="http//www.tldp.org/Installation-HOWTO/index.html">Linux
      Installation HOWTO</ulink> is a good reference before you begin,
      but there is a large amount of information particular to LILO
      also available there.
    </para></sect2>
     <sect2 id="chap1.part3"><title>Other sources of information</title>
    <para>
    The first port of call for any Linux user should always be
    their own computer. On any terminal/console, do </para>
<screen>
&prompt; <userinput>man lilo</userinput>
&prompt; <userinput>man lilo.conf</userinput>  </screen>  
    </sect2>
      <sect2  id="chap1.part4"><title>Feedback and Corrections</title>
    <para>If you have any comments on this document, or questions about it, please feel free to mail me at <email>daniel.goldsmith@gmail.com</email>. All suggestions/criticism are welcome, particularly those
      pointing out mistakes or downright inaccuracies. Thank you.
    </para>
    <para>
      This document is not meant to be a comprehensive guide to
      solving hardware difficulties or Installation quirks of
      various systems - it is just a mini-guide to a difficulty
      experienced by the Author and a description of the solution
      deployed.
    </para>
</sect2>
<!-- Legal Sections -->

	<sect2 id="chap1.part5">
<title>Copyright and License</title>

	<!--
 The LDP recommends, but doesn't require, the GFDL 
-->

	<para>

     This document, 
<emphasis>LILO with Multiple Linux Distributions mini-HOWTO</emphasis>
,
     is copyrighted (c) 2004 by 
<emphasis>Daniel Goldsmith</emphasis>
.
     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation
     License, Version 1.1 or any later version published
     by the Free Software Foundation; with no Invariant Sections,
     with no Front-Cover Texts, and with no Back-Cover Texts.
     A copy of the license is available at
     
<ulink url="http://www.gnu.org/copyleft/fdl.html">
     http://www.gnu.org/copyleft/fdl.html</ulink>

    
</para>

	<para>

     Linux is a registered trademark of Linus Torvalds.
    
</para>
</sect2>

	<sect2 id="chap1.part6">
<title>Disclaimer</title>

	<para>

     No liability for the contents of this document can be accepted.
     Use the concepts, examples and information at your own risk.
     There may be errors and inaccuracies, that could be damaging to
     your system.  Proceed with caution, and although this is highly
     unlikely, the author(s) do not take any responsibility.
    
</para>

	<para>

     All copyrights are held by their by their respective owners,
     unless specifically noted otherwise.  Use of a term in this
     document should not be regarded as affecting the validity of any
     trademark or service mark.  Naming of particular products or
     brands should not be seen as endorsements.
    
</para>
</sect2>

</sect1>
    <sect1 id="chap2"><title>Getting Started</title>
      <sect2 id="chap2.part1"><title> Description of the
      Problem</title>
    <para>
      This document came into being because I had the proverbial
      itch which I needed to scratch. I had a perfectly good
      computer which has an outdated BIOS. My SCSI disks had given
      up the ghost, and I acquired a new 40GB IDE Maxtor Drive to
      replace them. Needless to say, the BIOS ignored the existence
      of this disk almost completely. I also had two distributions
      of Linux which I wanted to use - <ulink url="www.slackware.org">Slackware</ulink> 9.1 and <ulink url="www.debian.org">Debian</ulink> 3.1 "Sarge".
    </para>
    <para>
      How I got these to co-exist peacefully is the remit of the
      remainder of this document. If it helps one other person,
      I'll be happy.
    </para>
    <para>
      <abbrev>YMMV</abbrev> (Your Mileage May Vary) for the choice of distributions. There are plenty to
      choose from, and mostly people just want to use one. I wanted to use the unstable version of Debian, so I needed the
      stability offered by a distro like Slackware just in case.
    </para>
</sect2>
      <sect2 id="chap2.part2"><title>For the impatient</title>
    <para>
      Briefly, the procedure is as follows:
    </para>
    <orderedlist>
      <listitem><para>
        Install First Distribution
      </para></listitem>
      <listitem><para>
        Install Second Distribution
      </para></listitem>
      <listitem><para>
        Boot First Distribution
      </para></listitem>
      <listitem><para>
        Adjust <filename>/etc/lilo.conf</filename>
      </para></listitem>
      <listitem><para>
        ReInstall LILO
      </para></listitem>
      <listitem><para>
        Sacrifice Small Animal
      </para></listitem>
      <listitem><para>
        Rejoice!
      </para></listitem>
    </orderedlist>
</sect2>
 </sect1>
 <sect1 id="chap3"><title>Install First Distribution</title>
 <sect2 id="chap3.part1"><title> Prepare partitions</title>
    <para>
      The importance of this step cannot be understated. In
      accordance with the ideas related in the <ulink url="www.tldp.org/HOWTO/Large-Disk-HOWTO.html">Large
Disk HOWTO</ulink> I partitioned my disk with three 125mb primary  partitions, with the entirety of the rest of the disk in
variously sized logical partitions.
    </para>
<screen>
/dev/hda1   125mb       primary
/dev/hda2   125mb       primary
/dev/hda3   125mb       primary
/dev/hda4      -        extended
/dev/hda5   2096mb      logical
/dev/hda6   2096mb      logical
...
</screen>
    <para>
      This ensures that the three smallest partitions will always
      be visible to the BIOS, as they are all within the 1024
      cylinder limit. I would strongly suggest that these small
      partitions be utilised for <filename>/boot</filename> partitions for each
      of your chose Linux distros.
    </para>
    <para>
      The next stage is to decide what use to put the various
      partitions to. I decided to use the following partition
      scheme for my system, YMMV.
    </para>
<screen>
/dev/hda1   125mb       primary     Debian /boot
/dev/hda2   125mb       primary     Slack /boot
/dev/hda3   125mb       primary     - (for future use)
/dev/hda4      -        extended
/dev/hda5   2096mb      logical     Debian /
/dev/hda6   4192mb      logical     Debian /usr
/dev/hda7   2096mb      logical     Debian /home
/dev/hda8   10GB        logical     - for open use
/dev/hda9   256mb       logical     swap - to be shared
/dev/hda10  2096mb      logical     Slack /home
/dev/hda11  4192mb      logical     Slack /
/dev/hda12  10GB        logical     Open
</screen>
    <para>
      With this table to hand, proceed and install your chosen
      First Linux Distribution
    </para></sect2>

      <sect2 id="chap3.part2"><title>First Installation</title>
    <para>
      Install your chosen distribution. I would suggest keeping the
      installation small at first, particularly if you are
      confident on the command line. Don't worry at this stage with
      X, KDE and Gnome, just get the basic Linux architecture in
      place.
    </para>
    <para>
      The three most important steps, however, are to
    </para>
    <orderedlist>
      <listitem>
        <para>Make a boot floppy</para></listitem>
<listitem>        <para>Install LILO</para></listitem>
<listitem>        <para>Use a separate <filename>/boot</filename> partition</para></listitem>
    </orderedlist>
    <para>
      The boot floppy will be needed to get back here later. The
      LILO installation is needed to get everything working nicely
      later on. You should ensure that LILO installs to the MBR -
      Master Boot Record - of your Hard Disk. If your chosen
      installation doesn't offer LILO, but instead talks about grub
      or something similar, then I'm afraid I can't help you. This
      HOWTO is about LILO, not grub. Please access the <ulink url="www.gnu.org/software/grub">GNU project's grub
      homepage</ulink> and proceed from there.
    </para>
    <para>
      The separate <filename>/boot</filename> partition is a personal
      preference, needed for the 1024 cylinder limit on my machine,
      and for the sake of tidiness in any event. In my case also,
      the <filename>/boot</filename> partition needs to be one of those small
      partitions at the start of the disk structure. If you don't
      have the 1024-cylinder problem, then I would still recommend
      the use of a separate <filename>/boot</filename> partition. It doesn't
      need to be huge, it is just a safe place to keep the
      boot-ware and kernels.
    </para>
    <para>
      Other than that, just proceed as normal, making sure to keep
      to your pre-designed partition structure. Don't select the
      future home of your second distribution as any part of the
      Linux Filesystem hierarchy - that comes later! Once the
      installation has been completed, boot into it just once, to
      make sure that it works properly. Enter the command <command>df
      -h</command> to make certain you have your First Distro in the
      correct place. Mine gives:
    </para>
<screen>
&prompt; <userinput>df -h</userinput>
Filesystem            Size  Used Avail Use% Mounted on
/dev/hda11            2.8G  1.8G  1.1G  61% /
/dev/hda2              93M  3.3M   85M   4% /boot
/dev/hda10            1.9G   37M  1.9G   2% /home
&prompt;
</screen>
<para>Once you are happy, proceed to the next stage. </para>
</sect2>
</sect1>
<sect1 id="chap4"><title>Install the Second Distribution</title>
      <sect2 id="chap4.part1"><title>Second Installation</title>
    <para>
      Using whatever method applies in your case, start your second installation. You shouldn't need to do any hard-disk
      repartitioning at this stage, but keep your table to hand.
    </para>
    <para>
      Keep especial note of the filesystem your
      second distribution will be using, be it <filename>ext2</filename>,
      <filename>ext3</filename>, <filename>resierfs</filename> or some other system. The
      filesystem must be usable by your First Distribution. This
      shouldn't cause any problems with different flavors of Linux,
      but may be an issue for some users with special requirements.
      Make certain to note the filesystems on your table.
    </para></sect2>

      <sect2 id="chap4.part2"><title>Special Instructions for
      Second Distribution</title>

    <para>
      If the distribution offers it, choose LILO as your
      boot-loader. This makes things easier later on. If LILO isn't
      offered, then proceed, ensuring that the bootloader is
      installed on the MBR. Again, I would recommend that a
      minimalist distribution should be used, I just installed
      Debian's base-system components, nothing else. Other than
      those points, just proceed normally - have coffee, cake,
      whatever. Once it is complete, remove all installation media
      from your computer, and proceed to the next phase. I'd
      recommend completing the project before loading the Second
      Distro - the first boot is often used by distributions for a
      lot of configuration stuff, and that can wait.
    </para>
</sect2>
<sect2 id="chap4.part3"><title>Reboot First
      Distribution</title>
<para>
    Insert your First Distribution boot disk - in my case,
    Slackware, and get the system back up and running. All should
    work well if you've come this far. Time for the hard part. 
</para>
</sect2>
</sect1>
<sect1 id="chap5"><title>Getting it to Work</title>
      <sect2 id="chap5.part1"><title> Editing
      <filename>/etc/fstab</filename></title>
    <para>
      This is something that once terrified me, but I now know that
      it isn't too bad. Log in to your First Distro as
      root. Take a moment before all the editing and do
    </para>
<screen>
&rootprompt; <userinput>mkdir /mnt/<replaceable>other_root</replaceable></userinput>
&rootprompt; <userinput>mkdir /mnt/<replaceable>other_boot</replaceable></userinput>
&rootprompt; 
</screen>
<para>Then fire up an editor. I would recommend <command>pico</command>
    or <command>nano</command>, but feel free to use whatever is
    available and you are comfortable with. <command>vi</command> or
    <command>emacs</command> are the popular editors, but a little
    too dramatic for our purposes. </para>
    <para>
      In any event, load the file <filename>/etc/fstab</filename> into the
      editor and have a good look. The format of the file is
      somewhat similar to the output from <command>df</command></para>

<screen>
/dev/hda9        swap             swap        defaults         0   0
/dev/hda11       /                reiserfs    defaults         1   1
/dev/hda2        /boot            ext2        defaults         1   2
/dev/hda10       /home            reiserfs    defaults         1   2
/dev/cdrom       /mnt/cdrom       iso9660     noauto,owner,ro  0   0
/dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
/dev/sr0         /mnt/scd         auto        noauto,owner,ro  0   0
devpts           /dev/pts         devpts      gid=5,mode=620   0   0
proc             /proc            proc        defaults         0   0
</screen>
        
    <para>
      Time to get your all important table back out. Create some
      extra lines in <filename>/etc/fstab</filename>
    </para>
<screen>
/dev/hda1   /mnt/<replaceable>other_boot</replaceable> ext3    defaults        1 2
/dev/hda5   /mnt/<replaceable>other_root ext3</replaceable>    defaults        1 2
</screen>
    <para>
      Ensure that the entries under <emphasis>type</emphasis> reflect the
      decisions you made about filesystem when you were installing
      your second distribution - <filename>ext2</filename> or
      <filename>resiserfs</filename> or, gods forbid, <filename>minix</filename>.
    </para>
    <para>
      When done, exit your editor in the usual manner and issue the
      Command</para>
<screen>
&rootprompt; <userinput>mount /mnt/<replaceable>other_boot</replaceable></userinput>
&rootprompt; <userinput>mount /mnt/<replaceable>other_root</replaceable></userinput>
&rootprompt;
</screen>
<para>
    With any luck at all it'll work swimmingly and you will be able
    to poke around in the other distribution to your curiosities'
    pleasure. Please make sure not to break anything - look, don't
    <command>touch</command>! </para>
    <para>
      Back to business - what you are looking for is the contents
      of the <filename>/mnt/<replaceable>other_root</replaceable>/etc/lilo.conf</filename> file. I would
      suggest that you</para>
    
<screen>
&rootprompt; <userinput>cat /mnt/<replaceable>other_root</replaceable>/etc/lilo.conf | less</userinput>
</screen>
<para>        
    on a virtual console (or xterm) other than your main console.
    [Note: Normally, to use a different virtual console, press
    <keycombo><keycap>Alt</keycap><keycap>2</keycap></keycombo> and login as normal.] This allows you to inspect
    it separately to the <filename>/etc/lilo.conf</filename> of your first
    distribution. Find the point in the output where the Linux
    stanza is present, often it looks as follows </para>
<screen>
image=/boot/vmlinuz
  label=Linux
  root=/dev/hda5
</screen>
        <para>There may be some other information there, read <command>man
    lilo</command> or <command>man lilo.conf</command> to get the specific
    details. The information you need is (for example): </para>
<variablelist>
   <varlistentry>
      <term>image= /vmlinuz</term>
      <listitem>
         <para>This is the location of your Linux Kernel, the basis of any
        Linux system. Often this will be of the form
        <filename>/vmlinuz-2.4.20</filename> or similar. You will need to
        note this information in full.</para></listitem></varlistentry>
<varlistentry>
      <term>initrd= /initrd.img</term>
      <listitem>
         <para>This is your INITial RamDisk, if used. Not
        every distribution will use one, but many, such as Debian,
        make use of one. Again, it is likely to have the kernel
        details appended, as in <filename>/initrd.img-2.4.20</filename> or
        similar. Again, the full title is required.</para></listitem></varlistentry>
<varlistentry>
      <term>root= /dev/hdaN</term>
      <listitem>
         <para>This is the location of the /root partition for the Second
        Distribution. It shoudl be as per your table.</para></listitem></varlistentry>
<varlistentry>
      <term>label= Linux</term>
      <listitem>
         <para>This is the label given to your distribution on
        installation. You might be lucky and the Label might
        actually describe the type of Linux and version.</para></listitem></varlistentry></variablelist>

    <para>
      Keep this information close at hand before venturing to the
      next step.
    </para>
</sect2>
      <sect2 id="chap5.part2"><title> Editing
      <filename>/etc/lilo.conf</filename></title>
    <para>
      While logged in as root, do
    </para>
    <screen>
&rootprompt; <userinput>cp /etc/lilo.conf ~/oldlilo.conf</userinput>
&rootprompt; <userinput>pico /etc/lilo.conf</userinput>
&rootprompt;
</screen>
<para>
    The first step copies your lilo.conf to your root home
    directory. The second opens your favourite editor to do the
    actual work. <emphasis>Always back-up</emphasis>, even in this most
    rudimentary fashion, when making changes as root </para>
    <para>
      In your <filename>/etc/lilo.conf</filename> insert the relevant lines
      from the other distro's <filename>lilo.conf</filename> taking care to
      make adjustments to reflect the fact that their locations are
      now dependent on the First Distribution, not their own! Where
      the line used to read <filename>image=/vmlinuz</filename>, it should now
      read <filename>image=/mnt/other-boot/vmlinuz</filename>. Also adjust the
      label to something more intelligent. Your
      <filename>/etc/lilo.conf</filename> should be something like:
    </para>
<screen>
# Start LILO global section
boot = /dev/hda   # or your root partition
message = /boot/boot_message.txt
prompt
timeout = 1200    # delay, in tenth of a second (so you can interact)
#linear           # try "linear" in case of geometry problems.

image = /boot/vmlinuz   # your First Distro Kernel file
  root = /dev/hda11     # your First Distro root partition
  label = Slackware 9.1 # or whatever name you want for First Distro
  read-only             # mount root read-only - safer!

image = /mnt/other-boot/vmlinuz # adjusted kernel line from
                                # /mnt/other-boot/etc/lilo.conf
  root = /dev/hda5              # as per /mnt/other-boot/etc/lilo.conf
  label = Debian 'Sarge'        # whatever name for your Second Distro
  read-only                     # mount root read-only - safer!
</screen>
    <para>
      This action may seem unusual to some people, given that the
      mount-point <filename>/mnt/other-root</filename> is only useful within
      the First Distro - Slackware in my case. This, however, is
      the darkest of secrets about LILO - it only reads the file
      <filename>/etc/lilo.conf</filename> once, and once only. That time is
      when you run <command>/sbin/lilo</command>.
    </para>
    <para>
      The file <filename>/etc/lilo.conf</filename> is a set of instructions to
      LILO to aid it in creating a boot-structure for your disk. It
      has no other purpose in life. Once you have run
      <command>/sbin/lilo</command> you can delete the file for all that the
      system cares. You shouldn't, of course, because you may wnat
      to make adjustments later, like varying the vga codes or some
      other topic outside the scope of this document. But, you
      could!
    </para>
</sect2>
<sect2 id="chap5.part3"><title>ReInstall LILO</title>
    <para>
      Nearly there now. Save and exit in the usual fashion. Then
      take a deep breath, then issue
    </para>
<screen>
&rootprompt; <userinput>/sbin/lilo</userinput>
Wrote Slackware 9.1*
Wrote Debian 'Sarge'
&rootprompt;
</screen>
    <para>
      The asterisk * is just telling you that Slackware is
      the default option. That should all have worked nicely.
    </para>
</sect2>
</sect1>
<sect1 id="chap6"><title> Getting it going</title>
<sect2 id="chap6.part1"><title>Sacrifice a small animal</title>
    <para>
      Whatever. Remove all floppies, CD-ROMs and so forth. Shut
      down your First Distribution in the proper manner. Light some
      candles, pray, do whatever calms those nerves and calls upon
      your own <filename>$DEITY</filename> for assistance.
    </para>
</sect2>
<sect2 id="chap6.part2"><title>Rejoice!</title>
<para>    Turn on your computer. Rejoice as the LILO menu comes up on screen, offerring you the choice of booting into either of your  favoured distributions. You may now look forward to a happy and restful time using your computer. </para></sect2>
<sect2 id="chap6.part3"><title>Final Notes</title>
    <para>
      Put your boot disk for your distributions someplace safe. You
      never know when you may need them again.
    </para>
    <para>
      No animals were harmed in the making of this HOWTO 
    </para>
</sect2>
</sect1>
<sect1 id="chap7"><title>Questions and Answers</title>
<qandaset>
<qandaentry>
<question>
<para>Help! My Second Distro uses grub!! Why won't you help me?</para></question>
<answer><para>
      Okay, relax. Have a banana. Now then, lets look at this
      logically.
    </para>
    <para>
      grub is a completely different kettle of fish to LILO, not a
      kettle at all in fact, nor containing fish. The solution, as
      I used it, is as follows:
    </para>
    <para>
      Follow the instructions above until the point where you have
      mounted the <filename>/mnt/<replaceable>other_root</replaceable></filename> and
      <filename>/mnt/<replaceable>other_boot</replaceable></filename> Go into the <filename>/mnt/<replaceable>other_root</replaceable></filename>
      folder and look around. Do the following:
    </para>
<screen>
&rootprompt; <userinput>ls -la /mnt/<replaceable>other_boot</replaceable></userinput>
vmlinuz vmlinuz-2.4.23-Debian   
&rootprompt; ls -la /mnt/<replaceable>other_boot</replaceable>/boot/grub/
stage_2
&rootprompt; cat /mnt/<replaceable>other_boot</replaceable>/boot/grub/menu.lst | less
</screen>
<para>
    and write down all the information you are given. Everything.
    Note the contents of the <filename>menu.lst</filename> in particular. This
    file contains similar information to the information in
    <filename>lilo.conf</filename>. For example, a Linux Stanza might appear as
    follows: </para>
<screen>
title       Debian GNU/Linux, kernel 2.4.26-1-586tsc 
root        (hd0,0)
kernel      /vmlinuz-2.4.26-1-586tsc root=/dev/hda7 ro 
initrd      /initrd.img-2.4.26-1-586tsc
boot
</screen>
<para>    By reading it intelligently, with the assistance of the <ulink url="http://www.gnu.org/software/grub">grub homepages</ulink>
    information and documentation, you should be able to acquire
    the information you are looking for - image file-name,
    existence of ramdisk, etc. Don't be daunted by the <filename>root
    (hd0,0)</filename> notation, it is just a different way of doing
    things. If you have read the grub documentation, you will know
    that, for many users, the <filename>root (hd0,0)</filename> means that the
    kernel images and so forth are to be found on
    <filename>/dev/hda1</filename> and that other partitions are described
    acordingly. </para>
    <para>
      In <filename>lilo.conf</filename> the above <filename>menu.lst</filename> would berepresented as follows:
    </para>
<screen>
image = [*]/vmlinuz-2.4.26-1-586tsc  # adjust the [*] depending 
                                     # on the mount point of 
                                     # that partition
  root = /dev/hda7                   # Straight conversion
  label =Debian GNU/Linux, kernel 2.4.26-1-586tsc
  read-only                          # that is the 'ro' 
                                     # instruction in the root= 
                                     # line from menu.lst
</screen>
    <para>
      Take all of your information and put it into LILO notation.
      It isn't very hard, really. The example I have used is a good
      starting place. Do <command>/sbin/lilo</command> and see what happens -
      you can only get it wrong, and you <emphasis>do</emphasis> have
      the boot-disks, don't you?
    </para></answer></qandaentry>
<qandaentry>
<question>
    <para>Why don't you just use grub in the first place?</para>
</question>
<answer><para>
      Without wanting to get into a flame-war, the reasons are, in
      no particular order
    </para><para>
    <itemizedlist>
      <listitem><para>
        grub is not finished</para>
      </listitem>
      <listitem><para>
        grub is broken</para>
      </listitem>
      <listitem><para>
        the grub dev-team have all wandered off to make a new grub2
        before actually fixing grub-legacy</para>
      </listitem>
      <listitem><para>
        grub2 does not work at all - yet</para>
      </listitem>
    </itemizedlist></para>
    <para>
      None of this is a direct criticism of the grub dev-team, they
      do stuff I could not. I just do not agree with their
      methodology in this case. I tried to use grub, it did not
      work. Sorry.
    </para>
    <para>
      I went and found out how to make LILO do what I want, when I
      want. You can too, if you want to. Don't fear the command
      line. Respect the man-pages.
    </para>
</answer></qandaentry>
<qandaentry>
    <question><para>What if I do not use separate /boot partitions?</para>
    </question>
    <answer><para>
      Couldn't be simpler - in fact, it is less complicated that
      the procedure I have outlined above. Essentially, the changes
      are as follows:
    </para>
    <variablelist>
      <varlistentry><term>General</term><listitem><para>
        Just use less partitions. You could just use two, in fact,
        if your BIOS permits and you really want huge contigious
        partitions. Linux is about freedom, after all.
      </para>
      <para>
        Let's assume two monolithic partitions here -
        <filename>/dev/hda1</filename>will be the home of our first distro,
        <filename>/dev/hda2</filename> will be the second.
      </para></listitem></varlistentry>
<varlistentry><term>First Installation
      </term>
      <listitem><para>
        Proceed as outlined - make a boot floppy, install LILO,
        don't bother with a separate <filename>/boot</filename> partition.
        Don't use <filename>/dev/hda2</filename> for anything.
      </para></listitem></varlistentry>
<varlistentry><term>Second Installation
      </term>
      <listitem><para>
        Again, just do it. You should, of course, note the
        filesystem type of your huge partition as before, and not
        use <filename>/dev/hda1</filename> as part of your installation.
</para></listitem></varlistentry>
<varlistentry><term>Getting it to Work
      </term>
      <listitem><para>Just make one drawer instead of two - <filename>/mnt/other</filename></para>
      <para>
        Proceed as before, just changing the kernel line in
        <filename>/etc/lilo.conf</filename> to <filename>image =
        /mnt/other/boot/vmlinuz</filename>
      </para></listitem></varlistentry>
</variablelist>
      <para>
      That should do it.
    </para>
</answer></qandaentry>
<qandaentry>
    <question><para>Wait a second - My Second Distribution Installer recognises the First and offers to make it bootable. What are you playing at?</para></question>
<answer><para>
      Nothing. This document came about because that's the message
      I got when installing Debian 'Sarge'. I opted for it, wrote
      the new bootloader, rebooted and found I couldn't get into
      either of my dstributions. grub and the BIOS failed to have
      their little conversation and I had a hulking great piece of
      electricity-consuming junk. I didn't have the Slackware boot
      disk, I had to start all over again. This document is to try
      to help others to avoid the difficulties I had getting it all
      to work again. If the offered Boot Loader works for you then
      congratulations, you have chosen a wonderful computer and
      Linux Distribution. I hope you both are very happy. This
      document is for those who don't have that luxury.
    </para></answer></qandaentry></qandaset>
</sect1>
  </article>



