Schon lange versuche ich so viele Daten und Medien wie möglich in digitaler Form zu nutzten bzw. zu besitzen. Ich war nie ein großer Freund von CD-Sammlungen. Seit der Verbreitung von MP3s besitze ich Musik nur noch in dieser Form. Auch zu Zeiten als ich Fotos noch nicht Digital, sondern noch auf Film gemacht habe, habe ich mir die Bilder beim entwickeln zusätzlich auf CD geben lassen. Auch Rechnungen und andere Dokumente liegen vermehrt in digitaler Form vor.
Aus diesem Grund gewinnt auch die Sicherung dieser Daten immer mehr an Bedeutung. Leider ist das eine Herausforderung, die gar nicht so einfach zu bewältigen ist.
Das Problem
In diesem Beitrag möchte ich mich auf die Datensicherung meiner Desktopsysteme beschränken. Diesen Webserver und meinen Homeserver sichere ich über Kommandozeilentools (Borg und duplicity) die ich auf dem Desktop aber nicht nutzen möchte, da meine Anforderungen hier andere sind.
Es soll ein Cloudbackup gemacht werden. Um unterwegs nicht auf externe Datenträger angewiesen zu sein und um die Sicherung auch vor Wohnungsbrand und Diebstahl zu sichern. Aus Gründen der Privatsphäre kann dies natürlich nur verschlüsselt geschehen.
Außerdem würde ich gerne in irgendeiner Form über ein erfolgreiches oder fehlgeschlagenes Backup informiert werden. Entweder über eine Desktopbenachrichtigung oder ein Tray-Icon. Auch wenn ich ein Freund der Kommandozeile bin, möchte ich auf dem Desktop gerne eine Backupsoftware mit GUI benutzen.
Lange habe ich Crashplan für meine Backups genutzt (durchaus mit etwas schlechtem Gewisssen, weil geschlossener amerikanischer Dienst). Ich habe mich damals vom unschlagbaren Preis/Leistungsverhältnis bestechen lassen. Seit der Änderung des Geschäftsmodells ist Crashplan weit weniger attraktiv für Privatanwender.
Also habe ich mich mit meinen Wünschen wiedermal auf die Suche nach geeigneter Backupsoftware für den Linuxdesktop gemacht. Folgende Software habe ich dabei ausprobiert.
Deja Dup
Deja Dup ist einer der Klassiker für Sicherungen auf dem Linux-Desktop. Es ist freie Software und steht unter GPL v3 (Launchpad / Ubuntuusers Wiki). Es ist ein Frontend für das Kommandozeilentool Duplicity und lässt sich sehr gut in das System integrieren. Leider ist der Funktionsumfang recht eingeschränkt.
Es kann nur ein Backup-Set erstellt werden. D.h. man kann nicht definieren dass der Ordner Dokumente stündlich gesichert wird, der Ordner Videos aber nur einmal täglich. Es gibt eine Regel, die für alles gilt.
Auch sonst sind die Einstellmöglichkeiten begrenzt. Da Deja Dup auf Duplicity basiert, setzt es auf regelmäßige Fullbackups, gefolgt von mehreren inkrementellen Backups, die die Veränderungen zum letzten Vollbackup enthalten. Ein Vollbackup wird dabei alle drei Monate vorgenommen. Der Zeitpunkt für ein Vollbackup lässt sich ebensowenig bestimmen, wie die Anzahl an Vollbackups die vorgehalten werden sollen.
Als Zeitraum für den Backups vorgehalten werden sollen bevor sie gelöscht werden, kann auf sechs Monate, ein Jahr oder für immer gewählt werden.
Positiv ist, dass Deja Dup, bzw. Duplicity, chunk basiert arbeitet. Es werden also immer nur die Teile einer Datei gesichert, die sich auch wirklich geändert haben. Ein nicht zu unterschätzender Vorteil bei der Sicherung großer Dateien.
Trotzdem, wenn man sich gerade unterwegs in einem unzureichenden Hotel-WLAN befindet und Deja Dup ein Fullbackup starten will, hat man eigentlich nur die Option seine Backups komplett zu verschieben bis man wieder schnelles Internet hat.
Es gibt allerdings auch einiges positives über Deja Dup zu sagen. So werden Sicherungen auf das lokale Dateisystem ebenso unterstützt wie Sicherungen über SSH, FTP, WebDAV oder SMB/CIFS. Das Backup kann auf Wunsch vor dem Upload verschlüsselt werden. Das war ja Grundvoraussetzung für mich.
Auch die Integration in Nautilus oder Nemo lässt sich sehr schön lösen. Bei Ubuntu wird dies automatisch bei der Installation vorgenommen. Bei anderen Distributionen lässt sich dies einfach selbst erledigen.
Ein Rechtsklick in einem gesicherten Ordner gibt einem die Option „Fehlende Dateien wiederherstellen“. Anschließend werden einem alle Dateien aufgelistet die einmal an diesem Ort gespeichert waren, jedoch gelöscht wurden. Somit kann man einfach versehentlich gelöschte Dateien wiederherstellen.
Eine ähnliche Option gibt es bei einem Rechtsklick auf eine Datei oder einen Ordner. Hier hat man die Option „Auf frühere Version zurücksetzen“. Hat man versehentlich Änderungen an einer Dateivorgenommen kann man diese so wieder rückgängig machen. Äußerst praktische Funktionen wie ich finde.
Wenn Deja Dup ein Backup abgeschlossen hat, erhält man eine Benachrichtigung in Form einer Dektop-Notification
Fazit zu Deja Dup
Die größte Einschränkung sind sicher die wenigen Einstellmöglichkeiten und der Full-/Incrementalbackup Ansatz, der einem zum Verhängnis werden kann wenn man große Datenmengen sichert. Wo dies keine Rolle spielt, z.B. weil auf eine externe Festplatte am Desktop gesichert wird, bieten die „Versionierungsfunktionen“ von Deja Dup eine schöne Möglichkeit versehentlich veränderte oder gelöschte Dateien wiederherzustellen.
Back In Time
Back in Time ist was die Einstellungen angeht sehr viel flexibler als Deja Dup. Dafür hat es andere, zumindest für mich gravierende Einschränkungen, die aber auch wieder nur die Nutzung mit Cloudbackups betreffen. Die Software existiert bereits seit 2008, ist freie Software und steht unter GNU GPLv2-Lizenz. (Github / Ubuntuusers Wiki)
Eine Integration in den Dateimanager bietet Back in Time nicht, die Wiederherstellung von Dateien findet über die Benutzeroberfläche des Programms statt. Diese ist jedoch sehr übersichtlich gestaltet und ich muss zugeben dass Back in Time mein Favorit ist, was die Bedienbarkeit angeht.
In der linken Seite des Interfaces werden einem alle Sicherungen zeitlich sortiert angezeigt. Man wählt die gewünschte Sicherung aus und kann dann auf der rechten Seite durch die Dateien browsen, als wären diese auf der lokalen Festplatte. Mit einem Rechtsklick kann man beliebige Dateien oder Ordner auf den gewählten Zeitpunkt wiederherstellen.
Backups lassen sich im lokalen Dateisystem oder über SSH speichern. Wenn diese verschlüsselt werden sollen wird EncFS verwendet. Gegen EncFS sind mehrere Angriffsmöglichkeiten bekannt, so dass der Verschlüsselung nicht vollständig vertraut werden kann. Lobenswerterweise weist einen das Programm auf diesen Umstand hin.
Der Authentifizierung am Backend über SSH erfolgt ausschließlich über einen SSH-Schlüssel. Ein Login mit Benutzername und Passwort ist nicht möglich. Das bedeutet aber dass man den Schlüssel selbst auch wieder an irgendeinem Ort sichern muss. Ohne Schlüssel ist schließlich kein Wiederherstellen des Backups möglich.
Dafür können in Back in Time mehrere Profile erstellt werden. Damit können verschiedene Ordner auch an unterschiedlichen Stellen oder zu unterschiedlichen Zeiten gesichert werden.
Während der Sicherung wird ein kleines Tray-Icon eingeblendet, das nach der Sicherung wieder verschwindet. Bringt also nichts wenn man einen Gnome- Desktop verwendet, da Gnome leider der Ansicht ist Tray-Icons seien legacy. Gnome Nutzer können aber nach Anleitung im Ubuntuusers-Wiki auch eine Information via Desktopbenachrichtigung einrichten. Auf anderen Desktops wie Cinnamon, die Tray-Icons unterstützen, ist das dementsprechend optional.
Back in Time setzt zur Sicherung auf rsync. Das hat leider den Nachteil dass Dateien immer komplett gesichert werden, auch wenn sich nur ein kleiner Teil geändert hat, oder die Datei nur umbenannt wurde. Zum sichern von Images von virtuellen Maschinen eignet sich Back in Time damit nur eingeschränkt.
Unter Antergos hatte ich außerdem dass Problem, dass Back in Time regelmäßig den SSH-Key nicht lesen konnte, obwohl dieser im Terminal einwandfrei funktioniert hat. Unter Linux Mint ist dieses Problem nicht aufgetreten. Ob es sich möglicherweise nur um ein temporäres Problem gehandelt hat, kann ich nicht sagen.
Fazit zu Back in Time
Für lokale Sicherungen, z.B. auf eine externe Festplatte, würde ich deffinitiv auf Back in Time setzen. Das Interface empfinde ich persönlich als sehr übersichtlich und intuitiv bedienbar.
Für Cloudbackups ist es leider nur eingeschränkt zu gebrauchen. Einerseits wegen der potentiell unsicheren Verschlüsselung. Andererseits weil kleine Änderungen an einer großen Datei immer den kompletten Upload der Datei nötig machen.
Duplicati
Duplicati ist ein sehr vielversprechender Stern am Backuphimmel, nicht nur für Desktops. Auch hierbei handelt es sich um freie Software, lizenziert unter LGPL. (Projekthomepage / Github) Das Programm wird seit vielen Jahren sehr aktiv entwickelt, ist aber leider noch in der Betaphase. Eine stabile Version liegt bisher noch nicht vor, so dass es sich meiner Ansicht nach derzeit nur als Zweitbackup eignet. Um unter Linux zu laufen wird das Mono-Framework benötigt. Bedient wird die Software über ein Webinterface. Außerdem steht ein Tray-Icon zu Verfügung, das den derzeitigen Backupstatus anzeigt.
Die Featureliste liest sich beeindruckend. So werden eine sehr große Zahl an Cloud-Backends und verschiedene Protokolle unterstützt. Neben einem lokalen Backup werden unter anderem FTP, SSH, WebDAV auch kommerzielle Anbieter wie Dropbox, Google Drive, Amazon Cloud Drive, Amazon S3, Hubic und viele mehr. Backups werden vor dem Upload AES-265 verschlüsselt.
Aufgrund der attraktiven Preisgestaltung von Hubic habe ich Duplicati einige Zeit mit diesem Anbieter getestet. Leider ist hier in regelmäßigen Abständen der Token zum Login abgelaufen, so dass man das Programm neu authentifizieren musste. Für ein das Backup eines unbeaufsichtigtes System eignet sich dieser Anbieter eher nicht.
Duplicati wurde nach eigenen Angaben speziell für Onlinebackups entwickelt. Dies merkt man deutlich daran, dass nur ein initiales Vollbackup nötig ist. Anschließend werden nur noch Veränderungen gespeichert. Außerdem werden die Veränderungen an Dateien chunk basierend gesichert. Wenn sich also an einer großen Datei etwas ändert wird nur der geänderte Teil hochgeladen und nicht die ganze Datei. Duplicati eignet sich damit auch zum sichern von VM-Images über das Internet.
Die Weboberfläche empfinde ich als optisch ansprechend und intuitiv zu bedienen. Mittlerweile ist sie responsiv und funktioniert auch auf kleinen Displays. Auf Wunsch bietet Duplicati eine Vielzahl von Einstellmöglichkeiten. So lässt sich beispielsweise ein Emailserver hinterlegen, so dass man über Fehler per Mail informiert wird. Da Duplicati als Service im Hintergrund läuft und die Bedienung über den Webbrowser erfolgt, eignet sich die Software z.B. auch zur Sicherung eines Homeservers.
Allerdings hakt das Programm auch noch an manchen Stellen. So konnte ich ein einmal gestartetes Backup nicht mehr abbrechen. Trotz Bestätigung des Programms ist kein Abbruch erfolgt. Sehr vereinzelt kam es auch vor dass die lokale Datenbank nicht mehr mit der des Backends übereinstimmte. Dann musste manuell eine Reparatur angestoßen werden, was je nach System und Datenmenge recht lange dauern kann. Generell reagiert Duplicati zumindest unter Linux recht träge, möglicherweise ist das unter Windows mit dem .NET-Framework anders. Zu einem Datenverlust ist es in mehreren Monaten Nutzung jedoch nie gekommen.
Fazit zu Duplicati
Die Entwicklung von Duplicati verfolge ich seit langem sehr gespannt. Da es noch keine stabile Version gibt, scheue ich mich davor das System produktiv einzusetzen. Ich denke aber sobald eine stabile Version vorliegt, ist Duplicati das Mittel der Wahl für mich für Cloudbackups mit dem Linux-Desktop.
Kommerzielle Produkte
Der Vollständigkeit halber möchte ich auch noch zwei kommerzielle Produkte erwähnen die ich mir angeschaut habe.
Das eine ist Cloudberry Backup. Es kostet ca. 30 USD und wird für Ubuntu/Debian sowie RedHat/Fedora/CentOS angeboten. Auf dem von mir damals genutzen Antergos ließ sich Cloudberry Backup nicht installieren, weshalb ich es nur in einer virtuellen Maschine testen konnte. Dabei hat es aber keinen schlechten Eindruck hinterlassen. Gestört hat mich dass es kein Tray-Icon oder Desktop-Benachrichtigungen gibt. Man muss sich darauf verlassen dass das Tool sicher seine Arbeit verrichtet, oder man lässt sich per Email informieren. Was die Anzahl der unterstützten Backends und die Konfigurationsmöglichkeiten angeht lässt das Programm jedoch kaum wünsche offen.
Außerdem habe ich SpiderOak getestet. Hierbei handelt es sich um einen Anbieter für Cloudbackups, ähnlich Crashplan. D.h. man nutzt die von Spideroak zur Verfügung gestellte Software, Backups werden auf den Servern des Anbieters in Amerika gespeichert. Hierfür bezahlt man zwischen 5 USD für 150GB und 25 USD für 5TB pro Monat. Dateien werden vor dem Upload verschlüsselt, SpiderOak wirbt damit dass niemand außer dem Nutzer die Daten entschlüsseln kann. Zur Nutzung steht ein übersichtliches GUI-Programm zur Verfügung, SpiderOak kann außerdem komplett über die Kommandozeile bedient werden. Wie sehr man einem solchen kommerziellen Cloudbackup-Diensten vertrauen kann, muss jeder für sich entscheiden.
Fazit
Leider habe ich für mich noch keine völlig befriedigende Lösung für die Sicherung der Daten auf meinen Desktop-Computern außer Haus gefunden.
Der Großteil meiner wichtigen Daten liegt auf meinem Homeserver. Diesen sichere ich mit Borg auf ein weiteres lokales RAID-System sowie verschlüsselt ebenfalls mit Borg auf eine virtuelle Maschinen bei einem Hoster. Hier bin ich aber auch auf der Suche nach einer anderen, bezahlbaren, Lösung, da ich mich gerne um weniger Systeme kümmern möchte.
Trotzdem entstehen auch auf dem Laptop/Desktop Dateien die regelmäßig gesichert werden wollen. Eine vollständig befriedigende Rundum-sorglos-Lösung habe ich leider aufgrund der genannten Vor- und Nachteile bisher nicht gefunden. So bin ich auf die schnelle (wieder mit einem unguten Gefühl) von Crashplan zu SpiderOak gewechselt, in der Hoffnung darauf dass bald eine stabile Version von Duplicati erscheint.
Eine andere gangbare Lösung wäre das Sichern auf dem Homeserver mit Backintime, da das Backup dann nicht verschlüsselt sein müsste.
Ich werde daher weitere Lösungen ausprobieren, in der Hoffnung doch noch das Rundum-sorglos-Backup zu finden.
Für Vorschläge und Anregungen zum Backup von Linux Desktops bin ich daher immer dankbar.
6 Comments
Da meine Eltern einfach nicht lernen wollen ihren Windows PC bei Unterbrechungen auszumachen hab ich aus dieser Not eine Tugend gemacht und Syncthing in ihrem Autostart geparkt.
Meine Cloud liegt also ca. 1,5 km entfernt. Klappt prima.
Das ist in der Tat eine kreative Lösung, aber eigentlich gar keine schlechte. Eine billige NAS-Kiste bei Freunden unterzustellen wäre sowohl finanziell als auch aus Sicht der Privatsphäre attraktiv. Muss man halt jemanden kennen der dafür Verständnis hat. Am besten wechselseitig, da ja auch Stromkosten entstehen.
Danke. ☺
Billiges NAS, da reicht auch ein Raspberry mit Samba Freigaben auf einem USB Stick bzw SSD. Da spielen
auch Stromkosten eigentlich keine Rolle mehr.
so für hintergrund backups sollte der Speed ausreichend sein.
Borgbackup /Borgmatic (encrypted als shutdown-systemd), rclone, backblaze-b2. evtl noch syncthing oder rsync um die daten aufs nas zu schaufeln und von dort dann wie oben.
funktioniert gut.
Schau dir doch mal noch Timeshift von teejee (Tony George) an:
https://github.com/teejee2008/timeshift
Tony ist sehr aktiv was seine Software angeht und auch sein Datei-Manager Polo ist gerade recht populär geworden.
Was Einfachheit der GUI und Automatismus mit sinnvollen Vorgaben betrifft, war Déjà Dup nicht zu schlagen. Zu schade ist, dass es unbrauchbar langsam wurde (aus Versehen Datei gelöscht → Fehlende Datei wiederherstellen → 30min warten, bis man überhaupt eine Liste angezeigt bekommt). Auch bei wiederholtem, inkrementellem Sichern dauert das Scannen des Dateisystems und älterer Backup-Archive zu lange.
Um regelmäßige Sicherungen in möglichst kurzen Zeitabständen attraktiver zu machen, müssen Backups automatisch, unauffällig und schnell sein.
Seit einiger Zeit bin ich vom Git-basierten Bup (mit Bups GUI) begeistert. Es ist schnell und genial gelöst, da es auf bewährte Technologie setzt (git) und das Durchsuchen alter Backups mit beliebigem Dateimanager erlaubt (FUSE-Treiber).
Ich freue mich aber erst darauf, wenn es jemals unter Linux fsnotify-basierte Backups gibt. Warum täglich das ganze Dateisystem scannen, wenn nur wenige (aber wichtige) Änderungen gesichert werden müssen?