Benutzer-Werkzeuge

Webseiten-Werkzeuge


projects:windowsbackup

Backup für Windows Desktops

Dieses Projekt betrachtet Varianten für ein sicheres und komfortables Backup von Windows Desktops auf einem Linux Server. Diese Konfiguration wird bevorzugt, da hierdurch Verschlüsselungstrojaner kaum in der Lage sein werden auch die Sicherungen zu befallen.

Grundsätzliche Gedanken

Sicherungen von Computern müssen für unterschiedliche Anforderungen konzipiert sein. Mögliche Szenarien hierfür sind:

  • Neuer oder zusätzlicher Computer
  • Defekt der Festplatte
  • Verlust von einer oder mehreren Dateien
  • Schadsoftware
  • Synchronisation von Datenbeständen
  • Versionierung von Daten

Grundsätzlich gibt es hierfür verschiedene Lösungsansätze. Als Speichermedium werden heute im Allgemeinen Festplatten verwendet, Magnetbänder oder optische Speicher sind nicht mehr im Einsatz. Mögliche Lösungsansätze sind:

Images von Festplatten

Die Erzeugung von Festplattenimages ist die erste Wahl, wenn es um die Rekonstruktion kompletter Rechner oder Festplatten geht. Im Idealfall kann der Rechner durch das Zurückspielen eines Images vollständig auf den Zeitpunkt der Imageerstellung zurückgesetzt werden.

Der Nachteil dieser klassischen Images ist, dass je nach eingesetzter Software nur genau die gleiche Festplatte und immer nur der komplette Inhalt zurück gespielt werden kann. Schon ein neuer Computer oder nur eine geänderte Festplatte kann zu Problemen bei der Rekonstruktion führen. Ein Negativbeispiel hierfür ist die Imageerzeugung in Windows 7 / 10. Diese Images taugen nur für den Austausch von defekten Festplatten und auch dann nur wenn die neue Festplatte mindestens so groß ist wie die Alte.

Besser und eine Referenz für die klassische Imageerzeugung ist Clonezilla. Images aus Clonezilla können auf unterschiedlicher Hardware zurück gespielt werden, sofern die Imagegröße überhaupt auf die neue Festplatte passt. Der Nachteil von Clonezilla ist, dass das System zum Sichern mit einem eigenen Betriebssystem gestartet werden muss und dann für die Dauer der Sicherung nicht zur Verfügung steht. Auch ist ein Zugriff auf einzelne Dateien in den Clonezilla Images nicht möglich.

Es gibt Image-Software, die logische Images von Festplatten erzeugt. Ein hervorragendes Beispiel hierfür ist die Lösung C't WIMage. Diese Images können im laufenden Betrieb erzeugt werden, die Wiederherstellung funktioniert weitgehend unabhängig von der Hardware, gleiche Dateien werden nur einmal gespeichert und es können sogar einzelne Dateien aus dem Image zurück gespielt werden. Einziger Nachteil dieser Universallösung: Es funktioniert nur mit Windows 8.1 oder Windows 10.

Sicherung in Dateiarchiven

Die Erzeugung von Dateiarchiven als Sicherungsmedium ist das Erbe aus den klassischen Magnetbandverfahren. Tatsächlich werden diese Archivierungsverfahren von vielen kommerziellen Sicherungstools nach wie vor verwendet. Vorteil ist, dass die Archive gut komprimierbar sind, einzelne Dateien oder auch ganze Bestände leicht zurück gespielt werden können und inkrementelles Sichern einfach lösbar ist. Nachteil ist die aufwändige Suche nach einzelnen Dateien und die umständliche Wiederherstellung eines bestimmten Systemzustands aus inkrementellen Sicherungen.

Aus meiner Sicht ist die Sicherung in Dateiarchiven keine zeitgemäße Lösung mehr.

Sicherung in Dateisystemen

Immer preiswertere und größere Festplatten legen nahe, dass die Sicherung direkt als eine Kopie des Dateisystems erzeugt wird. Komprimierung ist dann zwar nicht ohne weiteres möglich, aber Speicherplatz ist ja ausreichend vorhanden. Einzelne Dateien oder auch ganze Verzeichnisse können einfach kopiert und problemlos über Systemgrenzen verschoben werden.

Mögliche Nachteile sind zunächst der Verlust von originalen Dateiattributen (Owner, Zugriffszeiten…), fehlende inkrementelle Sicherung und der riesige Platzbedarf bei mehreren Sicherungsbeständen.

Aus der *nix - Welt ist rsync als ein Hilfsmittel zum Kopieren großer Dateisysteme bekannt. Dieses robuste Kopieren kopiert nur Differenzen, kann auch mit gelöschten Dateien umgehen und erhält die ursprünglichen Dateiattribute. Ähnliches leistet in der Windows-Welt robocopy, dort auch als Kommandozeile im Terminal.

Wenn dann noch unterschiedliche Sicherungsbestände verwaltet werden sollen, ist rsnapshot in der *nix-Welt ungeschlagen. Auf dem Mac braucht man es nicht, denn Time Machine ist ebenfalls eine hervorragende Lösung. Ansonsten bietet rsnapshot durch die Verwendung von Hardlinks fast beliebig viele Sicherungsstände bei minimalem Platzbedarf. Als Kommandozeilen Tool mit zentraler Konfigurationsdatei können Sicherungen mit rsnapshot voll automatisiert werden.

Cloud Lösungen

Eine weitere Alternative für Sicherungen sind Cloudspeicher. Es gibt zahlreiche Anbieter wie z.B. dropbox, google drive oder auch Microsoft bzw. Apple mit entsprechenden Lösungen. Vorteil einer Sicherung in der Cloud ist, dass die Sicherung nicht zu Hause aufbewahrt wird und so nicht mit zusammen mit dem Originaldatenbestand zerstört werden kann. Außerdem bieten diese Lösungen die Möglichkeit, Daten mit Anderen zu vernetzen.

Nachteil sind die Laufzeiten und Kosten bei großen Datenmengen und der unklare Verbleib bzw. Schutz der Daten vor fremdem Zugriff. Eine mögliche Alternative sind private Cloudspeicher mit z. B. Pydio und OwnCloud. Das setzt aber die dauernde Verfügbarkeit eines privaten Servers voraus, möglicherweise sollte hierfür ein NAS eingesetzt werden.

Wenn ein vollständiges Dokumentenmanagementsystem (DMS) gefordert ist - analog MS Sharepoint, ist Alfresco eine OpenSource Alternative. Alfresco CE macht einen wirklich guten Eindruck, allerdings ist es auf einem WebSpace nicht verwendbar, da es einen eigenen TomCat-Server mitbringt. TomCat ist Voraussetzung, es kann allerdings auch ein Vorhandener verwendet werden. Eine private Installation läuft prima, allerdings sind Alfresco Upgrades immer eine spannende Angelegenheit.

Pull vs. Push

Image- und Dateisicherungen

SSH / SMB - Netzprotokolle

Pull via Samba auf einen Linux-Server und Sicherung per rsnapshot

Diese Sicherung kommt völlig ohne eine kommerzielle Backup-Software aus. Die Netzverbindung wird über Windows-Shares hergestellt, wobei der Windows-Desktop die Rolle des File-Servers übernimmt. Es müssen ein oder mehrere Freigaben eingerichtet werden, unter denen die Nutzdaten des Windows-Desktop erreichbar sind. Ggf. muss bei einem Notebook über zusätzliche Sicherungen nachgedacht werden, dass diese Freigaben nicht von Außen erreicht werden können (–> Stichwort: Windows Firewall). Im Heimnetz sind diese Freigaben unkritisch.

Als Backup-Software wird rsnapshot verwendet. Auf Linux-Systemen das Tool der Wahl, wenn Dateisicherungen gemacht werden sollen. Durch reale Dateisysteme leicht zu bedienen und durch Hard-Links sehr effizient, was das inkrementelle Sichern betrifft.

Prinzip der Sicherung ist:

  • Anbinden des Linux-Servers an die Windows-Freigaben.
  • Erzeugen des rsnapshot Repository lokal auf dem Linux-Server
  • Verwalten der Sicherungsstände auf dem Linux-Server
  • Bei Bedarf Rücksicherung über Samba-Freigabe, USB-Stick oder auch sftp bzw. ftp
  • Sicherung gegen versehentliches Überschreiben durch Linux - Dateirechte (Owner: root)

Einrichtung von autofs

Um auf den Windows-Rechner <pc> zugreifen zu können, müssen dort entsprechende Freigaben <share> eingerichtet sein. Auf dem Windows-Rechner gibt es einen Nutzer <user> mit Passwort <password>, der ausreichende Rechte auf der Freigabe besitzt.

Auf dem Linux-Server sind die Pakete samba, smbclient, cifs-utils und autofs installiert. autofs ist das Mittel der Wahl, um die Freigaben in das Linux-System zu binden, da hierdurch nur während der Backup-Dauer auf die Freigaben zugegriffen wird und ansonsten das Netz getrennt ist.

Gute Informationen zum Thema autofs findet man in:

Folgende Konfiguration ist erforderlich:

/etc/auto.master konfigurieren

In der Datei /etc/auto.master muss die folgende Zeile ergänzt werden:

/media/windows /etc/auto.windows --timeout=60 --ghost

Hierdurch wird der autofs-Mountpoint /media/windows erzeugt und dort die konfigurierten Shares aus /etc/auto.windows angezeigt. Nach 60 Sekunden ohne Aktivität werden die Shares wieder getrennt. Der Schalter –ghost bewirkt, dass auch für getrennte Shares das Stammverzeichnis angezeigt wird.

/etc/auto.windows

Die Datei /etc/auto.windows wird neu erzeugt. Ein Beispiel-Inhalt ist:

"<pc>.<share>" -fstype=cifs,rw,credentials=/etc/auto.windows.pass,iocharset=utf8,uid=1000,gid=users ://<pc>/<share>

autofs wird nach einem restart des Service das Verzeichnis /media/windows/<pc>.<share> erzeugen und die Freigabe \\<pc>\<share> dort hin mounten. Bezüglich der Optionen ist alles möglich, was in mount.cifs beschrieben wird.

/etc/auto.windows.pass

Die Datei /etc/auto.windows.pass enthält die Nutzerdaten, mit denen sich der Linux-Server an dem Windows-Rechner anmeldet. Da hier auch das Passwort gespeichert wird, sollte diese Daten unbedingt mit chmod 0700 vor neugierigen Blicken geschützt werden. Der Inhalt der Datei ist:

username=<user>
password=<password>
domain=<WORKGROUP>

autofs aktivieren

Unter Ubuntu 14.04 wird autofs als Service verwaltet und kann mit

$ sudo service autofs (start|stop|restart|status) 

gestartet/gestoppt werden.

Einrichtung von rsnapshot

Backupstrategie

Zyklen, stündlich, täglich, wöchentlich, monatlich

Vorteil der Hard-Links

Die Datei /etc/rsnapshot.conf

In der Datei /etc/rsnapshot.conf werden die Zyklen und Verzeichnisse der Sicherung festgelegt. Wenn möglich wird ein Stammverzeichnis gewählt, das nicht zur Verfügung steht, wenn der Share nicht verbunden ist. Dann bricht rsnapshot die Sicherung sofort ab.

Timer - Einträge mit cron / anacron / systemd (ab Ubuntu 16.04)

vollständige Automatisierung?

Erfahrungen

Abgesehen von den ewig langen Dateipfaden aufgrund des Mountpoint /media/windows scheint rsnapshot mit den Dateien in der Freigabe ohne Probleme umgehen zu können. Veränderungen werden bemerkt und gleiche Dateien wie gewohnt als Hard-Link kopiert. Nach dem ersten Sicherungsstand ist die Laufzeit i.O. Die Vergleiche laufen uach über das Nertz relativ schnell. Bleibt abzuwarten, was bei großen Dateimengen geschieht.

Wenn der Windows Share nicht zur Verfügung steht existiert das Stammverzeichnis für den rsbapshot - Backup nicht und rsnaopshot bricht sofort mit einem Fehler ab. Gut so…

projects/windowsbackup.txt · Zuletzt geändert: 2017-01-13 09:45 von andreas