I have been using an ST2000DM001 hard drive with an old G3 Station SATA-USB 2.0 adapter (JMicron JMB509 controller), the HDD has one ext4 partition.

After putting the HDD into a newer, SATA-USB 3.0 adapter (IS621 controller) bought from China, the mass storage device is recognized, lsblk and parted shows sdb, but it is unable to find the partition on it, all the space is marked unallocated, nothing can be mounted. Sector numbers and size are correct in gparted, a warning shows up "/dev/sdb: unrecognised disk label".

After refitting into the old configuration, it works again. So far I have not tried to reformat with the new adapter because there is data on it. Windows 10 also recognizes the mass storage device in the device manager.

What does the recognition of partitions has to do anything with a low-level SATA controller?

  • Sometimes USB-SATA bridge chips from China are cheap knockoffs of the original chips and don't really work as intended. What happens if you dd the initial region (including partition table) via USB-SATA bridge, and compare it to the one you get in the old enclosure? – dirkt Oct 21 '16 at 11:47
  • Exact match on the first 128 MB with dd and diff. Valid data is present with hexdump. – Gábor Dani Oct 21 '16 at 12:28
  • Interesting. What does fdisk -l /dev/sdb and fdisk -l your-dd-file show? I just tested, it looks like parted doesn't like a missing/wrong secondary GPT header, so also try to dd a range at the end, and compare those (secondary GPT header is at end of the harddisk), assuming a GPT partioning scheme. – dirkt Oct 21 '16 at 15:30
  • 1
    Problem solved. The hard drive was formatted with 4k sector size and the new chip only supported 512 byte sector transfer, while I only checked the physical sector size. I reformatted it using the new adapter and it works. – Gábor Dani Nov 2 '16 at 18:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.