Disk Geometry

Change hard disk geometry parameters (Cylinders, Heads, Sectors). For Experts only.

Skip this unless you're familiar with changing disk geometry. These numbers change the way that TestDisk looks for partitions and calculates their sizes, etc. It does not affect the hard drive itself, unless you actually write data about lost partitions to the drive. Choosing the wrong geometry settings and then saving any lost partitions based on those faulty settings might make it impossible to recover your data.

To access data, the BIOS often uses a geometry (Cylinder/Heads/Sector) different than the physical geometry.

The i386 partition handling programs very often make partitions end on cylinder boundaries. A method uses by BIOS is to read the partition table and to guess the number of heads. When the partition table is cleared or corrupted, the physical disk geometry may be used instead. It become hard for partition recovery utilities to find lost partitions on the hard disk.

This problem is not limited to DOS users. Linux users can also affected. Under Linux, run dmesg and search for Partition check. In the following exemple, the geometry of harddisk hdc is determined by the partition table (PTBL).

Partition check:
 hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 hda8 hda9 hda10 hda11 hda12 hda13 >
 hda3: <bsd: hda14 hda15 hda16 hda17 >
 hdc: [PTBL] [7476/255/63] hdc1 < hdc5 hdc6 hdc7 hdc8 hdc9 hdc10 hdc11 hdc12 hdc13 >

How to find the correct number of heads?

If the HD geometry mismatches the geometry used when creating the partition table, warning messages such as: "Bad sector count", "Bad relative sector" or "Bad ending head" are displayed when "Analyze" is selected from the main menu. If you see such errors, you may need to use the "Geometry" menu to change the logical number of heads. Try 255, 16, 32, 64, 128 and 240 heads until TestDisk finds all your partitions. 255 and 240 are the most common head values. If you installed Linux as the only OS on your hard drive, it tends to default to only 16 heads.

How does TestDisk get the disk geometry?

Back to Running the TestDisk Program