From owner-freebsd-hackers Wed Apr 17 17:32:45 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id RAA29185 for hackers-outgoing; Wed, 17 Apr 1996 17:32:45 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id RAA29146 for ; Wed, 17 Apr 1996 17:32:06 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.12/8.6.9) id KAA19908; Thu, 18 Apr 1996 10:26:25 +1000 Date: Thu, 18 Apr 1996 10:26:25 +1000 From: Bruce Evans Message-Id: <199604180026.KAA19908@godzilla.zeta.org.au> To: hackers@FreeBSD.org, mrcpu@cdsnet.net Subject: Re: Putting a valid partition table on a BIG disk? Sender: owner-hackers@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk >I have a RAID array that was griping about the slice size not matching the >partition size. So I reformatted the whole thing, zero'd out the >disklabels, and am trying to fdisk it somehow. >Nothing seems to work. THe partition is 16GB. >DOS fdisk barfs at 8GB. fdisk in /stand gets the correct geometry, but >then won't accept a number larger than 944 for the ending cylinder, but it >will let the size by the full 16GB's. /stand/sysinstall causes a panic >instantly, although I'm in the middle of a make world which may correct >that. Use something like the following with /sbin/fdisk: 1) Determine a geometry. For good SCSI BIOSes, by the definition of `good', you can invent any geometry subject to the DOS limits: 1 <= sectors per track <= 63 1 <= heads <= 255. and the BIOS will use the same geometry on the next reboot after the partition table has been written to (provided of course the entries in the partition table are consistent with a unique geometry). 63 heads and 255 sectors per track is best if it works. 2) Enter the geometry. 3) Calculate offsets and sizes for a division of the disk into partitions containing full cylinders. Don't put any bootable or DOS partitions above cylinder 1023. 4) Adjust the offset and size of the first partition to skip the first track. 5) Optionally adjust the size of the last partition to contain the sectors beyond the last full cylinder. If there is only one partition then this step will cause various entities to be confused about the geometry. 6) Enter the offsets and sizes. Accept the defaults for everything else. 7) Write the partition table. >Well anyway, I got a disklabel on there with disklabel, but everytime the >raw device is opened, I get the error about an invalid partition table. Write bytes 55, AA at the end of the first sector of the disk using a binary editor, or put a bootstrap on the disk using disklabel -B. Bruce