Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Aug 1999 17:00:43 +0200 (SAST)
From:      Robert Nordier <rnordier@nordier.com>
To:        gram@cequrux.com (Graham Wheeler)
Cc:        hackers@freebsd.org
Subject:   Re: Multiple versions of FreeBSD on one HDD
Message-ID:  <199908041500.RAA08771@m2-42-dbn.dial-up.net>
In-Reply-To: <37A84C0D.C93DDAFC@cdsec.com> from Graham Wheeler at "Aug 4, 1999 04:19:57 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
> > > It's usually best to temporarily change fdisk partition types,
> > > so that sysinstall sees no existing FreeBSD slice on the drive.
> > > However, there may be other problems involved here as well.
> > 
> > Hmmm. This sounds a good plan. Would the following then work
> > (I'm using `partition' to refer to a fdisk partition, and `file
> > system' to refer to a BSD partition):
> > 
> > * I partition my drive into 4 equal partitions (rather than 2;
> >         this gives me more future flexibility)
> > 
> > * I install 2.2.8 in the first partition.
> > 
> > * I change the type to something other than FreeBSD
> > 
> > * I install 3.2 into the second partition
> > 
> > * I change the type of the first partition back to FreeBSD
> > 
> > * I install os-bs or some other boot selector
> > 
> > * And now, hopefully, I can simply boot either from the boot
> >         selector menu?
> 
> I tried this, and the installation went through fine. But after 
> installing 3.2, I get a `Missing operating system' when I try to
> boot the second partition (the first still has its type set to 
> something other than FreeBSD, so it won't boot either).
> 
> Robert, you seem quite knowledgeable about all this, and seem to have
> had considerable success. How do I get this right? I want to install
> 2.2.8 in one partition and 3.2 in another. If I don't change the 
> fdisk partition type after installing 2.2.8, then sysinstall won't
> allow me to install the second OS (it complains when I try to make the 
> root BSD partition that the boot loader can't handle it). If I do
> change the fdisk partition type first, the install is fine, but I can't
> boot afterwards, as described above.

"Missing operating system" indicates that the first sector of the
OS bootstrap (boot1 in the FreeBSD case) isn't flagged bootable:
that is, it doesn't have the bytes 0x55 and 0xaa right at the end.

Almost invariably, the cause of this is a mismatch between the disk
geometry the BIOS is using, and what FreeBSD thought the geometry
was during the install.  (So the wrong sector is read by the MBR
code.)

The first partition is less sensitive to geometry mismatches than
the others, since it has a starting CHS value of 0,1,1.  That relies
only on "sectors per track" and not "number of heads".

Because most modern BIOSes do CHS translation, the BIOS geometry is
not always evident from the geometry reported by the drive, and
FreeBSD may get this wrong, particularly if no existing partitions
are defined.

Since you are installing to a drive with no pre-existing non-FreeBSD
partitions, I suspect sysinstall got the geometry wrong.  Probably
you should re-install and use the 'G' command in sysinstall's fdisk,
after determining what geometry the BIOS is actually using.

The best way to determine BIOS geometry in FreeBSD is to boot -v
(but it should be from the old "boot:" prompt, not from loader(8)
in 3.2R) and then check using dmesg(8) for "BIOS Geometries"
information.

-- 
Robert Nordier


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199908041500.RAA08771>