229 lines
11 KiB
Plaintext
229 lines
11 KiB
Plaintext
LILO - Frequently Asked Questions Version 1 16-AUG-1993
|
|
===========================================================================
|
|
|
|
This FAQ consists of two parts: the first part contains a few remarks about
|
|
common sources of confusion. The second part contains questions and
|
|
answers.
|
|
|
|
Please send comments about this FAQ to almesber@nessie.cs.id.ethz.ch or
|
|
almesber@bernina.ethz.ch
|
|
|
|
|
|
General remarks
|
|
---------------
|
|
|
|
Don't try installing LILO by typing commands like
|
|
/etc/lilo/lilo -i /etc/lilo/boot.b /vmlinux
|
|
First, this doesn't work with version 0.10 and above. Second, you will
|
|
have to refresh the installation whenever the kernel or any part of LILO
|
|
is changed. It is therefore advisable to store the configuration data in
|
|
a file. (Typically /etc/lilo/config)
|
|
|
|
/etc/lilo/install vs. /etc/lilo/config
|
|
Versions before 0.7 did expect all settings, kernel names, etc. on the
|
|
command line. Because such command lines usually became complicated and
|
|
hard to remember, everything was stored in /etc/lilo/install. This script
|
|
was run whenever the installation had to be refreshed. Version 0.7
|
|
introduced a more elegant configuration method: the configuration file
|
|
/etc/lilo/config. When using /etc/lilo/config, /etc/lilo/install only
|
|
contained the invocation of /etc/lilo/lilo with the necessary option.
|
|
That "new" /etc/lilo/install also appeared under the name install.new.
|
|
Starting with LILO 0.10, only the new-style configuration method is
|
|
supported. Because of that, no additional command-line options are needed
|
|
anymore and /etc/lilo/install can even be replaced by a link to
|
|
/etc/lilo/lilo.
|
|
|
|
/etc/lilo/boot.NNNN installed by your favourite distribution
|
|
Some Linux distributions install some boot.NNNN files in /etc/lilo before
|
|
LILO is run. This is dangerous, because a) you may accidentially use
|
|
those files and b) it prevents LILO from generating the correct boot.NNNN
|
|
files when installing itself on your system. (boot.NNNN are backup copies
|
|
of boot sectors.) Just delete any alien boot.NNNN files from your system
|
|
before using LILO.
|
|
|
|
QuickInst
|
|
... is a shell script that helps you installing and configuring LILO. It
|
|
doesn't use every single feature of LILO and does not support some exotic
|
|
configurations, but it's usually a good way to get started. You can also
|
|
use it to create a sample /etc/lilo/config and modify that later.
|
|
|
|
|
|
Q&A
|
|
---
|
|
|
|
Q: What is LILO ?
|
|
A: LILO is a generic boot loader for Linux. "generic" means that it is able
|
|
to boot kernels from all Linux file systems. It can also act as a boot
|
|
manager for non-Linux operating systems.
|
|
|
|
Q: Which version of LILO should I use ?
|
|
A: Versions before 0.7 are obsolete and should be avoided. Versions since
|
|
0.8 come with a quick installation script that simplifies "standard"
|
|
installations. The current version is 0.11.
|
|
|
|
Q: How do I get LILO ?
|
|
A: LILO can be found in
|
|
tsx-11.mit.edu:/pub/linux/packages/lilo
|
|
sunsite.unc.edu:/pub/Linux/system/Linux-boot/lilo
|
|
|
|
Q: What about documentation ?
|
|
A: LILO documentation exists in the following formats:
|
|
- LaTeX source, contained in lilo.N.tar.z
|
|
- plain-ASCII README, contained in lilo.N.tar.z
|
|
- ready to print PostScript, lilo.u.N.ps.z and lilo.t.N.ps.z
|
|
- ready to print HP DeskJet and HP LaserJet data, lilo.u.N.dj.z and
|
|
lilo.t.N.dj.z
|
|
N is the respective version number. The lilo.u* files are the user's
|
|
manual, lilo.t* are the technical overview.
|
|
Note: the README does not contain a few introductory sections of the
|
|
LaTeX manual.
|
|
|
|
Q: I don't want to read that many pages only to use a boot loader.
|
|
A: Then you should try to use QuickInst. If your system configuration is
|
|
too complex for QuickInst or if you run into unexpected problems and
|
|
this FAQ doesn't help, I'm afraid you can't avoid reading the
|
|
documentation.
|
|
|
|
Q: I feel uncertain about that booting stuff. What should I read ?
|
|
A: The first section of the LaTeX documentation of LILO contains an
|
|
introduction of how PC disks are partitioned and how operating systems
|
|
are booted. The following sections describe boot concepts and show them
|
|
on a few examples. Those sections are not included in the plain-ASCII
|
|
README, because they contain complex drawings.
|
|
|
|
Q: Can I use LILO as a boot manager ?
|
|
A: Yes. It is known to work with PC/MS-DOS and OS/2. It probably also works
|
|
with many other operating systems.
|
|
|
|
Q: How do I boot other operating systems from LILO ?
|
|
A: You simply add sections to /etc/lilo/config, describing the location of
|
|
the operating system, its name and the partition table, e.g.
|
|
|
|
other = /dev/hda1 # partition on which the operating system is located
|
|
label = dos # name by which you want it to be identified
|
|
table = /dev/hda # partition table of that disk
|
|
|
|
Then re-run /etc/lilo/install
|
|
|
|
Q: How do I boot other operating systems from the second drive ?
|
|
A: You have to add the line
|
|
loader = /etc/lilo/any_d.b (DOS, etc.)
|
|
or
|
|
loader = /etc/lilo/os2_d.b (OS/2)
|
|
to the corresponding OTHER = ... section of /etc/lilo/config
|
|
|
|
Q: I still can't boot DOS from the second drive.
|
|
A: Disable the first drive and verify that you can boot from the second
|
|
drive if it is the first drive. If you can't, try using SYS to install
|
|
the system files. If all else fails, use FDISK /MBR and/or FORMAT /S .
|
|
|
|
Q: How do I set the default kernel/operating system ?
|
|
A: The first kernel or operating system defined in /etc/lilo/config is
|
|
booted by default. Don't forget to re-run /etc/lilo/install after
|
|
reordering the sections.
|
|
|
|
Q: LILO doesn't boot my SCO/ISC/etc. What can I do ?
|
|
A: Verify that your configuration is correct. Re-run /etc/lilo/install. If
|
|
all else fails, try to use a different boot manager, e.g. bootactv.
|
|
|
|
Q: Where should I install LILO's boot sector ?
|
|
A: If you have a Linux file system on a primary partition of your first
|
|
hard disk, you should install the LILO boot sector there and make that
|
|
partition active (or use some boot manager). Otherwise, you can install
|
|
the LILO boot sector as your MBR (e.g. on /dev/hda) or possibly on an
|
|
extended partition (see the LaTeX documentation for details).
|
|
|
|
Q: How do I uninstall LILO ?
|
|
A: If you've installed LILO as your MBR (/dev/hda or /dev/sda) and if your
|
|
previous MBR was the "standard" DOS MBR, you can remove LILO from the
|
|
MBR by simply booting MS-DOS 5.0 and running the command
|
|
FDISK /MBR
|
|
(If you're running DR-DOS 6, the FDISK menu offers a similar option.)
|
|
Otherwise, if you haven't installed LILO as your MBR, you can simply
|
|
disable it by making a different partition active. The active partition
|
|
can be changed with MS-DOS' FDISK, Linux fdisk, LILO's activate, etc.
|
|
Finally, if you've installed LILO as your MBR, but you're using a
|
|
special MBR, or if your version of DOS does no support replacing the
|
|
MBR, you should look for a file /etc/lilo/boot.0300 (IDE) or
|
|
/etc/lilo/boot.0800 (SCSI). See the next item for a description of how
|
|
to use that file.
|
|
|
|
Q: I can't access my PC/MS-DOS partition after installing LILO. Am I lost ?
|
|
A: Not necessarily. You've probably only overwritten the boot sector of
|
|
your MS-DOS partition. That boot sector contains vital information about
|
|
the file system structure. (Note: unlike MS-DOS, Linux file systems do
|
|
not use the first sector and LILO can therefore store its boot sector
|
|
there.) Whenever LILO overwrites a boot sector for the first time, it
|
|
makes a backup copy in /etc/lilo, named boot.NNNN. The number
|
|
corresponds to the number of the respective device, e.g. hda is 0300,
|
|
hda1 is 0301, sda is 0800, sda1 is 0801, etc. You can restore the old
|
|
boot sector with a command like
|
|
dd if=/etc/lilo/boot.NNNN of=/dev/XXXX bs=446 count=1
|
|
E.g. dd if=/etc/lilo/boot.0302 of=/dev/hda2 bs=446 count=1
|
|
|
|
WARNING: check the date of the boot.NNNN file. Sometimes, distributions
|
|
that contain LILO come with boot.NNNN files from the system on
|
|
which the distribution was created. Those files should be
|
|
deleted before using LILO.
|
|
|
|
Q: Why does LILO stop with "Error 0x04" when booting from a floppy ?
|
|
A: Your BIOS may suffer from a bug that generates errors when trying to
|
|
read more than one sector with a single call. LILO 0.11 is able to
|
|
correct that problem. When using an older version of LILO, removing the
|
|
option COMPACT from /etc/lilo/config works around it.
|
|
|
|
Q: LILO used to work, but since I've updated LILO/compiled a new kernel/
|
|
installed a new version of SLS, LILO only prints "LI".
|
|
A: Be sure to re-run /etc/lilo/install whenever the kernel or any part of
|
|
LILO is changed. Running /etc/lilo/install too often doesn't hurt, but
|
|
forgetting to run it does. By the way, the kernel Makefile has two
|
|
targets that automatically run /etc/lilo/install after building a new
|
|
kernel: "lilo" builds /vmlinux (not compressed) and "zlilo" builds
|
|
/vmlinuz (compressed). If you're not installing LILO as the MBR, you
|
|
should also verify that the partition on which LILO puts its boot sector
|
|
is marked active and that the MBR contains a valid partition loader (and
|
|
not the remains of an earlier installation of LILO).
|
|
|
|
Q: LILO only prints "LI" on my SCSI system.
|
|
A: In prehistorical times, SCSI users had to describe the geometry of their
|
|
disks in a file called /etc/lilo/disktab. Recent kernels are able to
|
|
provide that information for most SCSI adapters. Hence,
|
|
/etc/lilo/disktab is not necessary and may only introduce errors. If you
|
|
have a disktab with non-comment entries, try running /etc/lilo/install
|
|
with the option -f /dev/null If LILO needs a disktab, it will issue an
|
|
error message.
|
|
|
|
Q: My kernel boots but dies with "VFS: Unable to mount root".
|
|
A: Your kernel is not properly configured. You can either run rdev on it to
|
|
set the root device or put the corresponding ROOT=/dev/xxxx entry into
|
|
/etc/lilo/config and re-run /etc/lilo/install
|
|
|
|
Q: What does "Device 0xNNNN: Invalid partition table, Nth entry" mean ?
|
|
A: Each partition entry contains linear (Nth sector on the disk) and 3D
|
|
(sector/head/cylinder) addresses. Both types of addresses must
|
|
correspond. In your partition table, they don't. This is probably caused
|
|
by a buggy fdisk using non-cylinder-aligned addresses and some other
|
|
program later re-aligning one part of the address. LILO can try to fix
|
|
the partition table. The exact procedure depends on the version of LILO.
|
|
Please check the documentation. The cleanest (but also most painful)
|
|
solution to the problem is to re-partition the disk with a version of
|
|
fdisk that obeys alignment rules (e.g. any current version of Linux
|
|
fdisk).
|
|
|
|
Q: Do LILO and OS/2 Boot Manager get along well ?
|
|
A: Yes, but some people have reported they had to (re)install LILO after
|
|
installing OS/2. A different solution is to avoid OS/2 BM and boot OS/2
|
|
directly by LILO.
|
|
--
|
|
_________________________________________________________________________
|
|
/ Werner Almesberger, ETH Zuerich, CH almesber@nessie.cs.id.ethz.ch /
|
|
/_IFW_A44_______________________________________almesber@bernina.ethz.ch_/
|
|
|
|
--
|
|
Send submissions for comp.os.linux.announce to: linux-announce@tc.cornell.edu
|
|
|
|
|
|
|
|
|
|
|