If you have FreeBSD and Linux on the same disk, just follow LILO's installation instructions for booting a non-Linux operating system. Very briefly, these are:
Boot Linux, and add the following lines to
/etc/lilo.conf
:
other=/dev/hda2 table=/dev/hda label=FreeBSD(the above assumes that your FreeBSD slice is known to Linux as
/dev/hda2
; tailor to suit your setup). Then,
run lilo
as root and you should be done.
If FreeBSD resides on another disk, you need to add
``loader=/boot/chain.b
'' to the LILO entry.
For example:
other=/dev/sdb4 table=/dev/sdb loader=/boot/chain.b label=FreeBSD
In some cases you may need to specify the BIOS drive number to the FreeBSD boot loader to successfully boot off the second disk. For example, if your FreeBSD SCSI disk is probed by BIOS as BIOS disk 1, at the FreeBSD boot loader prompt you need to specify:
Boot: 1:sd(0,a)/kernel
On FreeBSD 2.2.5 and later, you can configure boot(8) to automatically do this for you at boot time.
The Linux+FreeBSD mini-HOWTO is a good reference for FreeBSD and Linux interoperability issues.