I have this kind of setup /dev/sda 2 GB sda1 / 800 MB sda2 swap 128 MB sda3 ext rest sda5 /home 500 MB sda6 /var 500 MB sda7 /tmp 100 MB /dev/sdb 2 GB the same as above. The disks aren't 100% identical, but the extra sectors on bigger disk are left unallocated. Every partition except swap is RAID1'ed, creating md0-md3. All of those are type 'fd' (raid autodetect autodetect). Now, if I set up /etc/lilo.conf so that boot=/dev/md0, root=/dev/md0 it says Open /tmp/dev.0: No such device after modifying both sda and sdb. Booting works as long as I don't remove sda. If I do that, I get a no rom basic error. It seems the latest lilo tarball from its home FTP site gives the same message about dev.0. [ btw, rawhide lilo is a bit outdated version ]
I tried this on an old box that hadn't been installed using failed-disk directives in /etc/raidtab (causing sda and sdb be ordered a bit differently), and I got: ---- boot = /dev/sda, map = /boot/map.0801 Added linux * boot = /dev/sdb, map = /boot/map.0811 Added linux * ---- No errors. Note that /dev/sda is updated before sdb here, not the other way around as before. It might be the key here.
I've run into this same thing, and found that this is caused by a drive failure on a mirrored filesystem. When I got this error, I checked /proc/mdstat, and found that I had a mirror reporting itself as failed. Perhaps lilo's error reporting should be _SIGNIFICANTLY_ improved in this case?
lilo's error reporting could probably be improved, but as we're migrating toward using grub instead, we're not likely to expend any effort on doing this.