GNU ddrescue is a data recovery tool. It copies data from one file or 
block device (hard disk, cdrom, etcetera) to another, trying to rescue 
data in case of read errors.