FDisk won't detect or accept correct disk geometry from BIOS

Jerry McAllister jerrymc at clunix.cl.msu.edu
Thu Jan 22 15:17:03 PST 2004


> 
> Thanks for your thoughtful and helpful reply.  I should have given more 
> technical details.
> 
> I already tried (with both 4.9 and 5.1) letting the FreeBSD install proceed 
> with fdisk's  geometry value assumptions, and what I always get is a 
> non-bootable hard drive that gives the "Missing operating system" error at 
> boot.
> 
> The hard drive is IDE, not SCSI.  It is a Maxtor UltraMax 40GB ATA/100 drive 
> purchased shy of two years ago.  The "physical geometry" reported by Maxtor 
> in the specs for the drive is different from the geometry my BIOS reports 
> that it has auto-detected and is using to address the drive.  And both of 
> *those* geometries are different from the one that fdisk keeps trying to 
> assume.
> 
> I've already read all the FAQs, handbooks, and support sites I could find 
> regarding FreeBSD and disk geometry.  None of them have contained any 
> information specific to IDE drives (they all seem SCSI-centric), and none of 
> them have clearly explained all the background context about how drive 
> geometries work.  I guess there is a "physical geometry" provided by the 
> drive manufacturer, and then different geometries (all of which may be 
> valid) your BIOS might use to address the drive depending on the mode it is 
> using (LBA, etc).  As far as I can tell, the geometry values a user is 
> supposed to feed to fdisk are the values that the BIOS reports that it is 
> using to address the drive, but I'm not even sure if that is correct because 
> the documentation is so impenetrable.  And of course many users are running 
> into this issue where the drive geometries reported and used by their BIOS 
> are simply rejected by fdisk as "invalid" whenever they try to enter them 
> into fdisk, which makes no sense to me.
> 

I will definitely agree with one thing at least:   I wish all this
were much better documented.   There are lots of pieces of documentation
in various places - some up-to-date, and some obsolete and some sort
of in between.   It is very hard to sort out the differences.  I think
a lot of the problem is historical but as things have been cleaned up
over the years the documentation did not keep up and not everything
was overhauled along the way, just tweaked as needed.  Plus, part of the
problem is no-one out there who has written documentation understands the
entire thing from front to back, just the parts they have worked on.  I
could be wrong on this, but it really looks like that.   I really wish
one of these geniuses would do a complete documentation of disk layout
and mapping to whatever and flag bytes and boot blocks and MBRs and...

This disk geometry thing is not unique to FreeBSD.   The confusion exists 
in all OSen that make use of PCs and PC BIOSs even in MS though they try
to keep that covered up.  

Anyway, I think you will get the missing OS message if you have not 
correctly installed some sort of boot block on the device.  If you 
are single booting, you can make one big slice and then you don't need
to have the MBR, just a standard boot block.   If you are dual booting
you have to have BOTH an MBR and then in the bootable slice, a boot block.
Also, the system expects root to be in the bootable slice and to be
partition 'a' in the bootable slice.  (I understand you can do heroics 
and fudge that, but don't bother trying)

The machine I am typing on right now has an IDE disk (even though most of
ours have SCSI) and the Physical geometry does not match what fdisk says.   
It is dual booted with WinXP (actually 3-booted if you consider the vendor 
maintenance slice).  It installs, boots and runs just fine.
I don't think that the system would even be able to complete a write to
the disk at slicing, partitioning and installing time if the geometry
was not working out.  It is just too basic to everything the install
does.    I think you need to look for the problem some other place, such 
as MBRs or partitions or something.   Hopefully someone out there can
offer some more useful suggestions.

////jerry

> 
> 
> ----- Original Message ----- 
> From: "Jerry McAllister" <jerrymc at clunix.cl.msu.edu>
> To: "Keith Kelly" <c0d3h4x0r at hotmail.com>
> Cc: "freebsd-questions" <freebsd-questions at freebsd.org>; 
> <freebsd-bugs at freebsd.org>
> Sent: Thursday, January 22, 2004 12:44 PM
> Subject: Re: FDisk won't detect or accept correct disk geometry from BIOS
> 
> 
> > >
> > > Please see this page:
> > > http://lantech.geekvenue.net/chucktips/jason/chuck/1044789670/index_html
> > >
> > > This is exactly the problem I am having now whenever I try to install 
> > > either
> > > FreeBSD 4.9 or 5.1.  Clearly, a lot of other users out there are having 
> > > this
> > > problem too.  FDisk absolutely refuses to accept the correct geometry 
> > > values
> > > (the ones my BIOS tells me it is using to address the disk), instead
> > > insisting on using some values that are not even close to correct.  Then
> > > after installation completes and I try to boot, I get a "missing 
> > > operating
> > > system" message, which is no surprise given that the disk was addressed 
> > > by
> > > the installer using the wrong geometry settings.
> >
> > Of about 100 to 110 FreeBSD systems we have up and going, I have never
> > had the fdisk reported geometry match the BIOS reported information
> > but I have never had a system fail to install and boot by just ignoring
> > the whole issue and letting it (sysinstall, fdisk, etc) do its own thing
> > as long as I didn't try to tinker with the geometry.  This has been with
> > both SCSI and IDE disks, but mostly SCSI and almost entirely on mainstream
> > hardware such as what comes with Dell, Compaq, etc, not homebuilts.
> > The FreeBSD versions have been most of 3.xx through most of 4.xx. I
> > haven't tried any 5.xx yet but the person in the box (cubicle) next to
> > me has 5.1 going and sees the same thing.
> >
> > There have been lots of things written about this. I don't know which
> > ones apply in your case.  But, the geometries on recent disks and
> > recent versions of software (recent = in the last 6 or 7 years) are
> > all "virtual" as far as I can see.    So, just try letting it fly
> > and without trying to tinker or reconcile what appears to be a conflict.
> >
> > ////jerry 
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
> 



More information about the freebsd-bugs mailing list