Ddrescuelog is a tool that manipulates ddrescue logfiles, shows logfile contents, converts logfiles to/from other formats, compares logfiles, tests rescue status, and can delete a logfile if the rescue is done. Ddrescuelog operations can be restricted to one or several parts of the logfile if the domain setting options are used.
The basic operation of ddrescue is fully automatic. That is, you don't have to wait for an error, stop the program, read the log, restart it from a new position, etc.
If you use the logfile feature of ddrescue, the data is rescued very efficiently, (only the needed blocks are read). Also you can interrupt the rescue at any time and resume it later at the same point.
Ddrescue does not write zeros to the output when it finds bad sectors in the input, and does not truncate the output file if not asked to. So, every time you run it on the same output file, it tries to fill in the gaps without wiping out the data already rescued.
Automatic merging of backups: If you have two or more damaged copies of a file, cdrom, etc, and run ddrescue on all of them, one at a time, with the same output file, you will probably obtain a complete and error-free file. This is so because the probability of having the same area damaged in all copies is low. Using the logfile, only the needed blocks are read from the second and successive copies.
Ddrescue recommends lzip for compression of backups because the lzip format is designed for long-term data archiving and provides data recovery capabilities which nicely complement those of ddrescue. (Ddrescue fills unreadable sectors with data from other copies, while lziprecover corrects corrupt sectors with data from other copies). If the cause of file corruption is damaged media, the combination ddrescue + lziprecover is the best option for recovering data from multiple damaged copies.
Recordable CD and DVD media keep their data only for a finite time (typically for many years). After that time, data loss develops slowly with read errors growing from the outer media region towards the inside. Just make two (or more) copies of every important CD/DVD you burn so that you can later recover them with ddrescue.
The logfile is periodically saved to disc. So in case of a crash you can resume the rescue with little recopying.
Also, the same logfile can be used for multiple commands that copy different areas of the file, and for multiple recovery attempts over different subsets.
Ddrescue also features a "fill mode" able to selectively overwrite parts of the output file, which has a number of interesting uses like wiping data, marking bad areas or even, in some cases, "repair" damaged sectors.
One of the great strengths of ddrescue is that it is interface-agnostic, and so can be used for any kind of device supported by your kernel (ATA, SATA, SCSI, old MFM drives, floppy discs, or even flash media cards like SD).
An online manual for ddrescue can be found here.
/gnu/ddrescue/on your favorite GNU mirror. For other ways to obtain ddrescue, please read How to get GNU Software. The latest released version will be the most recent version available at http://ftp.gnu.org/gnu/ddrescue/.
Old versions and testing versions can be found at http://download.savannah.gnu.org/releases/ddrescue/.
An archive of the bug report mailing list is available at http://lists.gnu.org/mailman/listinfo/bug-ddrescue.
You may also help ddrescue by donating money via PayPal or debit/credit card.
See also the ddrescue project page at Savannah.
Please send FSF & GNU inquiries & questions to email@example.com. There are also other ways to contact the FSF.
Please send comments on this particular web page to firstname.lastname@example.org, send comments about www.gnu.org web pages in general to email@example.com, send other questions to firstname.lastname@example.org.
Copyright © 2014 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
Updated: $Date: 2014/09/12 15:22:58 $ $Author: antonio $