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 fairly mature software. As with 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 duplicity's GitLab project and git repository.

In theory many protocols for connecting to a file server could be supported; so far

have been written. Currently duplicity supports deleted files, full unix permissions, directories, and symbolic links, fifos, and device files, but not hard links.

Download

The current release is 2.2.2, released February 3, 2024.

Warning: If you are upgrading from your distribution's repository to the tarball version, or from the tarball version to your distribution's version, please be sure to remove or purge the distribution's version of duplicity. Failure to do so may result in confusing results since the repository and tarball versions may install in different locations.

Older versions are also available for the budding historians in the downloads area.

There are multiple ways of downloading and installing duplicity:

Michael Terry maintains and releases deja-dup here.

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 GPL'ed (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. Refer to the README for the full list of requirements.