I have a couple of 40 GB drives in a machine whose BIOS only supports
hard disk drives up to 32 GiB. The motherboard (BIOStar M6TLC)
manufacturer has confirmed that it is not possible to work around this
limitation via a BIOS upgrade. Since installing Debian unstable in a
dual boot arrangement with W98SE I have used the space between 32 GiB
and 40 GB on each drive for a mirrored array.
However, cfdisk, fdisk and Partition Magic report problems with the
GNU parted reports:
GNU Parted 1.7.1
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit chs
Disk /dev/hda: 9693,15,62
Sector size (logical/physical): 512B/512B
BIOS cylinder,head,sector geometry: 9693,128,63. Each cylinder is
Partition Table: msdos
Number Start End Type File system Flags
1 0,1,0 3556,6,62 primary fat32 boot, lba
2 3556,7,0 8162,127,62 extended lba
5 3557,0,0 6054,127,62 logical ext3
6 6055,1,0 6296,127,62 logical linux-swap
7 6297,1,0 8156,127,62 logical fat32
3 8192,0,0 9692,127,62 primary ext3
# fdisk /dev/hda
The number of cylinders for this disk is set to 4865.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): p
Disk /dev/hda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 1785 14337981 c W95 FAT32 (LBA)
/dev/hda2 1786 4098 18575203+ f W95 Ext'd (LBA)
Partition 2 does not end on cylinder boundary.
/dev/hda3 4113 4866 6052032 83 Linux
Partition 3 does not end on cylinder boundary.
/dev/hda5 1786 3040 10071936 83 Linux
/dev/hda6 3040 3161 975712+ 82 Linux swap /
/dev/hda7 3161 4095 7499488+ b W95 FAT32
Command (m for help):
FATAL ERROR: Bad primary partition 2: Partition ends in the final
Press any key to exit cfdisk
The irony is that I had actually resized the partitions on /dev/hda
using GNU Parted but can't see how to adjust the partition sizes to
satisfy fdisk/cfdisk/Partition Magic, even after doing a resize using
CHS units to what is shown above. (The disk has free space either side
of the /dev/hda2 partition).
I filed a Debian bug report (#402520) against parted about this
problem, but wonder if anyone has a solution beyond backing up, wiping
the disk and repartitioning?
I believe that Debian *should* provide a tool and documentation to
easily resize partitions to satisfy the cylinder boundary requirements
of fdisk/cfdisk, and proprietary programs such as Partition Magic.