Bug 10993

Summary: LILO picks incorrect drives/partitions
Product: [Retired] Red Hat Linux Reporter: Remko Molier <rmolier>
Component: liloAssignee: Doug Ledford <dledford>
Status: CLOSED NOTABUG QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 6.2   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2001-04-18 21:32:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Remko Molier 2000-04-23 02:16:43 UTC
My machine has two Linux installations on it, "linux" and "firewall".
(The latter is my prototype Linux firewall.)  My 2nd drive is partitioned
like so:

/dev/hdb1     /boot for firewall
/dev/hdb2     /boot for linux
/dev/hdb3     / for firewall
/dev/hdb4     / for linux

And my lilo.conf entries for the two look like:

image=/boot/vmlinuz-2.2.14-6.1.1
        label=linux
        read-only
        root=/dev/hdb4

image=/boot/vmlinuz-2.2.14-5.0
        label=firewall
        read-only
        root=/dev/hdb3

The problem is, lilo apparently looks for firewall's kernel in the current
directory tree; it complains that it can't find /boot/vmlinuz-2.2.14-5.0,
but somehow it's able to find /boot/vmlinuz-2.2.14-6.1.1 (even though I
haven't upgraded the firewall's kernel yet).  lilo won't run until this is
resolved; I had to hack out the description for firewall.

Comment 1 Doug Ledford 2001-04-19 23:06:04 UTC
Lilo is acting exactly as expected.  It does not attempt to read the fstab on
the / partition in order to determine what partition /boot is, it merely
determines what device /boot is on by checking the existing files.  It's
actually easier to set a system like yours up to have a single /boot partition
that is shared between both / filesystems with all needed kernels in the one
/boot partition.  If you don't set it up that way, then you need to mount the
additional /boot filesystem as something like /boot2 and change the firewall
stanza to point to /boot2/vmlinuz.... and then in the lilo.conf file in the
firewall's root filesystem you would need to mount the non-firewall /boot as
/boot2 also, and make the non-firewall stanza point to /boot2/vmlinuz... in
order to be able to run lilo from either of the selected root filesystems.  If
you use a common /boot filesystem, then you can at least use identical lilo.conf
files between the two booting copies of the OS.