Umstellung der Datensicherung auf RoboCopy

By | 16.April. 2013
Artikel aktualisiert am 15.11.2013

Bereits in meinem Artikel Sicherung von Lightroom hatte ich etwas über das Backup von Lightroom geschrieben, das ja in aller Regel lokal arbeitet. Ich betreibe einen Linux-Server, der neben anderen Dingen (Web,Datenbank,EMail,SVN usw.) auch als NAS-Speicher für Fotos und Videos dient. Obwohl hier für Fotos und Videos 3 Platten à 2 TB zu einem RAID5 zusammengebunden sind, ersetzt ein RAID, egal welches Level natürlich kein Backup.

Bild

Um die logische Struktur einmal zu verdeutlichen, habe ich einmal die nebenstehende Skizze erstellt. Alle PC/Laptop/Tablets haben über den Router Zugang zum Internet.

Der Server stellt über den Router in einem Gigabit LAN seine Dienste zur Verfügung. Netzlaufwerke werden dabei über SAMBA zur Verfügung gestellt, und zwar jedem User ein Laufwerk U: als Benutzerlaufwerk. Diese Benutzerlaufwerke liegen physikalisch auf einer gesonderten Platte.

Das Laufwerk H: zeigt auf das RAID und stellt den Speicherplatz für Fotos und Videos dar. Da das NAS eine Geschwindigkeit erreicht, wie eine lokale Festplatte, befinden sich auch keine Fotos mehr auf lokalen Platten.

Lediglich aktuell zur Bearbeitung anstehende Videos und natürlich der Katalog für Lightroom und der Cache für die Adobe Produkte werden lokal vorgehalten. Diese liegen auf einer SSD, die als Laufwerk D: eingebunden ist. Das hat für mich im Moment den Vorteil, das ich sowohl von Windows 7 als auch von Windows 8 auf den Bestand zugreifen kann.

Um eine Erstsicherung zu haben, befindet sich im Server eine weitere 2 TB Festplatte, auf die die Fotos/Videos von Linux aus mit rsync gesichert gesichert werden, sobald der Server, der übrigens nicht durchläuft, angeschaltet wird (manuell oder per WOL).

Nun befinden sich Fotos und Videos auf dem NAS, Backups des Lightroom Kataloges werden mit in dem Artikel Sicherung von Lightroom beschriebenen Einstellung direkt auf ein Verzeichnis auf dem NAS gesichert. Einstellungen aus dem Verzeichnis C:\Users\[Benutzername]\AppData\Roaming\Adobe\Lightroom werden ebenfalls auf das NAS gesichert.

Jetzt geht es darum, die auf dem NAS befindlichen Daten zusätzlich auf eine/mehrere externe Platten zu sichern. Dazu benutze ich mittlerweile robocopy, welches bei Windows7/8 sich ja schon on Board befindet. In seinem Blog hat Johannes Sebald einige Parameter und Grundfunktionen von robocopy beschrieben. Schön an robocopy ist die Tatsache, das ein Netzlaufwerk noch nicht einmal verbunden sein muss, da robocopy auch UNC-Pfade als Ziel akzeptiert. Mein Server im Netz heisst voyager, die entsprechende Freigabe fotos. Unterhalb dieser Freigabe befinden sich sowohl Fotos, als auch Video-Projekte und fertige Videos mit entsprechenden Unterverzeichnissen. Wenn man, wie oben beschrieben mittels USBDLM dafür gesorgt hat, das ein USB-Laufwerk immer mit einem Laufwerksbuchstaben angemeldet wird, dann reicht folgender Aufruf von robocopy:

Bild

Diese Zeile in einem Script schaufelt alle geänderten Dateien vom NAS auf das USB-Laufwerk. Ein solches Script kann man sich jetzt auf dem Desktop ablegen und mit einem Klick aufrufen und hat seine Datensicherung. Ich habe diese Script im Laufwerk E: abgelegt.

BildEs geht aber auch noch bequemer 😉 Zunächst sorgen wir dafür, das das USB-Laufwerk, auf dem gesichert werden soll, in jedem Fall mit dem Laufwerksbuchstaben I: eingebunden wird. Das mache ich anhand des Volumennamens. Der entsprechende Abschnitt in der USBDLM.ini sieht so aus wie auf dem Screenshot.

Bild

Mit der nebenstehenden Einstellung in der USBDLM.ini sorgen wir dafür, das unser Sicherungsscript mit dem Aufruf von robocopy automatisch gestartet wird, sobald das entsprechende USB-Laufwerk angeschlossen wird.

Kein Klicken mehr, die Sicherung wird automatisch durchgeführt. Man kann das jetzt noch ausbauen, um z.B. Sicherungen auf mehrere Datenträger durchzuführen, um mehr als einen Backupsatz zu haben.

Um das jetzt abzurunden und noch bequemer zu machen, habe ich mir auf dem Windows bmail installiert, ein Kommandzeilen SMTP-Client. Da mein Linux Server auch Mail-Server ist, ahnt jetzt mancher was jetzt kommt, der über die /Log Option im robocopy Aufruf erzeugte Logfile wird mir dann zugemailt (ich bin es einfach von Linux gewohnt, das wichtige Dinge mich auch per EMail erreichen)

Das vollständige Sicherungsscript sieht dann so aus:

Bild

Damit haben wir eine Sicherung aller relevanten Daten auf ein externes USB-Laufwerk 😉 und im nächsten Artikel kümmern wir uns dann darum, das die gesicherten Daten auch konsistent bleiben.

Sollte der Artikel gefallen, dann schickt mir einen Kommentar oder euere Erfahrungen mit Backups von Lightroom bzw. euren Fotos und Videos.

ciao tuxoche

Update: Datensicherung für Windows und Lightroom

[tags]Datensicherung,Lightroom,NAS,robocopy,USBDLM[/tags]

 

8 thoughts on “Umstellung der Datensicherung auf RoboCopy

  1. Tobias Straub

    Ich fände es hilfreich, wenn bei komplexen Parameterverwendungen (wie hier bei robocopy) eine Erläuterung dieser Parameter gegeben würde.
    Man könnte auch ein einfaches Beispiel dazu geben wie (Beispiel):

    robocopy „A:\Bilder“ „B:\Bilder“ /MIR …..

    Kopiert alle Daten von Bilder unter A nach dem gleichnamigen unter B und löscht dabei unter Bilder auf B alle Daten, welche unter A nicht mehr existieren …..

    Reply
  2. Huber Andreas

    Danke für Deine Hilfe!
    Also, ich hab jetzt mal alles mögliche durchprobiert.
    Problem ist/war:
    Die NAS speichert das Datum/Uhrzeit wie es will. Einmal das aktuelle – einmal die ursprüngliche. Man erkennt keine Logik. Ich habe dann ein bisschen gegoogelt und habe festgestellt, dass mehrere das gleiche Problem haben.
    Ich habe die Parameter „/XO /XJ“ hinzugefügt, dadurch werden nur aktuellere Daten kopiert (somit umgehe ich die Problematik, dass die NAS das aktuelle Datum/Uhrzeit verwendet – da neuere Daten ja kopiert werden).
    Viele Grüße

    Reply
  3. Huber Andreas

    Hallo Peter,

    magst Du mir mal bitte helfen?
    Ich habe Fotos/Videos auf meiner Festplatte und möchte diese auf einen NAS-Server (SAMBA) kopieren. Theoretisch haut es hin – praktisch wird jedoch das Datumsfeld nicht durchgängig übernommen (warum nicht durchgängig, keine Ahnung) – somit würde es 1 TB regelmäßig komplett neu kopieren.
    Der Befehl schaut aktuell so aus:

    robocopy „H:\Original\ZZZ_NAS-Server\Foto“ „X:\Foto NAS“ /MIR /V /NP /Z /R:10 /W:30

    Also: Ordner Laufwerk H = externe Festplatte; X= NAS

    Wäre echt super!
    Danke im Voraus!

    Viele Grüße

    Andreas

    Reply
    1. Peter Post author

      Also zunächst sehen die Parameter richtig aus, aber ich würde an deiner Stelle mal eine Logdatei schreiben, wenn er beim 2. Durchlauf immer noch meint, die Dateien seien neuer, würde ich stichprobenartig die timestamps vergleichen. Ansonsten soll laut einigen Einträgen der Parameter /FFT manchmal helfen, wenn es sich beim Ziel um eine Samba share handelt. Ist bei mir auch so, aber es läuft richtig durch, d.h. nur neue oder geänderte Dateien werden auf das NAS kopiert.

      Reply
  4. Thomas

    Ich kenne sowohl den USBDLM und auch robocopy und nutze auch beides.

    Nur eine kleine Anmerkung:
    Bei robocopy fürt der Schalter „/mir“ dazu das Dateien die im Quellverzeichnis nicht mehr vorhanden sind im Backupverzeichnis gelöscht werden.

    Ich sehe da die Gefahr das ich z.B. aus versehen Dateien, z.B. Bilder lösche und es selber nicht sofort merke. Stoße dann das Backup an und lösche mir dadurch auch die Bilder in meinem Backup.

    Und irgendwann suche ich mal Fotos die ich dann nicht wiederfinde und hab in der zwischen Zeit durch den Schalter „/mir“ auch bei allen Backups die Fotos gelöscht.

    Ich würde für ein erstes Backup den Schalter „/mir“ nutzen und für ein zweites den Schalter „/e“ Dann kann ich für eine schnelle Wiederherstellung das erste Backup nutzen und hab für den Notfall noch das zweite Backup, zwar etwas zugemüllt aber immer noch besser als ganz weg.

    Ps. Dein Blog gefällt mir super, unsere Interessen decken sich fast 1:1 🙂

    Reply
    1. Peter Post author

      Mir ist bewusst, dass es sich um eine Speigelung handelt. Wenn man genügend Platz hat, kann man natürlich so verfahren, wie du vorgeschlagen hast. Das ermöglicht z.B. nur jeden Monat eine Sicherung mit der Option /mir durchführen, und behält dann evtl. gelöschte Dateien für einen gewissen Zeitraum. Allerdings lösche ich recht bewusst. Insofern stand ich noch nie vor dem Problem, das ich noch ein gelöschtes Foto wiederherstellen musste 😉

      Danke für das Lob 😉

      Reply

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.