---
name: "ftplicity"
section: "1"
platform: "linux"
package: "duply"
version: "1.5.2.3-1"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/duply"
---

# ftplicity(1)

a shell frontend to duplicity for simplified backups

Part of [duply(1)](/duply/1.md).

## NAME

duply - a shell frontend to duplicity for simplified backups

## SYNOPSIS

**duply** *profile* **create**

**duply** *profile command \[options ...\]*

**duply** *profile command\[\_command\_...\] \[options ...\]*

## DESCRIPTION

**Duply** deals as a wrapper for the mighty duplicity magic. It simplifies running duplicity with cron or on command line by:\
   \- keeping settings in profiles per backup job \
   \- enabling batch actions eg. backup\_verify\_purge\
   \- executing pre/post scripts\
   \- precondition checking for flawless duplicity operation

For each backup job one configuration profile must be created. The profile folder will be stored under *~/.duply/\<profile*\> (where '~' is the current users home directory).

*Hint*: If the folder */etc/duply* exists the profiles for the super  user root will be searched and created there.

## USAGE

First time usage (profile creation):

```
    duply <profile> create
```

General usage in single mode (see EXAMPLES):

```
    duply <profile> <command> [<options> ...]
```

General usage in batch mode joining commands with '\_' (see EXAMPLES):

```
    duply <profile> <command1>_<command2>[_<command3>...] [<options> ...]
```

Non duply options are passed on to duplicity (see OPTIONS).

## PROFILE

### location for profiles

Indicated by a profile name i.e. *sample*, which is resolved to  *~/.duply/sample* ('~' expands to environment variable `$HOME`).

Superuser root can place profiles under */etc/duply* if the folder is manually created before running duply.

ATTENTION: If */etc/duply/* is created, old profiles under */root/.duply/* have to be moved manually to the former or will cease to work.

### using profiles

Usually only the profile name will be used:

```
    duply humbug backup
```

Alternatively a *path* might be used. This might be useful for quick testing,  restoring or exotic locations. Shell expansion should work as usual:

```
    duply ~/.duply/humbug backup
```

ATTENTION: The path must contain at least one '/', e.g *./test* instead of only *test*.

## COMMANDS

- **usage**

  Get usage help text.

- **create**

  Creates a configuration profile.

- **backup**

  Backup with pre/post script execution (as batch the same as: pre\_bkp\_post)

  - •

    as *full* backup if parameter full\_if\_older matches or no earlier backup is found.

  - •

    as *incremental* backup in all other cases.

- **bkp**

  As above but without executing pre/post scripts.

- **full**

  Force full backup.

- **incr**

  Force incremental backup.

- **list** *\[age\]*

  List all files in backup (as it was at *age*, default: now).

- **status**

  Prints backup sets and chains currently in repository.

- **verify**

  List files changed since latest backup.

- **purge** *\[--force\]*

  Shows outdated backup archives (older than `$MAX_AGE`). Option *--force* delete these files.

- **purge-full** *\[--force\]*

  Shows outdated backups (more than `$MAX_FULL_BACKUPS`), the number of *recent* full backups and associated incrementals to keep. Option *--force* delete these files.

- **cleanup** *\[--force\]*

  Shows broken backup archives (e.g. after unfinished run). Option *--force* delete these files.

- **restore** *target\_path \[age\]*

  Restore the backup to *target\_path* (as it was at *age*).

- **fetch** *src\_path target\_path \[age\]*

  Restore single file/folder from backup (as it was at *age*).

- **pre/post**

  execute the pre or post script of *profile* (for debugging purposes).

## OPTIONS

- **--force**

  Passed to duplicity (see commands: purge, purge-full, cleanup).

- **--preview**

  Do nothing but print out generated duplicity command lines.

## EXAMPLES

Create profile 'humbug':

```
    duply humbug create
```

and then edit the resulting *conf* file of this profile.

Backup 'humbug' now:

```
    duply humbug backup
```

List available backup sets of profile 'humbug':

```
    duply humbug status
```

List and delete obsolete backup archives of 'humbug':

```
    duply humbug purge --force
```

Restore latest backup of 'humbug' to /mnt/restore:

```
    duply humbug restore /mnt/restore
```

Restore /etc/passwd of 'humbug' from 4 days ago to /root/pw:

```
    duply humbug fetch etc/passwd /root/pw 4D
```

See *man duplicity*, section TIME FORMATS for the time format.

A one line *batch job* on 'humbug' for cron execution:

```
    duply humbug backup_verify_purge --force
```

## FILES

Files in the profile folder(~/.duply/\<profile\>):

```
  conf .......... main configuration file
  pre ........... executed before a backup
  post .......... executed after a backup
  gpgkey.*.asc .. exported GPG key file(s)
  exclude ....... a globbing list of included or excluded files/folders
```

The rules for the *exclude* file can be found in *man duplicity*, section FILE SELECTION).

## IMPORTANT

Copy the *whole* profile folder after the first backup to a safe place. It contains everything needed to restore your backups. You will need  it if you have to restore the backup from another system (e.g. after a  system crash). Keep access to these files restricted as they contain  *all* information (gpg data, ftp data) to access and modify your backups.

Repeat this step after *all* configuration changes. Some configuration  options are crucial for restoration.

## BUGS

This program is still in development. If you find bugs write a bug report on:\
   http://sourceforge.net/projects/ftplicity/.

## AVAILABILITY

For newer versions see http://sourceforge.net/projects/ftplicity/.

## COPYRIGHT and LICENSE

Copyright (C) 2006 Christiane Ruetten, 2008-2010 Edgar Soldin

This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License version 2 can be found in \`/usr/share/common-licenses/GPL-2'.

## AUTHOR

Duply was written by Christiane Ruetten and Edgar Soldin.

This manual page was written by Joachim Wiedorn \<ad\_debian at joonet.de\> for the Debian project (and may be used by others).

## SEE ALSO

[*duplicity*(1)](/duplicity/1.md)
