Projects / dd_rescue


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. dd_rescue features a number of optimizations, such as sparse block detection, preallocation, and Linux zerocopy (splice). It supports data protection by (multi-pass) overwriting of files or partitions with good and fast random numbers.

Operating Systems

RSS Recent releases

  •  03 Mar 2014 23:18

Release Notes: This version includes a plugin interface (that allows analysis or transformation of data prior to being written) an MD5 plugin, the use of posix_fadvise(), and the output of only short usage info on incorrect input parameters.

  •  26 Feb 2014 00:53

Release Notes: Refactoring allows for better runtime and build time feature detection, resulting in support for building against Android (NDK) and in fast AVX2 sparse block detection. This version also brings a new option -u/--rmvtrim that removes a written (typically zero-filled) file again after completion and issuing an fstrim operation.

  •  20 Aug 2013 08:48

Release Notes: The -p/--preserve option now also copies extended attributes (including ACLs) if there are any. Many checks and test cases have been added to make check. Half-empty blocks are now detected now in sparse detection. If copying with an odd file offset, the odd-sized write will be done first so that further accesses should be better aligned, which should help with performance (and optionally sparse detection).

  •  08 Aug 2013 23:31

Release Notes: The main change is a fix for a bug where the last block could have appended zeros if hardbs==softbs (bnc #833765). Beyond that, ARM sparse detection has been sped up a bit (~15%), and the man page has a clarification w.r.t. the meaning of -y. autoconf is now used to detect platform features to help portability.

Release Notes: This release brings some further optimization of the SSE2 sparse block detection (adding 40% performance). There's also code for AVX2, but it's disabled, as it couldn't be tested. There's a test case for the 1.35/1.36 bug now that can be run by make check. ETA and curr.rate have been improved a bit (floating averages), and the --force/-f switch gained the capability to override a non-zero output position for non-seekable ouput files.

RSS Recent comments

07 Jul 2013 01:27 Bisqwit Thumbs up

Nice! I once wrote basically the same project :-)


Project Spotlight

Model Railroad System

A software package that can help you run your railroad.


Project Spotlight


A GUI frontend for the efax fax program.