README for lilo in Debian
-------------------------


** Distribution upgrade **

If you are upgrading or dist-upgrading, it is recommended to run 
/sbin/lilo after that. Usually this work will be done by the hook
scripts for kernel and initramfs (see /etc/kernel, /etc/initramfs).


** Other installed bootloader **

Please pay attention to the hook scripts for kernel and initramfs, if  you
have also installed another bootloader. With every update of kernel or
initramfs these hook scripts will be executed and then Lilo rewrite the MBR.
They don't check whether another bootloader is activated. 

Grub and Grub2 have its own hook scripts which will be executed, too, but
don't rewrite the MBR every time. If you have installed and configured 
other bootloader, then be aware, that they work differently and have its
own hook scripts, which could give you accidental situations. Please read
the package information about other installed bootloader for correct
configuration.


** XFS defragmenting /boot **

On the XFS filesystem (or others too?), there could growing problems with
kernel files (vmlinuz*) in /boot directory while someone defragmenting
partitions. To protect vmlinuz* files from moving to other addresses on the
disk, which would lead to an unbootable system, it is recommended to use
'chattr' if the /boot directory have a XFS filesystem.

Lilo 24.1 comes with some hook scripts for this case. Go into directory
/usr/lib/lilo/hook and start the Makefile as root with 'make install'. Then
these scripts will ensure that lilo survives when xfs defragments files.


** Large initrd files **

Usually LILO loads the initrd file into the first 15MB of memory to
avoid a BIOS limitation with older systems (earlier than 2001 and
few systems until 2004).

With newer kernels the combination of kernel and initrd may not fit
into the first 15MB of memory. LILO compute the needed size of memory
and will automatically use the memory above 15MB, too, if there is
enough physical memory. Then lilo give you information about this
while running lilo.

If this machine has a recent BIOS without a 15MB limitation and you
want to use memory above 15MB for all kernels, set the 'large-memory'
option. You will need to re-run the 'lilo' command to make this 
option take effect.


** Solve the 15MB problem **

If the machine has an older BIOS which don't can use any memory above
15MB you should use the newer option 'small-memory' in /etc/lilo.conf 
to instruct LILO to use only the memory below the 15MB line. You may 
need to reduce the size of the initrd *before* rebooting.

If you are using initramfs-tools, you should replace MODULES=most with
MODULES=dep in your configuration and regenerate your initrd file:

  sed -i -e s/MODULES=most/MODULES=dep/ /etc/initramfs-tools/initramfs.conf
  update-initramfs -u


** Inaccessible devices **

The old patch for better support for inaccessible disks based on
problems with usb sticks. But this option 'inaccessible' is only 
usable, if hard disks can not be accessed by the BIOS, but can always 
be accessed by linux. This option is not sensible for usb sticks, 
which will always bring failures if they are named in the lilo.conf. 
So please don't use the option 'inaccessible' with USB sticks or other
removable devices.


** Inactive disks of MD RAID-1 array **

RAID-1 devices are supported as boot device. If not all RAID-1 disks
are activated use '-H' to install only to active disks. This option 
override fatal halt while found an inactive disk of an RAID-1 array.

Warning: Booting with partial RAID-1 installation only on active disks
is not failsafe!


** Very old documentation **

The following very old documentation can be found in lilo-doc package:

  - html/user_21-5.html
  - html/tech_21-5.html
  - INCOMPAT
  - README
  - README.disk
  - README.common.problems
  - README.volumeID
  - README.pseudo
  - README.bitmaps
  - README.raid1
