testdisk: "Warning: number of (heads/cylinder|sectors per track) mismatches 255 (FAT) != 64 (HD)"

22,493

Solution 1

Short answer: Ignore the warnings or contact the program's author.

Long answer: Cylinder/head/sector (CHS) values have passed through several stages, from an accurate representation to a convenient fiction to an inconvenient fiction to worse than useless to abandoned. CHS values (as stored in the Master Boot Record, or MBR data structures) max out at about 8 GB, so CHS cannot represent any but the tiniest partitions on a modern disk. In fact, even many USB flash drives now exceed the CHS limitations! The newer GUID Partition Table (GPT) data structures don't even use CHS values, except on one area (the "protective MBR") that exists solely to signal to older software that it shouldn't mess with the disk -- and in practice, the CHS values used in the protective MBR are often completely bogus, by either MBR or GPT standards.

TestDisk is a useful tool, but I admit I haven't used it a lot. When I have used it, I've been appalled at its continuing use of CHS values in prominent locations of its user interface. This is pointless and potentially confusing. Most modern tools -- even tools for manipulating MBR disks -- today use logical block addressing (LBA) almost exclusively, or at least in preference to CHS addressing. LBA can handle up to 2^32 sectors on MBR disks, which works out to 2 TiB, given 512-byte sectors. On GPT disks, 64-bit LBA values are used, so the limit is 2^64 sectors (8 ZiB, assuming 512-byte sectors). Tools that write MBR data structures must continue to populate the CHS fields, but on disks over about 8 GB in size, those fields are likely to be maxed out or contain bogus values; there's simply no helping that fact on over-8GB disks.

As a practical matter, you should simply ignore TestDisk's warnings about CHS values unless you're using really ancient software (like very old versions of DOS). Asking TestDisk's authors to de-emphasize CHS in favor of LBA may be worth doing, too. If you want to eliminate the warnings, your only options are to convince TestDisk's authors to do this or to modify the software yourself.

Solution 2

You can ignore this warning as you don't have partition to recover.

Modern partionning software aligns partition to 1-MB boundaries. But a correct geometry is useful to recover lost partition when there were aligned to cylinder boundary.

It's the case for the second partition but it's not the case for the first one is aligned to a cylinder boundary (assuming 255 heads per cylinder and 63 sectors per cylinder, information recorded in the FAT32 boot sector).

So you can safely ignore this warning but it will be wrong to remove this warning from testdisk.

Share:
22,493

Related videos on Youtube

Tom Hale
Author by

Tom Hale

Updated on September 18, 2022

Comments

  • Tom Hale
    Tom Hale over 1 year

    TL;DR: How do I get rid of the warnings in the subject line when everything else looks sweet?

    I'm getting the following output when running testdisk's Analyze on a 64GB SD card:

    TestDisk 6.14, Data Recovery Utility, July 2013                                                                                                                                                       
    Christophe GRENIER <[email protected]>                                                                                                                                                           
    http://www.cgsecurity.org                                                                                                                                                                             
    
    Disk /dev/sdb - 63 GB / 59 GiB - CHS 60906 64 32                                                                                                                                                      
    Current partition structure:                                                                                                                                                                          
         Partition                  Start        End    Size in sectors                                                                                                                                   
    
    Warning: number of heads/cylinder mismatches 255 (FAT) != 64 (HD)                                                                                                                                     
    Warning: number of sectors per track mismatches 63 (FAT) != 32 (HD)                                                                                                                                   
     1 P FAT32 LBA                0   1 32 51199  63 32  104857537 [27GB]                                                                                                                                 
     2 P Linux                51200   0  1 60902  63 32   19871744 [Link2SD]                                                                                                                              
    No partition is bootable 
    

    Both partitions are fsck-clean, and /dev/sdb1 is also chkdsk-clean under Win10.

    fsck -l says: (it all looks good to me)

    Disk /dev/sdb: 63.9 GB, 63864569856 bytes
    64 heads, 32 sectors/track, 60906 cylinders, total 124735488 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x1c580740
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1              63   104857599    52428768+   c  W95 FAT32 (LBA)
    /dev/sdb2       104857600   124729343     9935872   83  Linux
    

    If I try to set the geometry mentioned in testdisk's mismatch warning (H=255, S=63) I get:

    TestDisk 6.14, Data Recovery Utility, July 2013                                                                                                                                                       
    Christophe GRENIER <[email protected]>                                                                                                                                                           
    http://www.cgsecurity.org                                                                                                                                                                             
    
    Disk /dev/sdb - 63 GB / 59 GiB - CHS 7765 255 63                                                                                                                                                      
    Current partition structure:                                                                                                                                                                          
         Partition                  Start        End    Size in sectors                                                                                                                                   
    
     1 P FAT32 LBA                0   1  1  6527  21 22  104857537 [27GB]                                                                                                                                 
    
    Bad relative sector.                                                                                                                                                                                  
     2 P Linux                 6527  21 23  7764  10 54   19871744 [Link2SD]                                                                                                                              
    No partition is bootable
    

    Note that the sector 6527 is now "shared" which doesn't seem right.

    How can I remove the initial mismatch warnings?

  • Tom Hale
    Tom Hale over 7 years
    I raised an issue for this.
  • user3757405
    user3757405 over 6 years
    The issue has been closed: "Old partitioning tools aligns partition to cylinder boundary. To recover lost partitions, a "correct" CHS geometry is needed." It's still open to comment though.
  • user3757405
    user3757405 over 6 years
    +1 for being an authoritative response from (presumably:) the testdisk author
  • Pawel Debski
    Pawel Debski about 4 years
    There are however cases when mismatch of CHS values between HDD MBR and boot sectors of NTFS partitions (an possibly others as well). Could you please enhance your answer to add how to make CHS values "consistent" whatever that could mean.
  • Pawel Debski
    Pawel Debski about 4 years
    Unfortunately I cannot ignore exactly the same warnings as some disk copy / backup tools get confused and anyway sheer number of warnings is annoying. Would you please elaborate on CHS manipulations and what would be correct value (sized/255/63) and how to make it consistent across all partitions.