Zum Inhalt springen

Duply/Konfiguration

Aus Foxwiki

Profil

Angegeben durch einen Pfad oder einen Profilnamen (<profile>), der zu '~/.duply/<profile>' aufgelöst wird (~ wird zur Umgebungsvariable $HOME erweitert)

  • Der Superuser root kann Profile unter '/etc/duply' ablegen
  • Erstellen Sie einfach den Ordner manuell, bevor Sie duply als Superuser ausführen
Hinweis
Bereits vorhandene Profile im Home-Ordner von root funktionieren nicht mehr, sofern sie nicht manuell an den neuen Speicherort verschoben werden
Beispiel
duply humbug backup

Alternativ kann ein _Pfad_ verwendet werden, z.B. für schnelle Tests, Wiederherstellungen oder exotische Speicherorte

  • Die Shell-Erweiterung sollte wie gewohnt funktionieren
Hinweis
Der Pfad muss mindestens ein Pfadtrennzeichen '/' enthalten, z.B. './test' statt nur 'test'
Beispiel
duply ~/.duply/humbug backup

Profil erstellen

sudo duply <backupname> create

Duply-Profil

Ein duply-Profil wird im Home-Verzeichnis des Benutzers unter ~/.duply/ angelegt und besteht aus den folgenden Dateien

  • gpg-key.asc (nur wenn ein gpg-key exportiert wurde)
  • conf
  • pre und post
  • exclude

Kryptografie

Kryptografie einrichten

Kryptografie

GnuPG-Schlüssel erstellen

Voraussetzung

Key-ID und das Passwort des GnuPG-Keys müssen dafür hinterlegt werden

GnuPG_KEY='_GnuPG_KEY_ID_'
GnuPG_PW='_GnuPG_PASSWORD_'

Key-ID anzeigen

Private-Key
sudo gpg --list-secret-keys --keyid-format LONG
gpg: "Trust-DB" wird überprüft
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: Tiefe: 0 gültig: 1 signiert: 0 Vertrauen: 0-, 0q, 0n, 0m, 0f, 1u
gpg: nächste "Trust-DB"-Pflichtüberprüfung am 2021-11-04
/root/.gnupg/pubring.kbx
------------------------
sec rsa4096/F47E1B7450082D11 2020-11-04 [SC] [verfällt: 2021-11-04]
60E3D3C9ED78CE4A40322BBAF47E1B7450082D11
uid [ ultimativ ] Robert Quies (Es grünt so grün, wenn Spaniens Blüten blühn.) <raqju@web.de>
ssb rsa4096/B2E20485FF7FC772 2020-11-04 [E] [verfällt: 2021-11-04]

sudo gpg --list-keys --keyid-format LONG
/root/.gnupg/pubring.kbx
------------------------
pub rsa4096/F47E1B7450082D11 2020-11-04 [SC] [verfällt: 2021-11-04]
60E3D3C9ED78CE4A40322BBAF47E1B7450082D11
uid [ ultimativ ] Robert Quies (Es grünt so grün, wenn Spaniens Blüten blühn.) <raqju@web.de>
sub rsa4096/B2E20485FF7FC772 2020-11-04 [E] [verfällt: 2021-11-04]

Kompression und Kryptografie

GnuPG_OPTS

Optionen zur Kompression und Art der Kryptografie

  • bzip2 komprimiert
  • Advanced Encryption Standard, auch Rijndael-Algorithmus mit einer Schlüssellänge von 256 werden
GnuPG_OPTS='--compress-algo=bzip2 --personal-cipher-preferences AES256'

Prüfen der GnuPG-Key und GnuPG-Passphrase

De-/Aktivieren der Überprüfung GnuPG-Key und GnuPG-Passphrase
  • duply prüft vor jeder Aktion ob der GnuPG-Key gültig ist und die Passphrase korrekt ist
  • Dies kann durch die Option GnuPG_TEST='disabled' unterbunden werden
Aktiviert
GnuPG_TEST='disabled'
Deaktiviert
# GnuPG_TEST='disabled'

Ziel und Quelle

Ziel und Quelle des Backups

Allgemeine Syntax des hosts

scheme://[user:password@]host[:port]/[/]path
Protokolle und Syntax zur Datenübertragung

duply versteht alle gängigen Protokolle zur Datenübertragung

In der conf-Datei befindet sich meistens eine Liste der wichtigsten unterstützten Protokolle und deren Syntax

file://[/absolute_]path
ftp[s]://user[:password]@other.host[:port]/some_dir
hsi://user[:password]@other.host/some_dir
cf+<nowiki>https://container_name</nowiki>
imap[s]://user[:password]@host.com[/from_address_prefix]
rsync://user[:password]@other.host[:port]::/module/some_dir
rsync over ssh (only keyauth)
rsync://user@other.host[:port]/relative_path
rsync://user@other.host[:port]//absolute_path
for the s3 user/password are AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY
s3://[user:password]@host/bucket_name[/prefix]
s3+https://[user:password]@bucket_name[/prefix]
scp and sftp are aliases for the ssh backend
ssh://user<nowiki>&lt;/nowiki&gt;</nowiki>[:password]@other.host[:port]/some_dir
tahoe://alias/directory
webdav[s]://user[:password]@other.host/some_dir
Hinweis
Sonderzeichen müssen urlencoded eingetragen werden, außer bei den Parametern TARGET_USER, TARGET_PASS
Ziel des Backups
TARGET='scheme://user[:password]@host[:port]/[/]path'

Es soll das Protokoll ssh zur Datenübertragung genutzt werden

  • Username: user
  • Passwort: KohlIstKrempe969
  • Host: foxtom.net
  • Port: 22
  • Pfad: home/user/backup_PC1
 TARGET='<nowiki>ssh://user:KohlIstKrempe969@foxtom.net:22/home/user/backup_PC1</nowiki>'
Quelle des Backups

Root-Verzeichnis für das Backup setzen

 SOURCE=

Soll ein Backup aus mehreren Unterordnern von / bestehen (Bsp.: /etc /var /home sollen gesichert werden), so muss die SOURCE Variable auf / gesetzt werden.

 SOURCE='/'

In der Regel wird SOURCE='/' gesetzt

Dateien, die in die Sicherung aufgenommen oder von ihr ausgeschlossen werden, werden in der Datei exclude angegeben

Maximales Alter eines Backups

Hinweis
duply löscht keine Backups, sofern man es nicht anfordert

Mit MAX_AGE wird das maximale Alter von Backups bestimmt Das älteste Backup soll maximal ein Jahr alt sein

MAX_AGE=1Y

Anzahl der vollständigen Backups

Mit MAX_FULL_BACKUPS kann bestimmt werden, wie viele Full-Backups duply maximal behält

Es sollen fünf sein

MAX_FULL_BACKUPS=5

Maximales Alter der vollständigen Backups

Alternativ kann mit MAX_FULLBKP_AGE spezifiert werden, wie alt ein Full-Backup sein darf, bevor ein neues Full-Backup erstellt wird

Es soll zwei Wochen alt sein

MAX_FULLBKP_AGE=2W
DUPL_PARAMS="$DUPL_PARAMS --full-if-older-than $MAX_FULLBKP_AGE"

Größe der Backup-Pakete

Um den durch eventuelle Übertragungsfehler entstehenden Zeitverlust einzuschränken, teilt duply standardmäßig seine Backups in 25 MB große Dateien

  • Mit VOLSIZE kann die Größe der erstellten Backup-Pakete geändert werden

Der gewünschte Wert hängt von verschiedenen Faktoren ab

  • Übertragungsgeschwindigkeit
  • Systembelastung
  • Netzwerkbelastung

Vor-/Nachteile

  • Vorteil kleine Pakete
  • Vorteil große Pakete
  • Nachteil kleine Pakete
  • Nachteil große Pakete
Beispiel

Backup-Pakete sollen 10 MB groß sein

VOLSIZE=10
DUPL_PARAMS="$DUPL_PARAMS --volsize $VOLSIZE"

Asynchrone Uploads

Asynchrone Uploads erlauben das Erstellen neuer Archive, bevor bereits erstellte auf den Server geladen wurden

  • Schnelleres Backup
  • Hohe System- und hohe Netzlast

Asynchrone Uploads aktivieren

DUPL_PARAMS="$DUPL_PARAMS --asynchronous-upload"

Dateien

Profile folder

Profile files

Option Beschreibung
/etc/duply
~/.duply/<profile>
conf profile configuration file
pre,post pre/post scripts (see above for details)
gpgkey.*.asc exported GnuPG key files
exclude a globbing list of included or excluded files/folders (see "duplicity manpage", section FILE SELECTION)

SEPARATORS

Option Beschreibung
_ underscore neutral separator
+ plus sign, _and_ conditional AND the next command will only be executed if the previous succeeded
- minus sign, _or_ conditional OR the next command will only be executed if the previous failed
[ ] square brackets, _groupIn_/_groupOut_ enables grouping of commands
Beispiel
'pre+[bkp-verify]_post'

translates to

'pre_and_groupIn_bkp_or_verify_groupOut_post'

TIME FORMATS

For all time related parameters like age, max_age und weitere Refer to the duplicity manpage for all available formats

Beispiele
Option Beschreibung
2002-01-25T07:00:00+02:00 full date time format string
2002/3/5 date string YYYY/MM/DD
12D interval, 12 days ago
1h78m interval, 1 hour 78 minutes ago