Fdisk/Disklabel ARG

Tony Holmes tony at crosswinds.net
Tue Sep 28 13:31:22 PDT 2004

I'm using 4.10 on various sytems, and getting the same problems
on SCSI, ATA (direct and via a Promise TX2) with ufs or vinum
and it's driving me nuts!

After installing a base OS disk (no problems there), I add other
disks and partitions. Now, to be lazy, I usually cheat by using
/stand/sysinstall, first fdisk, then label, no boot manager.

Usually, it works 100% and I keep my lazy factor high.

As of 4.10, it started to complain about invalid argument when
I would create a parition, and attempt to newfs/mount it.

So, I got "un"-lazy and attempted to do it manually. I do
(using ar0 as the example device):

fdisk -I ar0
disklabel -r -w ar0 auto
disklabel -e ar0

I muck around in disklabel and make my partitions, expending *far*
too much energy as compared to /stand/sysinstall. Save and exit.
Then I do the nice newfs.

newfs -N -b 16384 -f 2048 -i 32768 -c 102 /dev/ar0s1e

It newfs's wonderfully, showing me all the superblock locations and 
such as I yawn at this unnecessary work. Then I attempt to mount the

mount /dev/ar0s1e /mnt

And I get:

sh1# mount /usr/home
mount: /dev/ar0s1e on /usr/home: incorrect super block

/var/log/messages shows:

dscheck(#ar/0x20002): fixlabel: invalid magic
fixlabel: invalid magic


I have attempted obliterating the info on disk with a dd to
the c partition and the raw device itself. As mentioned, I have this
problem with all sorts of devices, so a number of scenarios present

1. FreeBSD 4.10 disklabel/fdisk has some form of regression
2. I am the one suffering from the regression and being too lazy for
   too long forget what to do

As another note, I attempted the same thing under FreeBSD 4.8 and had
no problem!!!

Any help would be appreciated. I've tried everything except taking the
disks to dinner to get them to take a fileystem!

Tony Holmes

Ph: (416) 993-1219

Founder and Senior Systems Architect
Crosswinds Internet Communications Inc.

More information about the freebsd-stable mailing list