Hi folks!
Yesterday and today I've tried to upgrade my hd's (from 80G SATA to
250G SATA) on 6.2-STABLE (recent). My old disks (two equally sized)
were under control of gmirror (one per each slice) and so should the
setup look like for the new disks.
Basically I've created the slices (sysinstall's fdisk), created a
gmirror for each new slice, bsdlabel'ed -w, edited the labels and
created the filesystems.
As I've done this procedure twice yesterday and once more today,
I've double and triple checked everything but I'm running into one
single problem:
partition c extends past end of unit and doesn't start at 0.
While/after I've edited the labeles, everything has been fine and I
double checked the labels after writing them out. I've seen this
problem after rebooting the machine. Before the reboot bsdlabel
didn't claim about anything.
Now my disklabels are looking as:
# bsdlabel mirror/gm1s1
# /dev/mirror/gm1s1:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 4194304 79 4.2BSD 0 0 0
b: 8388608 4194383 swap
c: 62910477 63 unused 0 0 # "raw"
part, don't edit
d: 4194304 12582991 4.2BSD 0 0 0
e: 12582912 16777295 4.2BSD 0 0 0
f: 10485760 29360207 4.2BSD 0 0 0
g: 23064572 39845967 4.2BSD 0 0 0
partition c: partition extends past end of unit
bsdlabel: partition c doesn't start at 0!
bsdlabel: partition c doesn't cover the whole unit!
bsdlabel: An incorrect partition c may cause problems for standard
system utilities
partition g: partition extends past end of unit
# bsdlabel mirror/gm1s2
# /dev/mirror/gm1s2:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 56613060 62910540 unused 0 0 # "raw"
part, don't edit
d: 10485760 62910556 4.2BSD 0 0 0
e: 16777216 73396316 4.2BSD 0 0 0
f: 16777216 90173532 4.2BSD 0 0 0
g: 6291456 106950748 4.2BSD 0 0 0
h: 6281395 113242204 4.2BSD 0 0 0
partition c: offset past end of unit
partition c: partition extends past end of unit
bsdlabel: partition c doesn't start at 0!
bsdlabel: partition c doesn't cover the whole unit!
bsdlabel: An incorrect partition c may cause problems for standard
system utilities
partition d: offset past end of unit
partition d: partition extends past end of unit
partition e: offset past end of unit
partition e: partition extends past end of unit
partition f: offset past end of unit
partition f: partition extends past end of unit
partition g: offset past end of unit
partition g: partition extends past end of unit
partition h: offset past end of unit
partition h: partition extends past end of unit
# bsdlabel mirror/gm1s3
# /dev/mirror/gm1s3:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 192924584 0 unused 0 0 # "raw"
part, don't edit
d: 20971520 16 4.2BSD 2048 16384 28552
e: 31457280 20971536 4.2BSD 2048 16384 28552
f: 41943040 52428816 4.2BSD 2048 16384 28552
g: 16777216 94371856 4.2BSD 2048 16384 28552
h: 81775512 111149072 4.2BSD 2048 16384 28552
I swear after editing (but before rebooting) each c partition
started at 0 and no partition (g or h label) extended past the
slice. Also why is the offset of the whole gmirror gm1s2 totally blown?
After adding the last gmirror (gm1s3) I also rebooted the system but
these labels are still looking fine.
While creating all labels, I'm always using bsdlabel's automatic
calculation, as I'm just keying in the size (in G or M) and using an
asterisk at it's offset.
The filesystems are working well so I think the values shown are not
used by the kernel when mounting filesystems.
What's wrong with gmirror or bsdlabel?
# uname -a
FreeBSD bellona.sz.vwsoft.com 6.2-STABLE FreeBSD 6.2-STABLE #16: Tue
Mar 20 20:10:33 CET 2007
root@bellona.sz.vwsoft.com:/usr/obj/usr/src/sys/BELLONA i386
Thanks,
Volker