On Fri, 2002-11-15 at 15:04, rpgoldman at real-time.com wrote:
> Munir Nassar writes:
>  > next time you recompile the kernel, look under IDE devices look for "Boot 
>  > off-board chipsets first support"
>  > 
>  > this _may_ do the trick, i never played with this
> 
> Munir, 
> 
> Thanks for the suggestion.  I just wanted to follow-up, because I'm
> not sure I understand.  Here's the question ---- why would the kernel
> enter into this at all?  Shouldn't it just be up to the BIOS whether
> or not I can boot from the SCSI controller?  I mean, by the time the
> kernel is loaded, isn't the issue decided?  Anyone know?

Yeah, I think the "off-board chipset support" is for making a PCI card
controller appear to be the primary and secondary (etc.) controllers,
making the onboard IDE controllers tertiary and quaternary (or
quintessential or sexy or something).

There's a lot of information on how boot loaders are supposed to work on
normal x86 hardware in the LILO documentation.

Basically, the BIOS reads ~512 bytes of data from a boot device.  That's
the bootsector, and in terms of most Linux bootloaders, it's the first
stage.  With Linux, the bootloader then tries to find the correct device
to read it's second stage from.  This second stage can be significantly
bigger than 512 bytes, which allows the nifty graphics and menus that we
see today in LILO and other bootloaders.  The second stage actually
loads the kernel.  With LILO, the "LI" is usually written to the screen
by the first stage, and the second stage writes "LO".

There are several things to be concerned about when setting up a boot
loader:  Where to write the bootloader so the BIOS will load the first
stage, ensuring that the second stage can be loaded, and ensuring the
second stage can find and load a kernel.  Usually this is relatively
simple, but mixed SCSI/IDE systems and RAID controllers can confuse
things.

A normal PC will number off the fixed disks in a system as 0x80, 0x81,
etc.  In a mixed SCSI/IDE computer, it's not always possible to know
what device shows up as the first disk.  /etc/lilo.conf will let you
specify which device corresponds to each number with disk= parameters
like this:

    disk=/dev/sda
         bios=0x80
    disk=/dev/hda
         bios=0x81

I've never been in a situation where I had to map out the devices
without at least having a good guess, but I imagine a floppy with GRUB
installed on it would help out a lot.  GRUB can do tab-completion, and
should give you a list of possible devices to boot from if you type in
`(hd' and then hit Tab.  If you look at what partitions exist on each
drive, you should be able to determine the order that the BIOS sees them
in.  It might also be useful to try out the SBM bootloader (which
incidentally is really useful for booting bootable CD-ROMs in older
computers that can't do it themselves).

Once the drives are mapped out properly, it should be a piece of cake to
get LILO running.  As far as I know, LILO doesn't care too much about
where /boot shows up, as long as it is on a drive that is accessible at
boot time.

-- 
 _  _  _  _ _  ___    _ _  _  ___ _ _  __   Floggings will continue
/ \/ \(_)| ' // ._\  / - \(_)/ ./| ' /(__   until morale improves.
\_||_/|_||_|_\\___/  \_-_/|_|\__\|_|_\ __)  
[ Mike Hicks | http://umn.edu/~hick0088/ | mailto:hick0088 at tc.umn.edu ]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://shadowknight.real-time.com/pipermail/tclug-list/attachments/20021115/ca4963e8/attachment.pgp