rsync can be used to copy a filesystem from
one host to another, or
for backups using rsync's --link-dest option plus a small wrapper
Backshift is only for backups, and works analogously to
rsync --link-dest, but it deduplicates variable-lengthed blocks of
the files both intra-host and inter-host, and compresses those
blocks using xz.
Specify files to backup with GNU or BSD find, EG "find / -xdev -print0 | backshift --backup", analogous to cpio
Extract files by running "backshift --produce-tar | tar xvfp -" (the tarball is assembled from deduplicated, compressed
chunks on the fly)
Perform remote restores by running "backshift --produce-tar | ssh email@example.com tar xvfp -".
Backshift is not just another tar frontend. Saved data
is stored in an open but created-for-the-purpose, highly compressed format
that can be assembled into a tar archive to stdout on request.
Important note about 1.11:
1.11 could sometimes fail to back up new filenames, though it did fine with preexisting filenames.
1.10 and below, and 1.20 and above, don't have the problem.
If you're running 1.11, you should change versions immediately.