AA_snapshot_sxc_tangarine1_1106414.jpg

© tangarine1, sxc.hu

Schnappschuss

Backups auf der Konsole mit Duplicity

25.02.2010
Wichtige Dokumente gehören ins Backup. Das Konsolen-Tool Duplicity verschlüsselt für Sie Daten und Transfer ausschließlich mit Bordmitteln.

Duplicity hilft beim Aufbau von Backup-Archiven via Konsole. Im Gegensatz zum kommerziellen Pendant aus Kanada, Tarsnap (siehe Artikel in dieser Ausgabe), setzen die Entwickler von Duplicity ganz auf freie Formate und Standards wie Tar, GnuPG und Rsync (Rdiff) und verbinden diese über ein Python-Programm.

Das Projekt setzt einiges an Konsolenarbeit und Wissen voraus. Eine entsprechende Hilfe sucht der unerfahrene Anwender auf der Projektseite [1] aber vergeblich. Die Sourcen der Software selbst haben die Entwickler zwar vorbildlich dokumentiert [2], mehr als ein paar Links zu den englischsprachigen Manpages bieten sie darüber hinaus aber nicht. Und das ohne große Not, denn die wenigen Handgriffe für ein funktionierendes Backup sind schnell erklärt.

Prinzipiell erstellt Duplicity vollständige Sicherungen der jeweils angegebenen Festplattenbereiche. Anschließende Folgebackups erfolgen inkrementell, speichern also nur noch geänderte und neu hinzu gekommene Daten. Diese Delta-Dateien erstellt das Tool Rdiff. Die so erstellten Pakete versenden Sie über SSH, WebDAV, FTP oder Amazon S3.

Die empfangende Gegenstelle darf dabei zum Beispiel ein weiterer Rechner im heimischen Netzwerk sein, alternativ nutzen Sie günstigen Onlinespeicher. Auf dem Server liegen dann GnuPG-verschlüsselte Pakete, mit denen Fremde nichts anzufangen wissen. Weisen diese dennoch Änderungen auf, zeigt die Software dies beim Zurückspielen eines Backups an.

Verschlüsseln

Erstellen Sie zunächst ein neues Schlüsselpaar. Zumindest diesen Teil erledigen Sie dank zahlreicher, einfach zu bedienender GPG-Werkzeuge ohne Schweißperlen in einem grafischen Frontend. Ubuntu liefert beispielsweise das vorinstallierte Tool Seahorse mit. Sie finden das Programm dort unter Anwendungen | Zubehör | Passwörter und Verschlüsselung.

Die Tastenkombination [Strg]+[N] öffnet ein Fenster, in dem Sie den Schlüsseltyp festlegen (Abbildung 1). Für ein Backup innerhalb Ihres Netzwerks bietet sich das SSH-Protokoll an. Wählen Sie daher den Punkt SSH-Schlüssel und klicken Sie auf Weiter. Tragen Sie zur Identifikation für den Schlüssel eine Mailadresse ein und geben Sie einen sprechenden Namen an, wie etwa Backup-Schlüssel.

Abbildung 1: GPG-Schlüsselpaare generieren Sie bequem über ein grafisches Tool Ihrer Distribution, wie zum Beispiel Seahorse bei Ubuntu.

Die sinnvollen Voreinstellungen nutzend, klicken Sie auf Erstellen und Einrichten. Legen Sie nun ein Passwort für den Schlüssel fest. Der folgende Dialog erwartet den Hostnamen und einen Benutzer des entfernten Rechners. Nach der Passworteingabe für diesen Benutzer sendet Seahorse den öffentlichen Teil des Schlüssel an die Gegenstelle.

Lokales Backup

Duplicity liegt derzeit in der stabilen Version 0.6.06 vor. Benutzer von RPM-basierten Distributionen wählen das entsprechende Paket von der Projektseite. Nutzen Sie ein Debian-basiertes System, verwenden Sie besser nicht die veraltete und fehlerhafte Version 0.5.18 aus dem Repository, sondern greifen wie alle, bei denen das RPM-Paket versagt, zu den Quellen. Was Sie für ein erfolgreiches Übersetzen benötigen, verrät der Kasten "Duplicity kompilieren".

Duplicity kompilieren

Die Voraussetzung für ein erfolgreiches Übersetzen und Installieren bilden die Pakete librsync (librsync1 bei Ubuntu), NCFTP sowie eine Python-Installation inklusive der Developer-Pakete. Zusätzlich zur Python-Standardbibliothek benötigen Sie die Pakete python-boto und python-gnupginterface. GnuPG liegt auf den meisten Distributionen bereits vorinstalliert auf der Platte.

Das heruntergeladene Paket duplicity-0.6.06.tar.gz entpacken Sie mittels tar xfvz duplicity-0.6.06.tar.gz. Wechseln Sie in den neu entstandenen Ordner und installieren Sie das Paket mit dem Befehl python setup.py install. Wer lieber aus den Quellen selbst installieren will, sucht noch nach dem Developer-Paket von librsync und übersetzt den Code mit python setup.py build.

Prinzipiell folgt ein Aufruf von Duplicity der Syntax-Struktur, wie Sie sie von SCP kennen:

$ duplicity Pfad scp://Username@Hostname//Zielverzeichnis

Nehmen wir also an, ein User namens klaus will seinen Dokumenten-Ordner vom Laptop auf den Server im Keller sichern. Dazu nutzt er folgenden Befehl:

$ duplicity Dokumente/ scp://klaus@keller.local//home/klaus/backup/laptop

Beachten Sie vor allem die doppelten Schrägstriche nach dem Domainnamen local. Duplicity fragt Sie nun nach dem vorhin vergebenen GnuPG-Passwort und meldet dann den Fortgang in der Konsole (Abbildung 2). Das erste Backup dauert je nach Anzahl der zu sichernden Dateien unter Umständen etwas länger. Bei nachfolgenden Läufen zeigt das Werkzeug nur noch die Anzahl der neuen oder geänderten Dateien an und sichert diese. Wünschen Sie zwischendurch eine Komplettsicherung, fügen Sie zwischen duplicity und dem Namen des zu sichernden Verzeichnisses die Option full ein, wie in Abbildung 2 zu sehen.

Abbildung 2: Duplicity antwortet mit der Ausgabe einer Statistik auf den Backup-Wunsch via SSH.

Um Bereiche auf der Festplatte explizit vom Backup auszuklammern, nutzen Sie die Option exclude. Mit --exclude Dokumente/Vertraulich/ verhindert Klaus aus dem oben genannten Beispiel, dass interne Dokumente auf die Backup-Platte wandern. Wollen Sie ein Backup wieder zurückspielen, vertauschen Sie die letzten beiden Angaben:

$ duplicity scp://Username@Hostname///Backup-VerzeichnisRestore-Pfad

Die äußerst umfangreiche, aber lediglich englischsprachige Manpage mit vielen Beispielen lesen Sie entweder lokal auf Ihrem Rechner mit man duplicity oder online unter [3].

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...