Duplicati

Overview

Duplicati is easy to use. This step by step guide will help you to get started quickly.

Duplicati was designed for online backups from scratch and is not only data efficient but also handles network issues nicely. The backup client allows to resume interrupted backups and regularly tests the content of backups. This allows an early detection of broken backups on corrupt storage systems.

A graphical user interface with a wizard-style interface as well as a command-line version for usage in headless environments is provided by Duplicati. Both interfaces use the same core and thus have the same set of features and capabilities.

The service is compatible with Linux as well as Windows.

Setup

Linux / Ubuntu

  1. Create an Exoscale SOS Bucket to store your backups
  2. Create an IAM Key to have access to your Exoscale SOS Bucket
  3. Install the needed packages on Ubuntu (see the Duplicati documentation for details) For this guide we use the following commands:
    wget https://updates.duplicati.com/beta/duplicati_2.0.6.3-1_all.deb
    apt install ./duplicati_2.0.6.3-1_all.deb
    

Change /etc/default/duplicati to add webservice part, please restrict access to it over security group settings

See our community page for more details

    root@vm2backup:~# cat /etc/default/duplicati
    # Defaults for duplicati initscript
    # sourced by /etc/init.d/duplicati
    # installed at /etc/default/duplicati by the maintainer scripts
    #
    # This is a POSIX shell fragment
    #
    # Additional options that are passed to the Daemon.
    DAEMON_OPTS="--webservice-interface=any --webservice-port=8200 --portable-mode"

Enable and start Duplicati service afterwards

    root@vm2backup:~# vi /etc/default/duplicati
    root@vm2backup:~# systemctl enable duplicati.service
    Created symlink /etc/systemd/system/multi-user.target.wants/duplicati.service → /lib/systemd/system/duplicati.service.
    root@vm2backup:~# systemctl daemon-reload
    root@vm2backup:~# systemctl start duplicati.service
    root@vm2backup:~# systemctl status duplicati.service
    duplicati.service - Duplicati web-server
    Loaded: loaded (/lib/systemd/system/duplicati.service; enabled; vendor preset: enabled)
    Active: active (running) since Wed 2022-06-01 10:46:52 UTC; 4s ago
    Main PID: 14187 (mono)
    Tasks: 16 (limit: 4672)
    Memory: 33.3M
    CGroup: /system.slice/duplicati.service
        ├─14187 DuplicatiServer /usr/lib/duplicati/Duplicati.Server.exe --webservice-interface=any --webservice-port=8200 --portable-mode
        └─14207 /usr/bin/mono-sgen /usr/lib/duplicati/Duplicati.Server.exe --webservice-interface=any --webservice-port=8200 --portable-mode
    Jun 01 10:46:52 vm2backup systemd[1]: Started Duplicati web-server.
  1. Connect to the webinterface of Duplicati to configure your backup

Change to S3 for destination

In this example we are using a bucket in BG-SOF-1 to store our backups

Select “NO”

Select “YES”

If you run backups from multiple instances to the same bucket, please create separate folder for each instance (e.g.: vmbackup/”instancename”)

Select folders and files which you want to backup

Define a schedule

Choose your retention

Confirm storing of passphrase

Click “Run now” to start the backup immediately

Duplicati starts the backup to your bucket

Restore files from the backup

Choose restore source

Select files to restore

Set restore options

Restore starts

Check restore on vm2backup

    root@vm2backup:~# cd /tmp/restore/
    root@vm2backup:/tmp/restore# ls -ltr
    total 15528
    -rw-r--r-- 1 root root 15898608 Jun 17  2021 duplicati_2.0.6.3-1_all.deb
    root@vm2backup:/tmp/restore#

Additional resources

Duplicati User’s Manual