thodonal - stock.adobe.com

So gelingt der Einsatz des Backup-Tools duplicity

Duplicity hilft Admins bei der Verwaltung vieler Dateiserver sowie beim Backup und Recovery großer Datenmengen. Erfahren Sie, wie man es installiert, ausführt und Fehler behebt.

Backup-Programme spielen eine entscheidende Rolle bei der effektiven Verwaltung von Linux-Systemen. Bei richtiger Anwendung kann das duplicity-Backup-Tool eine Bereicherung für Ihre Backup-Infrastruktur sein.

Trotz der Beliebtheit von Cloud-Speichern sind Dateiserver für die meisten großen Unternehmen nach wie vor unverzichtbar. Auch Privatanwender und kleine Unternehmen erzeugen eine große Anzahl von Textdokumenten, Bilddateien, Soundclips und anderen wichtigen Daten.

Viele Linux-Backup-Tools und Dienstprogramme für die Dateiverwaltung ermöglichen Systemadministratoren einen effektiven Umgang mit Dateien, darunter die folgenden:

  • Cpio ist ein Dienstprogramm zur Archivierung von Dateien, das bei der Bündelung und Sicherung von Dateien hilft.
  • Dump-restore ist ein allgemeines Sicherungsprogramm für ganze Dateisysteme.
  • Rsync ist ein Tool zur Dateisynchronisierung, das nur geänderte Dateien kopiert.
  • Tar dient zum Bündeln und Komprimieren von Dateien für den Transport mit Protokollen wie Secure Copy Protocol (SCP) oder FTP.
  • Deja Dup bietet eine grafische Schnittstelle für Duplikate.
  • Kopia, ein modernes Tool für Daten-Snapshots, umfasst Komprimierung, Deduplizierung und Verschlüsselung.
  • Time Machine ist ein macOS-Backup-Dienstprogramm, das mit Linux-Servern genutzt werden kann.

Das Open-Source-Programm duplicity hat gegenüber diesen und anderen ähnlichen Tools mehrere Vorteile, darunter verschlüsselte Backups auf gängigen Netzwerk- und Cloud-Zielen. Außerdem bietet es plattformübergreifende Unterstützung für Linux, macOS und Windows. Systemadministratoren können Skripte erstellen, um die Funktionalität anzupassen.

In diesem Artikel wird untersucht, wie duplicity mit den aufgelisteten Tools zusammenhängt, wie man es am besten einsetzt und wie man Probleme behebt.

Was ist duplicity?

Duplicity ist ein weit verbreitetes Dienstprogramm für die Datensicherung in Unternehmen. Es ist Open Source und plattformübergreifend, obwohl es am besten auf Unix-basierten Systemen wie Linux, BSD oder macOS eingesetzt wird. Das Tool ist in Python geschrieben.

Zu den Funktionen von duplicity gehören unter anderem:

  • Remote-Backups über viele Standardprotokolle, einschließlich Secure Shell (SSH), SFTP, SCP, rsync, Amazon S3 und Google Cloud Storage.
  • Vollständige und inkrementelle Sicherungsaufträge.
  • Filter-, Einschluss- und Ausschlussfunktionen.
  • Verschlüsselte und digital signierte Backups.
  • Versionierung von Backups.

Wie unterscheidet sich duplicity von Deja Dup?

Administratoren führen duplicity über die Befehlszeile (CLI) aus und können so erweiterte Einstellungen konfigurieren und Backups in andere skriptgesteuerte Aufgaben integrieren. Das Dienstprogramm Deja Dup ist ein grafisches Frontend (GUI) für duplicity, das es für weniger kommandozeilenerfahrene Benutzer einfacher macht. Deja Dup behält viele der üblichen Funktionen von duplicity bei, bietet aber für die meisten Benutzer eine wesentlich einfachere Oberfläche.

Deja Dup kann auf einigen Linux-Distributionen, wie zum Beispiel Ubuntu, installiert sein. Sie müssen den Paketmanager Ihrer Distribution verwenden, um duplicity hinzuzufügen, wenn Sie es auf einem System verwenden möchten, auf dem es nicht installiert ist.

Wie duplicity kann auch Deja Dup Backup-Aufträge auf Remote- und Cloud-Speicherorte schreiben.

So verwenden Sie duplicity

Das Tool ist ein leistungsfähiges Sicherungsprogramm für Systemadministratoren, die mehrere Dateiserver mit großen Datenmengen verwalten. Es funktioniert am besten, wenn Benutzer es über Skripte automatisieren und mit einem systemd-Timer planen.

Dieses Tutorial demonstriert die notwendigen Schritte für die Verwaltung von Backups mit duplicity, aber Sie werden diese Schritte wahrscheinlich in einen größeren skriptgesteuerten Prozess integrieren. Sie könnten zum Beispiel wöchentliche Vollsicherungen (Full Backup) konfigurieren, die von täglichen inkrementellen Sicherungen unterstützt werden.

Verwenden Sie die folgenden Befehle, um duplicity zu installieren. Geben Sie den folgenden Befehl ein, wenn Sie den DNF-Paketmanager verwenden.

$ sudo dnf install duplicity

Geben Sie den folgenden Befehl ein, wenn Ihre Distribution APT verwendet.

$ sudo apt install duplicity

Ein Backup durchführen

Die allgemeine duplicity-Syntax ist der duplicity-Befehl, gefolgt von Optionen, der Datenquelle und dem Sicherungsziel.

duplicity [options] source destination

Geben Sie zum Beispiel Folgendes ein, um ein Verzeichnis unter /projects auf einem entfernten Host-Verzeichnis namens /backups mit scp zu sichern.

$ sudo duplicity /projects scp://remoteuser@remotehost//backups

Diese Syntax sollte Ihnen vertraut sein; sie entspricht der Standardstruktur vieler Linux-Kopierbefehle von hier nach dort.

Verwenden Sie die Option -dry-run, um einen Backup-Auftrag als Teil Ihres Testprozesses zu simulieren.

Der erste Sicherungsauftrag ist eine Vollsicherung, das heißt, es werden alle angegebenen Dateien gesichert. Danach führt duplicity automatisch inkrementelle Backups durch, bei denen nur geänderte Dateien gesichert werden. Diese Backups sind wesentlich weniger zeitaufwändig. Sie sollten sich darüber im Klaren sein, dass die erste Vollsicherung sehr lange dauern kann, je nachdem, welche Inhalte Sie angeben. Sie können jederzeit eine vollständige Sicherung erzwingen, indem Sie die Option full in den Befehlszeichenfolge einfügen.

Administratoren können zusätzliche Einstellungen, einschließlich GnuPG-Schlüssel, für die Verwaltung verschlüsselter Backups konfigurieren. Sie konfigurieren GnuPG-Schlüsselpaare als separate Aufgabe und rufen die Schlüssel dann als Variablen in einem Skript auf.

Sie können auch eine schlüsselbasierte Authentifizierung für SSH-Verbindungen konfigurieren, um Sicherungsaufträge, die sich über SSH verbinden, vollständig zu automatisieren.

Daten wiederherstellen

Die meisten Tutorials konzentrieren sich auf Backup-Aufträge als kritische Aufgaben, aber die schnelle Wiederherstellung der richtigen Daten ist entscheidend. Die Syntax des duplicity-Wiederherstellungsbefehls ist genau umgekehrt wie die des Backup-Befehls.

$ sudo duplicity [options] destination source

Verwenden Sie den folgenden Befehl, wenn Sie den zuvor angegebenen Beispiel-Backup-Auftrag wiederherstellen möchten.

$ sudo duplicity scp://remoteuser@remotehost//backups/ /restored_projects

Testen Sie diese Funktion sorgfältig, um sicherzustellen, dass Sie mit dem Prozess vertraut sind. Wiederherstellungen sind in der Regel nach einem Datenverlust notwendig, so dass Sie keine Verzögerung wünschen, die Benutzer oder Dienste beeinträchtigt. Dokumentieren Sie den Wiederherstellungsprozess für den Fall, dass andere Administratoren ihn implementieren müssen.

Tipps fürs Troubleshooting

Eines der häufigsten Probleme bei Backups ist die Verwaltung des Zielorts, an dem der Backup-Auftrag geschrieben wird. Prüfen Sie dies zuerst, wenn Ihre duplicity-Aufträge fehlschlagen.

Stellen Sie bei der Fehlerbehebung von duplicity-Problemen die folgenden Fragen:

  • Ist das Speichermedium oder der Speicherplatz zugänglich?
  • Ist das Speichermedium oder der Speicherplatz voll?
  • Verfügt duplicity über Schreibrechte für den Speicherplatz?
  • Verhindert eine Netzwerküberlastung, dass Backup-Aufträge abgeschlossen werden können?
  • Beeinträchtigt ein anderer Prozess den Sicherungsauftrag?
  • Ist der Festplatten-I/O in der Lage, den Sicherungsauftrag zu unterstützen?

Überprüfen Sie alle duplicity- oder Deja Dup-Konfigurationen im Rahmen Ihrer Fehlersuche. Vergessen Sie nicht, die Option -dry-run zu verwenden, um ein Backup zu simulieren.

Erfahren Sie mehr über Backup-Lösungen und Tools