Re: [SLUG] Re: lilo to slaved disk -- the BIOS _only_ knows to boot disk 80h

From: Larry Brown (larry.brown@dimensionnetworks.com)
Date: Tue Sep 28 2004 - 07:40:40 EDT


I am loading a custom bootable disk as hdd. It is a compact flash card
connected to a ide adapter. I need to make it bootable to an initrd
image that should be loaded into ram and the system runs there from
memory mounting the flash as its drive. I have been doing this
successfully on fat using syslinux where all you need to run is
"syslinux /dev/hdd" and it does the rest. I want to go to a linux
partition and figured I would use lilo as it is usually straight forward
for the system drives I've used it for. I'll give your direction a try
today. Thanks...

Larry

On Mon, 2004-09-27 at 20:29, Bryan J. Smith wrote:
> On Mon, 2004-09-27 at 20:05, Larry Brown wrote:
> > I am looking to find a cut and dry way to mount a seperate drive and run
> > lilo on it to make it bootable. The situation is that I have a rack
> > mount system that boots to hdc. hda is a cdrom and is fixed that way by
> > the bios/motherboard and hdc is a sata drive and hdd is the second sata
> > drive. I can install rh linux to hdc without a problem while selecting
> > hdc as my boot drive. I mount a second drive as hdd but cannot get lilo
> > to run on the drive. It complains that hdd is not the first drive and
> > then says that it can't do anything with 0x0701. I have seen this
> > before on another system where everything was IDE and I could simply
> > move the drive I wanted to run lilo on to be hda and it happily ran. I
> > know there is a way to do this, I just don't know how. I've looked at
> > the lilo howto and it appears to be outdated. I followed the examples
> > without success.
> > Any lilo experts here that have this down pat?
>
> First off, in your configuration, this is your BIOS-Linux mapping:
>
> BIOS Disk Linux ATA Disk
> ------------------ --------------------
> 80h (aka GRUB hd0) /dev/hdc
> 81h (aka GRUB hd1) /dev/hdd
>
> It is not a LILO consideration, but a BIOS consideration.
> The 16-bit BIOS Int13h services blindly loads the MBR of BIOS disk 80h.
> You don't have any other option, _unless_ you disable primary/master
> in the BIOS (not recommended if you have a slave attached).
>
> But what you _can_ do is tell the LILO on BIOS Disk 80h (hdc) to "chain"
> to the LILO on BIOS Disk 81h (hdd). In other words, you'll need to have
> _two_ LILO configuration files. If they are separate installs of Linux
> (one on each disk), this is easy. If not, you must maintain separate
> scripts to do so.
>
> Here's the typical, tandem lilo.conf for each:
>
> BIOS Disk 80h (hdc) lilo.conf:
>
> disk=/dev/hdc
> bios=0x80
> disk=/dev/hdd
> bios=0x81
> boot=/dev/hdc
> ...
> other=/dev/hdd
> optional
> label=hdd_disk81h
>
> BIOS Disk 81h (hdd) lilo.conf:
>
> disk=/dev/hdc
> bios=0x80
> disk=/dev/hdd
> bios=0x81
> boot=/dev/hdd
> ...
> image=/boot/blah... (as normal)
>
> I'm curious why you need to boot to /dev/hdd?
>

-----------------------------------------------------------------------
This list is provided as an unmoderated internet service by Networked
Knowledge Systems (NKS). Views and opinions expressed in messages
posted are those of the author and do not necessarily reflect the
official policy or position of NKS or any of its employees.



This archive was generated by hypermail 2.1.3 : Fri Aug 01 2014 - 18:11:50 EDT