How to create *exactly* the same partitions in different disks

Glenn Dawson glenn at antimatter.net
Wed Aug 31 10:21:22 GMT 2005


At 12:07 AM 8/31/2005, Norberto Meijome wrote:
>Hi,
>pretty simply, how do I create slices (fdisk) that are exactly the 
>same throughtout different drives so they can be used in a RAID5 config?
>
>I tried using sysinstall and typing the SAME values but they result 
>is always slightly off. I tried passing the values by hand, but it 
>changes it anyway.
>
># echo "p 2 165 20964825 467427240" | fdisk -v -f- /dev/ad6
>******* Working on device /dev/ad6 *******
>fdisk: WARNING: adjusting size of partition 2 from 467427240 to 467426295
>    to end on a cylinder boundary
>parameters extracted from in-core disklabel are:
>cylinders=484521 heads=16 sectors/track=63 (1008 blks/cyl)
>
>Figures below won't work with BIOS for partitions not in cyl 1
>parameters to be used for BIOS calculations are:
>cylinders=484521 heads=16 sectors/track=63 (1008 blks/cyl)
>
>Information from DOS bootblock is:
>1: sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
>    start 63, size 20964321 (10236 Meg), flag 0
>        beg: cyl 0/ head 1/ sector 1;
>        end: cyl 317/ head 15/ sector 63
>2: sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
>    start 20964825, size 467426295 (228235 Meg), flag 0
>        beg: cyl 318/ head 7/ sector 1;
>        end: cyl 162/ head 15/ sector 63
>3: <UNUSED>
>4: <UNUSED>
>fdisk: Geom not found
>
>[root at cerberus] [Wed Aug 31 17:02:10 2005]
>~
># fdisk -s /dev/ad4
>/dev/ad4: 484521 cyl 16 hd 63 sec
>Part        Start        Size Type Flags
>   1:          63    20964762 0xa5 0x80
>   2:    20964825   467427240 0xa5 0x00
>
>[root at cerberus] [Wed Aug 31 17:01:35 2005]
>~
># fdisk -s /dev/ad6
>/dev/ad6: 484521 cyl 16 hd 63 sec
>Part        Start        Size Type Flags
>   1:          63    20964321 0xa5 0x00
>   2:    20964825   467426295 0xa5 0x00

fdisk wants slices to start on a head boundary, and end on a cylinder boundary.

if you make start evenly divisible by the number of sectors per 
track, and make size+start evenly divisible by sectors*heads, fdisk 
won't change any of the numbers on you.

So, for your disk:

start / sectors = 332775
you have size specified as 467427240, so:
(467427240 + 20964825) / (16 * 63) = 484515.9375
fdisk will treat that as 484515 and do:
(16 * 63 * 484515) - 20964825 = 467426295
and use that number as the new size.

This matches ad6.  It would appear that ad4 had the start and end 
values explicitly set causing it to come out with different numbers.

-Glenn


>Help!!!
>
>thanks in advance,
>beto
>_______________________________________________
>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-questions mailing list