Ddrescue

ddrescue is a tool provided by GNU to retrieve data from failing (block) storage devices like hard disk drives, cdrom or memory sticks etc. It uses a similar technique as dd and copies block by block, but has an itelligent algorithm to recover failed data.

Installation
You can install using the following command:

Usage
General usage of ddrescue to recover data

Disk to Image
In this scenario the hard disk drive is about to fail and we want to create a copy of it in form of an image.


 * First round, we just copy every block without read error and log the errors into


 * Second round, we copy only the bad blocks and try 3 times to read from source before we give up


 * Now the image could be mounted as loop device and the file system checked for corruption

Disk to Disk
In this scenario the hard disk drive is about to fail and we want to create a copy of it on out new hard disk drive.
 * First round, we just copy every block without read error and log the errors into


 * Second round, we copy only the bad blocks and try 3 times to read from source before we give up


 * Now the new drive could be mounted and the file system checked for corruption

External resources

 * gnu.org homepage