При загрузке ядра LILO запоминает данные о назначении номеров BIOS для дисков, и потом при установке загрузчика использует эти данные. При смене устройства для загрузки в настройках BIOS номера дисков меняются (выбранный для загрузки диск получает номер 0x80), поэтому сохранённая lilo информация перестаёт соответствовать реальной конфигурации. Нужно явно указать номера дисков в /etc/lilo.conf: disk=/dev/hda bios=0x80 disk=/dev/hdb bios=0x81
С grub в этом отношении проще.