Selbst in meiner Familie gibt es immer noch Menschen, die mit Windows-Systemen arbeiten. Unter Linux ist vieles einfacher, vor allem eine automatische Sicherung auf ein NAS wie das ReadyNAS. Ich habe dazu auf meinem NAS den rsync-Dienst laufen und kann dann mit einer Zeile wie:
rsync -azv --delete /home/debacher rsync://debacher@192.168.1.118:/Sicherungen/
meine Dateien regelmäßig per cron job sichern: http://www.debacher.de/wiki/Netgear_ReadyNAS_RN102 .
Etwas ähnliches wollte ich auch unter Windows 10 realisieren (natürlich in einer VirtualBox).
Sichern mit XCOPY
Im Prinzip geht das auch mit Windows-Bordmitteln. Dazu müsste man die Freigabe auf dem NAS als Laufwerk mounten und kann dann die Daten mit XCOPY sichern. Die folgende Beschreibung habe ich von Karsten Schultz übernommen:
xcopy /E /M C:\Benutzer\debacher\*.* Y:\Sicherungen\ C: ist das Quelllaufwerk Y: ist die als Netzlaufwertk eingebunde Freigabe Funktiom der Schalter /E : Kopiert alle Unterverzeichnisse (leer oder nicht leer). /M : Kopiert nur Dateien mit gesetztem Archivattribut, setzt das Attribut nach dem Kopieren zurück. Das hat aber zwei Nachteile: 1. xcopy muss bei den Quell-Dateien nach dem sichern das Archiv-Bit setzen (das funktioniert automatisch mit dem Schalter /M). 2. das Verfahren funktioniert nur im lokalen Netz, da das Samba-Protokoll nicht geroutet wird. Anmerkung: Bei Bedarf kann bei den Quelldateien das Archivbit mit attrib.exe gesetzt oder zurückgesetzt werden.
Das hat aber zwei Nachteile:
- xcopy muss bei den Dateien auf dem Rechner das Archiv-Bit setzen nach dem Sichern
- das Verfahren funktioniert nur im lokalen Netz, da das Samba-Protokoll nicht geroutet wird
Sichern mit RSYNC
Zum Glück gibt es über das Cygwin-Projekt rsync auch für Windows. Dazu habe ich die Seite http://www.it-em.net/rsync-fuer-windows/ gefunden. Hier ist ein Zip-Archiv mit rsync unter cygwin zu finden: http://www.it-em.net/wp-content/uploads/rsync.zip. Dieses Paket habe ich auf Laufwerk c: entpackt und kann dann aus dem Verzeichnis heraus synchronisieren mittels:
rsync.exe -azv --delete /cygdrive/C/Users/debacher rsync://debacher@192.168.1.118:/Sicherungen/
Damit würde der Ordner, der in der grafischen Oberfläche unter c:\Benutzer\debacher zu finden ist gesichert. Man muss bei den von Windows selbst angelegten Ordnern immer etwas aufpassen, die heißen oft anders, als die grafische Oberfläche vorgaukelt. Der Ordner Bilder im Benutzerverzeichnis heißt z.B. in Wirklichkeit Pictures.
Will man den Zugriff auch von außerhalb des lokalen Netzes ermöglichen, so ist es wichtig einen Benutzer und ein Passwort anzugeben. Dazu muss man für die Freigabe unter Shares->Einstellungen den Lese/Schreib Zugriff erlauben und den Passwort-Schutz aktivieren. Wenn man dies per Apply bestätigt hat, dann kann man hier über das +-Zeichen Benutzer und Passwort für den Rsync-Zugriff festlegen. Die Benutzer haben nichts mit den Samba-Benutzern zu tun, selbst wenn die Benutzernamen identisch sind.
Nun leg man sich im Ordner mit rsync.exe noch eine Datei mit z.B. dem Namen pfile an, die das eben angegebene Passwort enthält. Danach kann man dann mittels
rsync.exe -azv --delete --password-file=pfile /cygdrive/C/Users/debacher rsync://debacher@192.168.1.118:/Sicherungen/
gesichert auf den Rsync-Server zugreifen. Danach kann man das das Script backup.cmd aus dem Archiv anpassen:
@ECHO OFF ECHO *** ECHO *** Backupscript per rsync *** ECHO *** Stand: 04.09.2015 *** ECHO *** Fa. ITEM, Ing. Edenhauser *** ECHO *** office@it-em.net *** ECHO *** www.it-em.net *** ECHO * ECHO *** simples Beispiel... *** ECHO *** angepasst von U.D. am 18.06.2016 *** cd C:\scripte\rsync\ ***<Verzeichnis mit rsync> rsync.exe -azv --delete --password-file=pfile /cygdrive/C/Users/debacher rsync://debacher@192.168.1.118:/Sicherungen/
Der Verzeichniswechsel hat den Vorteil, dass man sich keine Gedanken darüber machen muss, wie man den Pfad zur Passwortdatei angeben kann.
Automatisieren der Sicherung
Den folgenden Hinweis habe ich wieder von Karsten Schultz übernommen:
Ein backup beim Herunterfahren lässt sich nicht mit der Aufgabenplanung realisieren. Den Trigger „Beim Herunterfahren“ gibt es nicht.
Man kann die Aufgabe aber einfach mit einer Gruppenrichtlinie erledigen. Dazu:
1. gpedit.msc starten 2. Computerkonfiguration → Windows-Einstellungen → Skripts → Herunterfahren öffnen 3. Skripts zum Herunterfahren für lokalen Computer hinzufügen z.B. C:\scripte\rsync\backup.cmd 4. Übernehmen
Jetzt muss ich noch folgende Dinge ausprobieren:
- Weiterleiten von Port 873 (rsync) über die FritzBox
- Automatisches Starten von rsync über Computer->Verwalten->Aufgabenplanung