Mailing List Archive

Support open source code!


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: tlug: Afraid to boot



Neil Booth wrote:

> You and Scott are both right. It wouldn't boot by itself; even when I
> unplugged the IDE drive.

I have finally figured out exactly what is going on here, and what the
LILO warning really means.
I'm not sure anyone's interested, but I'll relate it just in case. It
could be useful for those people creating distributions, or if someone
comes across this themselves in the future, maybe...

The BIOS assigns the first drive 0x80, and the second 0x81. All the
conflicts and boot failures I saw are explained by

1) the fact that LILO always assumes IDE=0x80, and the SCSI=0x81 in the
presence of both, and
2) the way the BIOS figures out what is the "first" drive isn't
immediately obvious, and isn't as simple as IDE=0x80.

When /sbin/lilo -ing the SCSI drive boot sector, LILO issues a warning
because it's writing its boot sector with BIOS calls referring to the
SCSI as 0x81, the 2nd drive. When sbin/lilo -ing the IDE, it does all
those calls with 0x80 instead. The solution is to have in the SCSI lilo
config file the following global paramters:

disk=/dev/sda
  boot=0x80

to override LILO's assumption. This also supresses the warning.

All my original attempts at booting off the SCSI drive were before I'd
read about the "disk" global parameter, so at boot LILO was passing BIOS
0x81 as the drive reference.

The interesting bit is that if the BIOS is set to boot from SCSI, the
SCSI gets the 0x80 label and the IDE the 0x81 label, hence why the boot
always failed when I did that.

What I couldn't work out is how I could boot from SCSI just after I'd
installed the IDE, because the installed LILO in the SCSI boot sector
was still referring to it as 0x80. Well, it appears that the BIOS, in
attempting to detect errors, will overlook the IDE drive and instead
assign 0x80 to the SCSI and attempt a boot from there if either of the
following is true, even if the BIOS is set to boot from IDE:

a) there is no active partition on the IDE
b) there is an active partition, but it cannot recognise a magic number
in the boot sector.

Worse, even if set to boot from SCSI or either of the above are true,
the BIOS hardware display at bootup ALWAYS shows the SCSI as 0x81 if the
IDE is present!

Interesting, if you're into that kind of thing.

Neil.
------------------------------------------------------------------
Next Technical Meeting: 12 December, 12:30 at Temple Univ. Japan
*NEW LOCATION* a map is available at http://www.tuj.ac.jp/maps.html
Next Nomikai: 15 January 1999, 19:30 Tengu TokyoEkiMae 03-3275-3691
------------------------------------------------------------------
more info: http://tlug.linux.or.jp                     Sponsor: PHT


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links