Subject: Re: booting wrong partition (1.4.1)
To: None <port-i386@netbsd.org>
From: Anne Bennett <anne@alcor.concordia.ca>
List: port-i386
Date: 01/14/2002 21:35:38
Yesterday evening I despaired:

>>> *Why* is this system's initial boot code apparently
>>> agreeing to boot from my IDE disk (wd0), then sneakily booting from my
>>> SCSI disk (sd0)???

Greywolf <greywolf@starwolf.com> suggested:

>> You should also be able to specify:
>>   boot wd0a:netbsd -sa
>> and have the kernel ask you for your boot device.  This should work.

It did indeed work!  Thanks for the tip.

I also pursued what Manuel Bouyer <bouyer@antioche.lip6.fr> had suggested:

>> wd0, wd1, wd2 ... and sd0, sd1, sd2, ...  are only aliases to really what
>> matters to the boot code: hd0, hd1, hd2, ... (which are also called
>> C,D,E,... by the BIOS).

and which was further reinforced by David Laight <david@l8s.co.uk>:

> You definitely need to type wd1a (or sd1a) to load the kernel off the
> other disk.  I think the comment "Use hd1a:netbsd to boot sd0 when wd0
> is also installed\n" is somewhat misleading.

and added to by Frederick Bruckman <fredb@immanent.net>:

> What you can do now, is
>    dev hd0a:
>    ls
>    dev hd1a:
>    ls
> and so on, to try to figure out what the BIOS sees as what.

I did the above, and got lists of files for hd0, hd1, and hd2, and an
Input/Output error for hd3.  Mighty suspicious. :-)

Since I *have* an sd1 (SCSI disk), typing sd1a had been getting me
*that* disk.  It had not occurred to me to try hd2, but lo and behold,
that's where the BIOS puts my IDE disk!  "boot hd2:netbsd" works just
fine and boots the O/S off the IDE disk.  Now that part of things is
back to normal, I have a system again, and once I catch up on things,
I will go back to figuring out why the SCSI card gives problems in the
faster machine...

(I ended up not having to play with the BIOS settings which control the
order of the boot devices, since I am able to specify the one I want.)

I am no longer in despair; thanks very much to all of you who helped
so quickly and effectively!


Just to comment on the suggestions that were brought up in the wake of
all this:

Greywolf <greywolf@starwolf.com> wonders:

> Is there, then, a way for the bootloader to print out the list of
> disks it's able to access on request, and then we just use 'hd' and
> completely throw out the sd/wd stuff, since it's superfluseless?

(Nice new word :-) )

David Laight <david@l8s.co.uk> explains:

> 'current' no longer lets you specify 'wd' or 'sd', only 'hd'.
> 
> The only 'list' would be 'hd0', 'hd1',..... (max hd7 - I hope) since
> there is nothing to indicate which disk is which (without some work) it
> is moderately pointless.

I approve of tossing the aliases -- they are indeed misleading.

However, a list of available devices, even only by number, is not as
pointless as you think -- if I had seen the first-stage boot report that
I had "hd0, hd1, hd2" available, it probably would have occurred to me
that they corresponded to my three disks (two SCSI and one IDE), I would
have tried them all in turn, and I would not have ended up bugging this
list for help yet again.  :-)


Anne.
-- 
Ms. Anne Bennett, Senior Analyst, IITS, Concordia University, Montreal H3G 1M8
anne@alcor.concordia.ca                                        +1 514 848-7606