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.
|Operating Systems||POSIX Linux|
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).
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.
Release Notes: The SSE2 optimized sparse block detection had a bug that slipped through the test cases in 1.35/1.36. Fortunately, --sparse / -a is not on by default. The bug is fixed, and that's the reason for a quick release. Apart from that, there are some fixes for this routine for big-endian machines, though that's not relevant for dd_rescue itself.
Release Notes: This release fixes an issue with an overflow when displaying avg.load after a while. It also enables faster detection of zero-filled blocks (sparse mode, option -a) on x86 (32-bit) with runtime detection (unlike x86-64 where you always have SSE2-capable CPUs). There's also some asm code to achieve a 3x speedup of ARM CPUs on this task.