Warning: Parameter 3 to plgContentDYBanners::onPrepareContent() expected to be a reference, value given in /var/www/web565/html/site2/libraries/joomla/event/event.php on line 67

Robocopy

Robocopy ist ein mächtiges Kommandozeilen-Kopier-Programm. Die Handhabung ist auf Grund der unzähligen, teils kryptisch anmutenden Parameter etwas umständlich. Mit einer Hand voll Parameter kann man auch über den Taskplaner bzw. die Aufgabenplanung Synchronisationsvorgänge automatisieren. Robocopy arbeitet inkrementell, d. h. es werden also nur neue oder geänderte Dateien berücksichtigt. Änderungen erkennt Robocopy am Änderungsdatum und der Größe einer Datei.

Woher bekomme ich Robocopy?
Robocopy ist seit Windows Vista ein fester Bestandteil des Betriebssystems. Nutzer anderer Windows-Versionen können Robocopy den Windows Server 2003 Resource Kit Tools (http://www.microsoft.com/downloads/en/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en) entnehmen.

Quickstart
Robocopy hat keine Schwierigkeiten auch mit Windows-Netzwerkfreigaben zu arbeiten, daher eignet es sich hervorragend für Backups im Netzwerk. Um jedoch im Netzwerk ein Backup anlegen zu können, muss sichergestellt sein, dass das Benutzerkonto, welches Robocopy ausführt, Zugriff auf die Freigabe hat, ohne sich anmelden zu müssen. Robocopy selbst bietet keine Option, Benutzerdaten mit zu übertragen. Prinzipiell wird nur der Schalter /MIR (Mirror) von Robocopy für ein Backup benötigt. Mit dem Schalter /MIR legt Robocopy eine Spiegelung der Quellverzeichnisstruktur in einem vorgegebenen Zielverzeichnis an. /MIR besteht eigentlich aus den zwei Schaltern /E und /PURGE. /E kopiert alle Unterverzeichnisse, während /PURGE alle Dateien im Zielordner löscht, die in der Quelle nicht mehr vorhanden sind. Um die MP3-Sammlung auf dem NAS zu aktualisieren genügt daher folgender kleiner Aufruf:
Code:
robocopy "C:\Meine MP3s" \\NAS\Musik /MIR
Wie bei Komandozeilenprogrammen üblich müssen Pfade mit Leerzeichen in Anführungszeichen gesetzt werden.

Nützliche Schalter
An dieser Stelle sollen einige praktische Schalter zur Ergänzung für den Umgang mit Robocopy erläutert werden.

Probemodus /L
Mit dem Schalter /L kann man den Kopiervorgang testen, ohne dass physikalisch an der Datenstruktur etwas geändert wird. D. h. Robocopy erstellt alle gewünschten Ausgaben (oder auch nicht) ohne das Dateisystem beeinflusst wird.

Fortschrittsanzeige unterdrücken /NP
Wenn man sich die Ausgabe in einem Logfile betrachten möchte empfiehlt es sich die Fortschrittsanzeige zu unterdrücken, da sonst für jede Datei ein Zähler von 0% bis 100% in der Datei hochzählt.

Dateien/Verzeichnisse ausschließen /XF n und /XD n
Windows legt in Bilderverzeichnissen sehr gerne eine Datei Thumbs.db an. Um diese Dateien beim Backup nicht mit zu kopieren verwendet man den Schalter /XF gefolgt von dem Suchparameter (in diesem Fall *.db). Beispiel:
Code:
robocopy "C:\Meine Bilder" \\NAS\Bilder /MIR /XF *.db
In diesem Beispiel werden die Dateien Thumbs.db nicht mitkopiert. Soll ein ganzes Verzeichnis nicht mitkopiert werden wird /XD verwendet. Beispiel:
Code:
robocopy "C:\Meine Bilder" \\NAS\Bilder /MIR /XD "C:\Meine Bilder\thumbnails"
Beide Parameter können natürlich auch kombiniert werden:
Code:
robocopy "C:\Meine Bilder" \\NAS\Bilder /MIR /XF *.db /XD "C:\Meine Bilder\thumbnails"
Versuchssteuerung mit /R:n und /W:n
/R:n gibt die Anzahl der Wiederholungen an, die Robocopy unternimmt, falls ein Kopiervorgang nicht erfolgreich war. /W:n gibt die Wartezeit in Sekunden an, die zwischen den Versuchen pausiert wird. Durch die Standard-Einstellung (/R:1000000 /W:30) wird Robocopy also bis zu 347 Tage lang versuchen einen erfolglosen Kopiervorgang abzuschließen.

Logfunktion /LOG:n bzw. /LOG+:n
Gerade für automatisierte Backups ist eine Logfunktion sehr nützlich, da im Fehlerfall dort nachgesehen werden kann, was kopiert wurde und wo Fehler aufgetreten sind. Mit dem Parameter /LOG:n wird von Robocopy eine Logdatei n angelegt oder ggf. überschrieben. Mit /LOG+:n wird eine vorhandene Logdatei n fortgeführt. Beispiel:
Code:
robocopy J:\ E:\Userbackup\J /MIR /LOG+:E:\Log\J.log /NP
Bei der Verwendung von /LOG werden alle Ausgaben nur noch in die Logdatei geschrieben und nicht mehr auf den Bildschirm. Mit dem zusätzlichen Schalter /TEE erscheint die Ausgabe in der Datei und auf dem Bildschirm.

Monitor-Funktion /MON:n /MOT:m
Robocopy kann auch dauerhaft im Hintergrund arbeiten. /MON:n bewirkt, dass Robocopy das Backup nach n Änderungen im Quellverzeichnis aktualisiert. Beispiel:
Code:
robocopy J:\ E:\Userbackup\J /MIR /MON:10
Das Backup wird immer nach 10 Änderungen aktualisiert. Die Intervalle, in denen Robocopy das Quellverzeichnis überprüft lässt sich mit /MOT:m einstellen. /MOT:m alleine lässt Robocopy alle m Minuten das Backup erzeugen. Beispiel:
Code:
robocopy J:\ E:\Userbackup\J /MIR /MOT:10
Das Backup wird immer nach 10 Minuten aktualisiert. Bei der Verwendung von /MON:n ohne Angabe von /MOT:m legt Robocopy als Zeitspanne eine Minute fest.
Mit dem Parameter /RH:hhmm-hhmm kann die Monitor-Funktion auch auf einen Zeitbereich fixiert werden. Beispiel:
Code:
robocopy "C:\Meine Dokumente" \\NAS\Dokumente /MIR /XF *.ini /XD /MON:2 /RH:1800-2000
In diesem Beispiel läuft die Monitorfunktion nur zwischen 18 und 20 Uhr.

Netzwerkanmeldung
Wie eingangs erwähnt, bietet Robocopy keine Möglichkeit zur Anmeldung an einem Netzwerkgerät. Um Robocopy mit einer Anmeldung verwenden zu können muss daher eine Batchdatei erstellt werden, die die Netzwerkanmeldung verwendet:
Code:
net use \\Servername\Freigabe Passwort /USER:Username
robocopy Parameter
net use \\Servername\Freigabe /del

Besucher

TodayToday7
YeserdayYeserday17
This WeekThis Week7
This MonthThis Month470
All DaysAll Days24619