Use device ID and UUID in lilo.conf rather than device path.
Using device paths in lilo.conf for the "boot" line on the header and the "root" line on the menu entries opens up the posibility of writing to the wrong MBR or asking lilo to boot the wrong partition. This has happened in cases where the user boots from USB, and for some strange reason udev labels their USB stick as /dev/sda. In that case, writing the bootloader to /dev/sda means writing it to the USB stick, and asking lilo to boot /dev/sdb1 will result in an un-bootable system because when the user boots without the USB stick, the hard drive is not sda.
This is avoided by using ID and UUID paths instead of device paths.