Lange habe ich nach einem schlanken Backupsystem gesucht, welches automatisiert und unkompliziert Backups meiner Systeme erstellt. Mein grundsätzliches Problem bestand jedoch darin, dass ich viele verschiedene Betriebssysteme im Einsatz habe. Auf den Raspberrys kommen Linuxdistributionen zum Einsatz, mein großer Tower-PC läuft auf Windows 10, ein weiterer Laptop auf Ubuntu mit Gnome-Desktop. Jeder Rechner benötigt ein eigenes Backupprofil! Auf manchen ändern sich die Daten täglich, andere werden lediglich zum Browsen genutzt. Je nach Anforderung sollte der entsprechende Backupintervall und auch die Backupvariante gewählt werden.
UrBackup brachte mir die Lösung
Ausprobiert habe ich verschiedenste Systeme. Manche waren jedoch so komplex zu installieren, das es fast einfacher wäre die Backups händisch durchzuführen. Zügig und einfach einzurichten war jedoch UrBackup. Die Server / Client Lösung war genau das was ich gesucht habe, denn es gibt einen einfachen Dockerserver und Clients sowohl für Linux als auch für Windows Betriebssysteme. Des weiteren kann aus zwei verschiedenen Backupvarianten ausgewählt werden. Das Dateibackup umfasst wirklich nur angegebene Dateien und Ordner. Das Imagebackup erstellt wirklich ein komplettes Image des Rechners.
Für meine Raspberrys habe ich das Dateibackup ausgewählt, denn für Linuxclienten ist eine Imagefunktion nicht möglich. Außerdem ist es für mich eher interessant auf diesen Systemen meine Konfigurationsdateien und Daten zu sichern, denn das Betriebssystem wäre schnell neu aufgesetzt.
Anders sieht es hier für Notebooks oder Tower-PCs aus. Bei diesen Geräten ist für mich eher ein Imagebackup interessant, da ich meine persönlichen Daten ohnehin auf die NAS auslager. Somit ist es für mich nur wichtig, die Geräte nach einem Hardwaredefekt schnell wieder ans Laufen zu bekommen.
Inkrementiell oder vollständig?
Der Unterschied zwischen einem inkrementiellen Backup und einem vollständigen liegt an der Art wie die Daten behandelt werden. Bei einem vollständigen Backup werden immer alle Daten angefasst, ganz egal ob diese bei der letzten Sicherung bereits gespeichert und seitdem nicht mehr geändert wurden. Dies ist zwar die einfachste Sicherungsform, jedoch auch die aufwändigste mit dem höchsten Verbrauch auf dem Backupspeicher.
Ein inkrementielles Backup hingegen sieht sich die Daten an. Um genauer zu sein wird sich der Zeitstempel und die Dateigröße angeschaut. Unterscheiden sich diese Werte von denen der letzten Sicherung, dann wird ein Backup der entsprechenden Datei durchgeführt. Sind beide Versionen identisch, wird die Datei übersprungen und die nächste untersucht.
Installation von UrBackup im Docker
Die Installation ist denkbar einfach. Lade in deinem Dockersystem einfach das Image „uroni/urbackup-server“ herunter. Die Konfiguration ist in wenigen Schritten erledigt. Beginne damit die Ports einzutragen, alle Ports werden eins zu eins durchgeschliffen:
- UDP 35623
- TCP 55413
- TCP 55414
- TCP 55415
Des weiteren muss noch der Pfad für das Speicherlaufwerk angegeben werden. Dies kann im Dockersystem unter „Volume“ erledigt werden.
Nun ist die Konfiguration beendet und der Server kann gestartet werden. Über den Browser ist das Backupsystem über den Port „55414“ erreichbar. Gib also einfach die IP-Adresse deines Server und den Port des Backupsystems im Browser ein.
Clientinstallation
Auf der Homepage des Entwicklers können die Clients heruntergeladen werden. Für verschiedene Linuxdistributionen und Anwendungsfälle sind entsprechend Installationsanleitungen dort verfügbar. Ich beschreibe daher nur kurz die Installation eines Windowsclients:
Zuerst lädst du dir die aktuelle Clienversion auf der Entwicklerwebsite herunter und installierst diese. Nach der Installation kann es sein das deine Windows Firewall eine Freigabe für den Client anfordert, diese musst du genehmigen da sonst der Datenaustausch mit dem Server nicht erfolgen kann. Weitere Einstellungen am Windows Client musst du für die einfachste Backupvariante nicht mehr erledigen. Der Rest geschieht Serverseitig.
Client im Lokalnetz Serverseitig anlegen
Im nächsten Schritt muss der Clientcomputer am Server angelegt werden. Auf der Startseite von Urbackup scrollst du dafür nach unten und fügst die IP des Clients bei „Client-Discovery“ ein.
WICHTIG: Eingegebene Adressen werden anschließend aufgelistet. IP-Adressen dürfen nur aus dieser Liste entfernt werden, wenn der Client nicht mehr benötigt wird. Sobald eine IP-Adresse nicht in dieser Liste steht, wird sie durch den Server im Lokalen Netz nicht mehr gefunden!
Nach wenigen Minuten sollte dann der Client in der Liste auftauchen und als online angezeigt werden. Nun kann über die Schaltfläche „Einstellungen“ der gewünschte Client ausgewählt und anschließend alle Einstellungen zum Backup vorgenommen werden.
Fazit
Insgesamt habe ich nun das UrBackup-System seit zwei Monaten laufen. Ausfälle hatte ich bisher keine und die Backups wurden alle zuverlässig ausgeführt. Aktuelle nutze ich UrBackup für meine Raspberrys, welche das Smarthome realisieren. Ein Notebook mit Windows hatte ich ebenfalls zu Testzwecken eingebunden. Sowohl Komplettbackups als Image, als auch Dateibackups funktionieren tadellos.
Es geht hier jedem gleich, denn keiner möchte diese Systeme jemals benötigen. Doch kommt es zu einem Fehlerfall, sind Backups Gold wert!