Projects / LILO / Comments

Comments for LILO

19 Dec 2002 19:21 johncoffman

Re: Lilo interferes with EZ-BIOS and then nothing loads correctly
Two diagnostic diskettes are available with the LILO source distribution, accessible from these "freshmeat.net" pages. Diskette #1 specifically checks for the EDD bios extensions. Diskette #2 produces a very detailed examination of your bios, call by call.

If you want specific help, correspond directly with me.

--John Coffman

19 Dec 2002 19:14 oudent

Lilo interferes with EZ-BIOS and then nothing loads correctly
First of all, I don't think I need EZ-BIOS, but I don't know how to check. I have P-4 so the Motherboard is new, but when I installed my Western Digital Hard drive, it installed the program. I have messed up my mbr once or twice by trying to install LILO or GRUB that came with Redhat 7.2. But I'm tired of using a bootdisk. How do I get around EZ-BIOS, without risking all my info...I have close to 60 gigs of info that I can't backup because I don't have that much patience.

19 Dec 2002 18:54 johncoffman

Re: lilo.conf
This is not the proper forum to diagnose a specific installation of LILO.

Please correspond directly with me; my e-mail address can be derived from the project listing.

--John Coffman

19 Dec 2002 14:07 tobiasm

Re: lilo.conf

> But did you re-run "/sbin/lilo" to have
> the changes take effect?
>
> The boot loader does NOT read the
> configuration file during booting. Only
> the boot INSTALLER (/sbin/lilo) reads
> the configuration file when it creates
> the sector map file (/boot/map).


I did run lilo. I just tried it a few minutes ago, but there were no changes, again :(

Perhaps this could be useful:

# lilo.conf
#----------------
# Global options:
boot=/dev/hde2
prompt
timeout=150
lba32
compact
vga=normal
root=/dev/hde2
install=/boot/boot.b
map=/boot/map
read-only
menu-title=" System: "
#
# bootable kernel images:
image=/boot/bzImage
label = Linux-2.4.18
image=/vmlinuz
label = Linux
#
# other operating systems:
other=/dev/hde1
label = Windows98


And the output of lilo -v

LILO version 22.2, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2001 John Coffman
Released 05-Feb-2002 and compiled at 20:57:26 on Apr 13 2002.
MAX_IMAGES = 27

Warning: COMPACT may conflict with LBA32 on some systems
Reading boot sector from /dev/hde2
Merging with /boot/boot.b
Boot image: /boot/bzImage
Added Linux-2.4.18 *

Boot image: /vmlinuz -> vmlinuz-2.4.18
Added Linux

Boot other: /dev/hde1, on /dev/hde, loader /boot/chain.b
Added Windows98

/boot/boot.2102 exists - no backup copy made.
Writing boot sector.


And my boot menu still shows

-Linux
-Windows (hde1)
-Windows (hde5)
-Windows (hde6)
-Windows (hde7)

(the last three are not bootable I suppose. This is the config made by the Debian installer - I just had the options to add ALL devices to the menu or only Linux)

19 Dec 2002 08:22 johncoffman

Re: lilo.conf

> What can cause LiLo to ignore my changes
> in lilo.conf?
%
> P.S.: I did NOT forget to save my
> changes..

But did you re-run "/sbin/lilo" to have the changes take effect?

The boot loader does NOT read the configuration file during booting. Only the boot INSTALLER (/sbin/lilo) reads the configuration file when it creates the sector map file (/boot/map).

19 Dec 2002 08:12 tobiasm

lilo.conf
Hi,

I'm new to linux and have a question (perhaps a silly one):

What can cause LiLo to ignore my changes in lilo.conf?

I'm using Debian Woody 3.0 (don't think that this is important, but who knows..).

Thanks for any answer,

Tobias


P.S.: I did NOT forget to save my changes..

[-- Sorry for any mistakes --]

29 Aug 2002 15:36 johncoffman

Re: Hiding logical partitions
% What I wanted was to hide other FAT
> partitions from my Win98 installation. I
> don't bother on the linux side to hide
> or not to hide partitions nor on the
> Win2k side, for I have the necessary
> means to make partitions available to
> the system/user or not, but Win98 will
> always detect any FAT partition on my HD
> so I have to hide the other FAT
> partitions.

Primary partitions may be hidden; secondary partitions may not.

This is just a detail of the LILO chain loader implementation. Secondary partition information is spread across the disk, unlike the primary parition information which is all in one sector, the Master Boot Record for the disk.

Partition change-rules and partitition activation / deactivation (primary partitions only), use the same mechanism within the chain loader, an implementation efficiency. Handling secondary partitions is a good bit more complicated, and probably won't be implemented in the forseeable future. Sorry.


> Could you explain this in more detail ?
> How do I make a second linux
> installation to implement the change
> rules and how do I get two linux systems
> to successively boot then ?

Read "README" in the LILO source for a more detailed explanation. But here is booting in a nutshell:

Booting a disk == load the Master Boot Record at 0000:7c00; jump to that address.

Booting a partition (chain.b) == load first sector of the disk at 0000:7c00; jump to that address.

Booting linux kernel == load kernel header; load any initial ramdisk; load the rest of the kernel; start the real-mode kernel setup (part of the header).

LILO booting is accomplished by loading the "first-stage loader" (== 1 sector), and jumping to it. Hence it may be installed on the MBR, or on a partition. If LILO is installed on a partition, the the MBR must contain a loader which will start the primary partition marked "active" (see "lilo -M" and "lilo -A" [version 22]).

If the MBR contains a lilo installation which boots only "other=" partitions, and the configuration file for this installation is "master.conf", and one of the partitions booted is a Linux partition, say /dev/hda5, which contains a LILO installation installed from "lilo.conf" which boots only 1 kernel, then what you wish can be accomplished in "master.conf". The two installations are made with:

lilo -C /etc/master.conf
lilo -C /etc/lilo.conf # default

Essentials of "master.conf"

boot=/dev/hda
...
other=/dev/hda5
label=Linux
other=/dev/hda1
label=Win2k
...

Essentials of "lilo.conf"

boot=/dev/hda5
...
image=/boot/vmlinuz
initrd=/boot/initrd
label=linux

Thus, the "master" installation serves as a boot manager, or selector of OS, and only "lilo.conf" specifies a kernel to boot. The latter installation is "chain"-ed to by the master installation. The "master" installation can implement any change rules you wish, in the individual "other=" sections. There are no "image=" sections in "master.conf".

--John

29 Aug 2002 03:39 buchhetn

Re: Hiding logical partitions

>
> % Win98 should run as an isolated
> system
> % with no
> % connections to the outer world, so I
> % wanted LILO to
> % hide my user data partitions.
>
> Hiding a partition is not the
> recommended approach. Unavailable
> partitions should not be 'mount'-ed
> automatically -- i.e., no entry in
> /etc/fstab.

What I wanted was to hide other FAT partitions from my Win98 installation. I don't bother on the linux side to hide or not to hide partitions nor on the Win2k side, for I have the necessary means to make partitions available to the system/user or not, but Win98 will always detect any FAT partition on my HD so I have to hide the other FAT partitions.

> % 3.) Is there a way to automatically
> set
> % back the
> % partition IDs when LILO is started
> (I
> % thought this
> % would be the case, but it seemingly
> % wasn't)
>
> Not directly.
>
> A kludge could be used, in which a
> second lilo installation is chained to,
> implementing the change rules, and the
> second installation boots the desired
> kernel.

Could you explain this in more detail ? How do I make a second linux installation to implement the change rules and how do I get two linux systems to successively boot then ?

Thanks a lot

Thorsten

28 Aug 2002 18:38 johncoffman

Re: Hiding logical partitions

> Win98 should run as an isolated system
> with no
> connections to the outer world, so I
> wanted LILO to
> hide my user data partitions.

Hiding a partition is not the recommended approach. Unavailable partitions should not be 'mount'-ed automatically -- i.e., no entry in /etc/fstab.

> Unfortunately I couldn't
> find any way to do this, as it seems
> that LILO only
> supports primary partition hiding.

Don't mount the partition.


> So here, in short, my issues :
>
> 1.) Why isn't it possible to change IDs
> of
> logical partitions by the change rules
> (or is it possible
> and I am wrong ) ?

The partition information for primary partitions is in the boot sector (known location). The partition information for secondary partitions is spread across the disk. Changing the partition types of secondary partitions has just not been implemented, as there has been no pressing need.

> 2.) Why isn't it possible to add change
> rules for the
> linux sections in lilo.conf ?

Change rules are implemented in the chain loader (chain.b), a separate copy of which contains the list of changes. Linux kernels are booted from the second-stage loader (boot.b), of which there is only one copy. Hence, no change rules.

> 3.) Is there a way to automatically set
> back the
> partition IDs when LILO is started (I
> thought this
> would be the case, but it seemingly
> wasn't)

Not directly.

A kludge could be used, in which a second lilo installation is chained to, implementing the change rules, and the second installation boots the desired kernel.

> 4.) Is there a solution or a workaround
> for my
> particular problem

Yes. Don't use change rules to hide the Win98 partition. Simply, never mount the partition.

Change rules are primarily a DOS holdover: old versions of DOS are rather rigid in the way drive letters are assigned to partitions. This is very annoying on a system when another parition is added, so changes rules allow some control over the drive letter assignment.

28 Aug 2002 10:53 buchhetn

Hiding logical partitions
Hi all,

I am running Win98 Win2k and linux on one HD.

I would like to share user data between Linux and
Win2k which are located on logical FAT partitions on
an extended (Windows generated) partition.

Win98 should run as an isolated system with no
connections to the outer world, so I wanted LILO to
hide my user data partitions. Unfortunately I couldn't
find any way to do this, as it seems that LILO only
supports primary partition hiding.

As an alternative I tried to hide my whole extended
partition by simply changing the ID of the extended
partitions to something else (in my case hidden
FAT32 as there is no hidden extended windows
partition) so the logical drives became hidden too.
This is not a nice solution but it would have worked
out for my special case.

Unfortunately the next time I booted linux, the system
got stuck when trying to mount one of the logical
drives which still weren't detectable for the ID of the
extended partition still remained changed to hidden
FAT32.

So I tried to add another change rule to my lilo.conf
to
change the ID back when booting linux but this
wasn't possible, as change rules are only allowed for
other systems than linux. How come ?
Adding the change rule for my Win2k system did
work out, but I really don't like to reboot Win2k after
Win98 to set back the correct partition ID before
being able to boot LINUX again.

So here, in short, my issues :

1.) Why isn't it possible to change IDs of
logical partitions by the change rules (or is it possible
and I am wrong ) ?
2.) Why isn't it possible to add change rules for the
linux sections in lilo.conf ?
3.) Is there a way to automatically set back the
partition IDs when LILO is started (I thought this
would be the case, but it seemingly wasn't)
4.) Is there a solution or a workaround for my
particular problem

Thanks in advance

Thorsten

Screenshot

Project Spotlight

ReciJournal

An open, cross-platform journaling program.

Screenshot

Project Spotlight

Veusz

A scientific plotting package.