duplicity
Encrypted bandwidth-efficient backup using the rsync algorithm
What is it?
Duplicity backs directories by producing encrypted tar-format volumes and uploading them to a remote or local file server. Because duplicity uses librsync, the incremental archives are space efficient and only record the parts of files that have changed since the last backup. Because duplicity uses GnuPG to encrypt and/or sign these archives, they will be safe from spying and/or modification by the server.
The duplicity package also includes the rdiffdir utility. Rdiffdir is an extension of librsync's rdiff to directories---it can be used to produce signatures and deltas of directories as well as regular files. These signatures and deltas are in GNU tar format.
Current development status
Duplicity is still in Beta. As any software, it may still have a few bugs, but will work for normal usage and is in use now for large personal and corporate backups. If you have questions try the mailing list. Bug reports and bug fixes can be entered through the Launchpad project page.
In theory many protocols for connecting to a file server could be supported; so far ssh/scp, local file access, rsync, ftp, HSI, WebDAV, and Amazon S3 have been written. Currently duplicity supports deleted files, full unix permissions, directories, and symbolic links, fifos, and device files, but not hard links.
Download
Refer to the Changelog for overview of the recent changes and to GNU Changelog for the gory details from CVS.
Development has begun on 0.7.00 and is slated for mid-2010.
The current stable release is 0.6.08b, released March 11, 2010.
- Tarball: duplicity-0.6.08b.tar.gz
- i386 RPM: duplicity-0.6.08b-0.fdr.6.i386.rpm
- Source RPM: duplicity-0.6.08b-0.fdr.6.src.rpm
The last release of 0.5 series is 0.5.20, released August 28, 2009.
- Tarball: duplicity-0.5.20.tar.gz
- i386 RPM: duplicity-0.5.20-0.fdr.6.i386.rpm
- Source RPM: duplicity-0.5.20-0.fdr.6.src.rpm
Older versions are also available for the budding historians in the downloads area.
Michael Terry maintains the duplicity PPA for duplicity and deja-dup PPA for deja-dup. Updates to the PPA will sometimes lag behind the above updates, so please be patient.
Edgar Soldin maintains duply (formerly known as ftplicity), a shell front end that simplifies the usage by keeping settings for backup jobs in profiles. It supports pre/post backup scripts and executing multiple commands in a batch mode.
All the code here is GPLed (free software). Duplicity is also part of the Fedora, Debian, and Ubuntu distributions of GNU/Linux.
Requirements
Duplicity requires a POSIX-like operating system. It is best used under GNU/Linux. It also requires:
- Python v2.3 or later (Python Home)
- librsync v0.9.6 or later (librsync Home)
- GnuPG for encryption (GnuPG Home)
- NcFTP version 3.1.9 or later (NcFTP Home)
- Boto 0.9d or later (Boto Home)
If you install from the source package, you will also need:
- Python development files, normally found in module 'python-dev'
- librsync development files, normally found in module 'librsync-dev'