FreeBSD 7.0 fdisk issue during installation
jerrymc at msu.edu
Fri Nov 21 11:59:47 PST 2008
On Fri, Nov 21, 2008 at 08:03:58PM +0100, Jonatan Evald Buus wrote:
> I tried to install FreeBSD 7.0 on an old server earlier today and ran in to
> a number of issues related to slicing and labeling the disk using fdisk.
> The drive in the machine is a 40GB Seagate Barracude (ST34001A) installed as
> a Secondary Master on the IDE bus using LBA.
> The BIOS reports that the drive has 16 sectors pr block, but little else.
> When accessing fdisk during install, fdisk complains that the disk geometry
> is invalid and sets it to the default geometry for 40GB:
> Cylinders: 4865
> Heads: 255
> Sectors: 63
> I've tried with the following configuration based on what was reported by
> the BIOS:
> Cylinders: 19150
> Heads: 255
> Sectors: 16
> Looking in the manual:
> http://www.seagate.com/support/disc/manuals/ata/cuda7200pm.pdf, Seagate is
> specifying the following logical characteristic:
> Cylinders: 16383
> Read / Write heads: 16
> Sectors pr track: 63
> Which of these settings should be the correct one for the fdisk geometry?
Let the system set it and just go with what it does.
Geometry is virtual nowdays. Except in some unusual situations
(on IDE) Cylinders, heads and sectors most often do not mean what
they used to. The system drivers have it all figured out. The
important thing for you is the total number of blocks/sectors.
If that doesn't work, you will have to do some diagnosis, but in
about 10 out of 9 times, accepting how FreeBSD sets it is correct
> Additionally I encountered problems during installation if splitting the
> disk into more than 4 slices. This would cause the following error to be
> thrown during prior to the install files being copied (when sysinstall was
> executing the newfs commands):
You cannot have more than 4 slices.
The system limits you to 4 slices, identified by numbers 1..4
Once you divide in to slices, each can be further divided in to
up to 8 partitions, although it is really 7 because partition 'c' has
special meaning and is not really available to be a real partition.
Partitions are identified with alpha letters a..h - with 'c' being
used to identify the whole slice.
You use fdisk to create the slices (and write the MBR and set
the bootable flag).
Then you use bsdlabel (formerly called disklabel) to create the
partitions within a slice (plus write the slice boot block.
Typically, you want to make partition 'a' be the root (/) filesystem
and 'b' be swap space on a bootable system slice. Some things assume
Then you newfs partitions a, d, e, f, g, h or as many as you use.
But don't touch c and don't newfs b if it is to be swap.
> "Error mounting /mnt/dev/X on /mnt/usr. No such file or directory"
> Using only 4 slices seems to have solved this error, however I'd like the
> disk layout to use 5 slices as follows:
> / = 512MB
> swap = 2048MB (the machine has 1024MB RAM)
> /tmp = 512MB
> /var = 2048MB
> /usr = whatever remains
> I noticed that when having 5 slices, the last slice (/usr) would be named X
> rather than ad2s5 as I'd expect (the drive was detected as ad2).
> Is this behaviour related to the error in any way?
> Also, is the above disk layout good for a server intended to run both a web
> server (Apache) and a database server (PostGreSQL) ?
> Finally after installation (using only 4 slices) the system will only boot
> if the FreeBSD boot manager is used.
That is probably because you have created what is referred to in the
documentation as a "dangerously dedicated" disk. You can make it
work that way. FreeBSD can handle it. But other systems will not
play nicely with it.
> This in turn causes a 4 menu options, all of them named "FreeBSD" to appear
> during startup despite only the / slice having been set as bootable in fdisk
> which appears to be indicated by an "A" in the flag column.
Again, because you tried to do it the wrong way. You created 4 FreeBSD
slices, probably each with an MBR and so the BIOS and the first MBR think
they are all bootable.
> Selecting the first menu item by pressing F1 will make the system boot as
> It seems rather silly though to use a boot manager when FreeBSD is the only
> operating system that is installed (and ever will be installed) on the
You can put in the other non-boot manager block during installation
if you want and it will only boot FreeBSD. But, something is needed.
I forget what they call it in the sysinstall screen, but you might just
as well put in the FreeBSD boot manager (MBR).
> If the FreeBSD boot manager is not used however and only the MBR is set
> during installation, the system will fail at startup with error "Invalid
> Partition Table".
> Is this because the harddrive is installed as the Secondary Master on the
> IDE bus?
No, it is because you did not create any partition table (with bsdlabel).
> Appreciate any input on this
> freebsd-questions at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
More information about the freebsd-questions