I have a WD Passport 1TB external hard drive that ddrescue managed to save 95% of before the drive stopped reading at all.
The recovered data is stored as
$ mmls recovery.img DOS Partition Table Offset Sector: 0 Units are in 512-byte sectors Slot Start End Length Description 000: Meta 0000000000 0000000000 0000000001 Primary Table (#0) 001: ------- 0000000000 0000002047 0000002048 Unallocated 002: 000:000 0000002048 1953458175 1953456128 NTFS / exFAT (0x07)
However I couldn't mount the image as NTFS:
$ sudo mount -t ntfs recovery.img /mnt NTFS signature is missing. Failed to mount '/dev/loop11': Invalid argument The device '/dev/loop11' doesn't seem to have a valid NTFS. Maybe the wrong device is used? Or the whole disk instead of a partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around? $ sudo ntfsfix recovery.img Mounting volume... NTFS signature is missing. FAILED Attempting to correct errors... NTFS signature is missing. FAILED Failed to startup volume: Invalid argument NTFS signature is missing. Trying the alternate boot sector Unrecoverable error Volume is corrupt. You should run chkdsk.
chkdsk recovery.img on my Windows machine said the file name is not valid.
I also tried using an offset (2048 * 512) as described in Ubuntu DataRecovery docs:
$ sudo mount -t ntfs -o loop,force,offset=1048576 recovery.img /mnt Failed to read last sector (1953456126): Invalid argument HINTS: Either the volume is a RAID/LDM but it wasn't setup yet, or it was not setup correctly (e.g. by not using mdadm --build ...), or a wrong device is tried to be mounted, or the partition table is corrupt (partition is smaller than NTFS), or the NTFS boot sector is corrupt (NTFS size is not valid). Failed to mount '/dev/loop11': Invalid argument The device '/dev/loop11' doesn't seem to have a valid NTFS. Maybe the wrong device is used? Or the whole disk instead of a partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
[ List ] files actually works, so I will try to copy from there. But I would like to mount if possible.
Any ideas for what I should try now?
Edit: result of kpartx, using the instructions listed here:
$ sudo kpartx -l recovery.img loop11p1 : 0 1953456128 /dev/loop11 2048 $ sudo kpartx -a recovery.img device-mapper: resume ioctl on loop11p1 failed: Invalid argument create/reload failed on loop11p1