Subject: Re: bootselector error 3
To: George Sollish <gsollish@mail.gisco.net>
From: Frank van der Linden <frank@wins.uva.nl>
List: port-i386
Date: 03/06/2000 16:40:20
On Mon, Mar 06, 2000 at 10:19:30AM -0500, George Sollish wrote:
> I am building a multiboot i586-166 box with a new WD 13.6G drive.  I
> loaded 1.4.1 into the top 6G first, with a 50M partition for DR-DOS on the
> bottom loaded next.  At this point the 1.4.1 bootselector could boot
> either OS from the hard drive.  I then loaded FreeBSD 3.2 into the first
> of two 3.5G partitions.  Now the 1.4.1 bootselector returns error 3 on
> default. Before the default (set to NetBSD) takes over I can F1 to DR-DOS,
> but any other F-key returns error 3.
> 
> I can boot either BSD from floppy.  I did notice that the BIOS geometry
> was different on the FreeBSD side, and reset it with their fdisk -i.
> Afterwards I reinstalled the NetBSD bootselector and power-cycled just to
> be sure.

What seems to have happened here is that the FreeBSD install, presumably
because it used a different geometry somehow, changed the partition
boundaries. What could have happened is that there is now a mismatch
between the 2 ways that the partition boundaries are stored in the MBR:
by their CHS and logical sector numbers.

"Error 3" means that the bootselector loaded the first sector of the
partition, but did not find a valid bootsector signature.

You can study the output of "fdisk wd0" on NetBSD, and see if the
CHS values match the logical sector values. If not, you'll have to
bring them back in sync (I assume that you know what the correct
values are..)

I don't know why FreeBSD had different ideas about the geometry; I
have installed 4 OSs (amongst which were FreeBSD and NetBSD) on
one 12.7G disk, without problems.

- Frank