dd_rescue copies data from one file or block device to another. It is intended for error recovery, so, by default, it doesn't abort on errors, and doesn't truncate the output file. It uses large block sizes to quicken the copying, but falls back to small blocks upon encountering errors. It produces reports that allow you to keep track of bad blocks.
| Tags | Recovery Tools |
|---|---|
| Licenses | GPL |
| Operating Systems | POSIX Linux |
| Implementation | C |
Recent releases


Changes: The options -b and -y have been added. -b logs the numbers of bad blocks in an ASCII file, suitable for the mke2fs -l option (but beware to match hard block size with mke2fs). The -y option sets the frequency of fsync() on the output file; -y 0 results in the maximum speed.


Changes: This release adds proper memalign call to actually make O_DIRECT work.


Changes: This version includes support for input and/or output as non-seekable file descriptors such a pipes or stdout.


Changes: Some bugs have been fixed and some features have been added. The avg CPU load does not overflow any more. The end report is written to the log file even for -q and if no errors occur. -d/D can be used to use O_DIRECT on input/output. -p copies the timestamp and file owner and permissions. A larger soft block size (64k instead of 16k) is used by default. The program now also aborts on ENXIO, ENODEV, and EPERM. There were also minor code cleanups.


No changes have been submitted for this release.