This is a complete guide describes how to rescue your data from old and wrecked HDD.
Suppose you are using macOS and your endangered disk is formatted with HFS+.
diskutil list to verify that which drive is damaged.
This article assumes that
disk2 is the damaged AND a partition
disk2s2 is what you expected to be rescued. You don't want to save
disk2s1 that is usually EFI partition.
To prevent extra load, unmount the damaged disk:
diskutil unmountDisk disk2.
If you never been
brew install ddrescue to install them on your machine.
cd /Volumes/AnotherDriveLargerThanDamagedDrive sudo ddrescue -n -v /dev/disk2s2 ./hdimage.dmg ./mapfile
So this command will start rescuing your data from
/dev/disk2s2 partition to
hdimage.dmg while writing log to
You might want to rescue data as fast as possible. option
-n is here for. This will skip scraping phase that causes aggressive disk access.
-v stand for verbose logging.
sudo ddrescue -r5 -v /dev/rdisk2s2 ./hdimage.dmg ./mapfile
When the first command completed, do it again with different parameters to aggressively scrape bad area failed to access the first time.
-r5 means ddrescue will try rescuing damaged area for 5 times.
/dev/rdisk2s2 this time.
r stand for raw so this will access the disk more direct way.
Beware: You MUST use same
mapfilebetween two commands.
mapfileremains information of which blocks were rescued.
hdimage.dmg and copy files and directories to a new drive. If the image is broken, you can recover it using