I needed the SCSI drive out of my desktop for another machine, so I added
an IDE drive, made similar-sized partitions, and copied the filesystems
over with cpio. I also adjusted /etc/fstab etc. to change sda to hda,
and re-ran lilo to reinstall LILO. "lilo -v" doesn't show any errors.
I can boot the machine with a custom boot disk using "rescue
root=/dev/hda1" and it works fine. But when I boot from the hard drive,
LILO only gets to "LI" and then stops.
The LILO docs say that this means either that I've moved things in /boot
without rerunning lilo, or a geometry mismatch. I know the former isn't
the case (I've rerun lilo lots of times).
When I boot with Tom's bootroot, the number of heads on hda shows up
as 0, and the number of cylinders is wrong. This makes me wonder about
the geometry problem.
Here are the things I've tried so far:
- Copying the MS-DOS (standard) MBR using "dd bs=446" onto the disk, and
switching lilo.conf to have boot=/dev/hda1 (which is marked active)
- Adding "linear" to lilo.conf -- is this needed since the BIOS is set
to use LBA?
- Adding disk geometry to lilo.conf -- using an "hda=" argument with the
Tom's disk does make the geometry right, but it doesn't fix LILO
Can anyone suggest what I should try next? It doesn't seem like
reinstalling this machine should be necessary. Also any pointers to
places I can go to read more, troubleshooting tools, etc... most of this
seems pretty opaque, and I don't know any way to inspect what's on the
disk to figure out where it's falling over.
Thanks in advance for any help!
----------machine details-----------------------------------------------
Intel Seattle 440BX motherboard (Phoenix BIOS)
(IDE drives set to "Auto" and "LBA" in the BIOS)
RedHat 6.1 (2.2.12 and 2.2.14 kernels)
LILO 0.21
hda: ST38410A, 8223MB w/512kB Cache, CHS=16708/16/63
hdc: ST39140A, 8693MB w/448kB Cache, CHS=17662/16/63
Adaptec 2940UW with SCSI CD-ROM and tape
----------disk details--------------------------------------------------
Disk /dev/hda: 16 heads, 63 sectors, 16708 cylinders
Units = cylinders of 1008 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 261 131430 83 Linux
/dev/hda2 262 16706 8288280 5 Extended
/dev/hda5 262 4423 2097534 83 Linux
/dev/hda6 4424 6504 1048710 83 Linux
/dev/hda7 6505 7545 524550 82 Linux swap
/dev/hda8 7546 16706 4617030 83 Linux
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 127269 50113 70585 42% /
/dev/hda8 4544532 3779992 533692 88% /export
/dev/hda5 2064144 1192256 767012 61% /usr
/dev/hda6 1032056 134680 844944 14% /var
----------/etc/lilo.conf------------------------------------------------
boot=/dev/hda
#boot=/dev/hda1
root=/dev/hda1
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux
read-only
#linear
#disk=/dev/hda
# bios=0x80
# sectors=63
# heads=16
# cylinders=16708
image=/boot/vmlinuz-2.2.14-12
label=linux
initrd=/boot/initrd-2.2.14-12.img
# append="hda=16708,16,63" # Redundant?
password=foobar
restricted
image=/boot/vmlinuz-2.2.12-20
label=linux.old
initrd=/boot/initrd-2.2.12-20.img
# append="hda=16708,16,63" # Redundant?
password=foobar
------------------------------------------------------------------------
--
W: +1 651 638-6136