I have a 1TB hard disk with 512-byte sectors that I have been using through a USB disk enclosure for a good many years. However, the enclosure has now died.
When I transferred it to a new enclosure I found that Windows doesn't read it - it just shows up as a 'Local Disk'.
From various research, I have found that the cause is that the original USB enclosure was translating the 512-byte sectors on the disk and presenting them to the outside world as 4k sectors, instead. The new enclosure is not doing this, which is why the disk cannot be read.
I have found a question which sounds like a similar problem (How to correct 512-byte sector MBR on a 4096-byte sector disk?), but (a) from my reading, this sounds like the opposite of my situation; and (b) it doesn't describe the actual steps needed to fix the problem (just a general approach).
The theory
Aside from attempting to find another enclosure that does the same kind of translation (which feels like just kicking the can down the road, and an unnecessary expense) the solution, as far as I can glean, is to fix the values in the MBR so that they reflect the real 512-byte disk geometry rather than the previously perceived 4k geometry.
As the partition table sizes are all defined in terms of numbers of sectors, I will need to convert the existing values, which specify the size in 4k sectors (i.e. ByteOffset = N x 4096
) so that they instead contain the equivalent value of N
for 512-byte sectors (i.e. ByteOffset = N x 512
). In other words, I need to multiply each of these values by 8.
Q1: Am I correct - is that all I need to do, or is there more complexity to it than that?
The practice
Assuming the above solution is correct, what I am really asking for is whether there is a tool or a set of clear instructions that anyone can provide so that I am able to make these changes to the disk. The less-risky, the better! (For example, tools for direct editing the MBR fields by entering decimal numbers would be preferable to having to deal with hex-values directly on disk.)
Q2: What tool(s) should I use for this (based on the above criteria)?
Q3: What fields/offsets do I need to edit? (The disk has a single partition which fills the disk.)
Note that I have access to the following systems: Windows XP, Windows 10, Ubuntu 15.4. My preference would be for a Windows solution, but a Linux solution would be fine if that is necessary - I am comfortable using the command-line.
Also, I have done byte-level manual disk editing tasks in the past, so this is a possibility if there really is no better way to resolve this.
Update
The external drive is a Dynamode 3.5" USB 2.0 enclosure, like this one.
As requested, here is the output from the Linux fdisk
command.
root@buttons:~# fdisk -l /dev/sdb
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 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
Disklabel type: dos
Disk identifier: 0x000210df
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 1953523711 1953521664 931.5G 7 HPFS/NTFS/exFAT
root@buttons:~# fdisk -l /dev/sdb1
Disk /dev/sdb1: 931.5 GiB, 1000203091968 bytes, 1953521664 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
Disklabel type: dos
Disk identifier: 0x2052474d
Device Boot Start End Sectors Size Id Type
/dev/sdb1p1 ? 6579571 1924427647 1917848077 914.5G 70 DiskSecure Multi-Boot
/dev/sdb1p2 ? 1953251627 3771827541 1818575915 867.2G 43 unknown
/dev/sdb1p3 ? 225735265 225735274 10 5K 72 unknown
/dev/sdb1p4 2642411520 2642463409 51890 25.3M 0 Empty
Partition table entries are not in disk order.
15.04
, is quite rather old and unsupported: Vivid Vervet end of life was on February 4, 2016. You may want to try (maybe on a USB pen) a more recent version. BTW it may result useful to edit your post adding the specifications of the old usb box. Maybe it is somehow still possible to emulate the hardware, install the firmware on the vritual device and give the hdd to the emulated machine with the aim to extract all as soon as it possible. Next format it again (and buy a replacement, old hardware is prone to break).