Duply – A shell frontend to duplicity for simplified backups

Sponsored Link
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.

Duplicity Features

Duplicity implements a traditional backup scheme, where the initial archive contains all information (full backup) and in the future only the changed information is added. However, here are some advantages it may have over other similar solutions:

Easy to use: Although duplicity is a command-line utility, the semantics are relative simply. To take a basic example, this command:

duplicity /usr scp://host.net/target_dir
backs up the /usr directory to the remost host host.net via scp.

Encrypted and signed archives: The archives that duplicity produces can be encrypted and signed using GnuPG, the standard for free software cryptology. The remote location will not be able to infer much about the backups other than their size and when they are uploaded. Also, if the archives are modified on the remote side, this will be detected when restoring.

Bandwidth and space efficient: Duplicity uses the rsync algorithm so only the changed parts of files are sent to the archive when doing an incremental backup. For instance, if a long log file increases by just a few lines of text, a small diff will be sent to and saved in the archive. Other backup programs may save a complete copy of the file.

Standard file format: Athough archive data will be encrypted, inside it is in standard GNU-tar format archives. A full backup contains normal tarballs, and incremental backups are tar archives of new files and the deltas from previous backups. The deltas are in the format produced by librsync's command-line utility rdiff.

Although you should never have to look at a duplicity archive manually, if the need should arise they can be produced and processed using GnuPG, rdiff, and tar.

Choice of remote protocol: Duplicity does not make many demands on its archive server. As long as files can be saved to, read from, listed, and deleted from a location, that location can be used as a duplicity backend. Besides increasing choice for the user, it can make a server more secure, as clients only require minimal access.

duply is a frontend for the mighty duplicity magic. duplicity is a python based shell application that makes encrypted incremental backups to remote storages. Different backends like ftp, sftp, imap, s3 and others are supported.

duply simplifies running duplicity with cron or on command line by:

keeping recurring settings in profiles per backup job
automated import/export of keys between profile and keyring
enabling batch operations eg. backup_verify_purge
executing pre/post scripts
precondition checking for flawless duplicity operation

Install Duply on ubuntu

Open the terminal and run the following command

sudo apt-get install duply

Using Duply

first time usage (profile creation)

duply [profile] create

Duply Examples

create profile ‘test'

duply test create (don't forget to edit this new conf file)

backup ‘test' now

duply test backup

List available backup sets of profile ‘test'

duply test status

List and delete outdated backups of ‘test'

duply test purge --force

Restore latest backup of ‘test' to /mnt/restore

duply test restore /mnt/restore

Restore /etc/passwd of ‘test' from 4 days ago to /root/pw

duply test fetch etc/passwd /root/pw 4D

A one line batch job on ‘test' for cron execution

duply test backup_verify_purge --force

Batch job to run a full backup with pre/post scripts

Duply test pre_full_post

Check Man Page for more details.

Sponsored Link

Related posts

Leave a comment

Your email address will not be published. Required fields are marked *