# Thursday, 24 December 2009

Dieses Posting soll das Programm "Robocopy" von Microsoft vorstellen, eine Übersicht über die Funktionen und Parameter geben und dient mir selber (und ich hoffe Ihnen dann auch :-)) als schnelle Nachschlagequelle. Robocopy ist ein sehr leistungsfähiges Kopierprogramm, das zum Umfang von Windows Vista, Windows 7, Windows Server 2008 R2 oder auch dem Microsoft Windows Server® 2003 Resource Kit Tools gehört.

Robocopy kopiert standardmäßig Dateidaten für jede Datei, die älter bzw. neuer ist oder verändert wurde oder Sie können beispielsweise ganze Verzeichnisse spiegeln, auf Änderungen überwachen und synchronisieren lassen. Mit der Robocopy.exe sind sehr komplexe Kopieraufgaben und Dateireplizierungsaufgaben möglich. Unter Windows 7 / Windows Server 2008 kann die immer nützliche Robocopy.exe nun auch multithreaded ausgeführt werden um schnellere und mehrfach gleichzeitige Dateioperationen zu erhalten.

Befehlszeilen-Referenz für Robocopy
DE: Robustes Dateikopieren für Windows, EN: Robust File Copy for Windows

Generelle Syntax
ROBOCOPY Quelle Ziel [Datei [Datei]...] [Optionen] Quelle = Quellverzeichnis (Laufwerk:\Pfad oder \\Server\Freigabe\Pfad)
Ziel = Zielverzeichnis (Laufwerk:\Pfad oder \\Server\Freigabe\Pfad)
Datei = Zu kopierende Dateien (Namen/Platzhalter: Standard ist "*.*")
   

Inhalt:

   
Warnung / Hinweis: Vermeiden Sie es innerhalb der Syntax bei Verzeichnisnamen etc. Leerzeichen zu haben.

Kopieroptionen
/S Kopiert Unterverzeichnisse, jedoch keine leeren Unterverzeichnisse.
/E Kopiert Unterverzeichnisse, einschließlich leerer Unterverzeichnisse.
/LEV:n Kopiert nur die obersten Ebenen der Quellverzeichnisstruktur.
   
/Z Kopiert Dateien im Neustartmodus.
/B Kopiert Dateien im Sicherungsmodus.
/ZB Verwendet den Neustartmodus. Im Fall einer Zugriffsverweigerung wird der Sicherungsmodus verwendet.
/EFSRAW Kopiert alle verschlüsselten Dateien im EFS RAW-Modus.
   
/COPY:copyflags Gibt an, welche Inhalte für Dateien kopiert werden sollen (der Standard ist ":dat").
Kopierflags:
D=Daten, A=Attribute, T=Zeitstempel
S=Sicherheit=NTFS-ACLs, O=Besitzerinformationen, U=Überwachungsinformationen
DCOPY:T Kopiert Verzeichniszeitstempel.
   
/SEC Kopiert Dateien mit Sicherheitsinformationen (entspricht /COPY:copyflags mit dem Parameter "dats").
/COPYALL Kopiert alle Dateiinformationen (entspricht /COPY:copyflags mit dem Parameter "datsou").
/NOCOPY Kopiert keine Dateiinformationen (eignet sich für die Verwendung mit "/PURGE").
   
/SECFIX Korrigiert die Dateisicherheit in allen Dateien, auch in ausgelassenen Dateien.
/TIMFIX Korrigiert die Uhrzeitangaben für Dateien in allen Dateien, auch in ausgelassenen Dateien.
   
/PURGE Löscht Zieldateien/-verzeichnisse, die in der Quelle nicht mehr vorhanden sind.
/MIR Spiegelt eine Verzeichnisstruktur (Entspricht "/E" mit "/PURGE").
   
/MOV Verschiebt Dateien (löscht Dateien nach dem Kopieren an der Quelle).
/MOVE Verschiebt Dateien UND Verzeichnisse (löscht sie nach dem Kopieren an der Quelle).
   
/A+:[RASHCNET] Fügt die vorhandenen Attribute den kopierten Dateien hinzu.
/A-:[RASHCNET] Entfernt die vorhandenen Attribute von den kopierten Dateien.
/CREATE Erstellt eine Verzeichnisstruktur und nur Dateien mit einer Länge von Null.
/FAT Erstellt Zieldateien nur unter Verwendung von 8.3 FAT-Dateinamen.
/256 Deaktiviert die Unterstützung für sehr lange Pfade (> 256 Zeichen).
   
/MON:n Überwacht die Quelle. Wird erneut ausgeführt, wenn mehr als n Änderungen gefunden werden.
/MOT:m Überwacht die Quelle. Wird bei einer Änderung erneut ausgeführt in m Minuten.
   
/RH:hhmm-hhmm Ausführungsstunden - Steuert, wann neue Kopiervorgänge gestartet werden können.
/PF Überprüft die Ausführungsstunden pro einzelne Datei (nicht pro Durchgang).
/IPG:n Abstand zwischen Paketen (ms), um bei langsamen Verbindungen Bandbreite freizugeben.
   
/SL Kopiert symbolische Verknüpfungen gegenüber dem Ziel.
   
/MT[:n] Tipp: Die immer nützliche Robocopy.exe kann nun multithreaded ausgeführt werden um schnellere Kopien zu erhalten. D.h. es werden n-gleichzeitige Kopier-/Datenoperationen ausgeführt. Die Option führt dazu, dass Sie in diesem Fall keine Statusanzeige in der Konsole erhalten.

Multithreadkopien mit n Threads erstellen (Standardwert: 8).

n muss zwischen 1 und 128 (jeweils einschließlich) liegen. Die Option ist nicht mit "/IPG" und "/EFSRAW" kompatibel.
Die Ausgabe kann und sollte mit "/LOG" umgeleitet werden, um eine bessere Leistung zu erzielen.

Dateiauswahloptionen
/A Kopiert nur Dateien mit dem "Archive"-Attribut.
/M Kopiert nur Dateien mit dem "Archive"-Attribut und setzt das Attribut zurück.
/IA:[RASHCNETO] Schließt nur Dateien ein, bei denen eines der Attribute festgelegt ist.
/XA:[RASHCNETO] Schließt Dateien aus, bei denen eines der Attribute festgelegt ist.
   
/XF Datei[Datei]:: Schließt Dateien aus, die mit den angegebenen Namen/Pfaden/Platzhaltern übereinstimmen.
/XD Verz.[Verz.] Schließt Verzeichnisse aus, die mit den angegebenen Namen/Pfaden übereinstimmen.
   
/XC Schließt geänderte Dateien aus.
/XN Schließt neuere Dateien aus.
/XO Schließt „ältere Dateien aus.
/XX Schließt zusätzliche Dateien und Verzeichnisse aus.
/XL Schließt einsame Dateien und Verzeichnisse aus.
/IS Schließt identische Dateien ein.
/IT Schließt optimierte Dateien ein.
   
/MAX:n Maximale Dateigröße - Schließt Dateien aus, die größer als n Bytes sind.
/MIN:n Minimale Dateigröße - Schließt Dateien aus, die kleiner als n Bytes sind.
   
/MAXAGE:n Maximales Dateialter - Schließt Dateien aus, die „älter als n Tage/Datum sind.
/MINAGE:n Minimales Dateialter - Schließt Dateien aus, die neuer als n Tage/Datum sind.
/MAXLAD:n Maximales Datum des letztes Zugriffs - Schließt Dateien aus, die seit n nicht verwendet wurden.
/MINLAD:n Minimales Datum des letztes Zugriffs - Schließt Dateien aus, die seit n verwendet wurden.
Wenn n < 1900, dann ist n = n Tage, andernfalls ist n = Datum im Format JJJJMMTT
   
/XJ Schließt Abzweigungspunkte aus (werden normalerweise standardmäßig eingeschlossen).
   
/FFT Geht von FAT-Uhrzeitangaben für Dateien aus (Granularität von zwei Sekunden).
/DST Kompensiert Zeitunterschiede von einer Stunden aufgrund der Sommerzeit.
   
/XJD Schließt Abzweigungspunkte für Verzeichnisse aus.
/XJF Schließt Abzweigungspunkte für Dateien aus.
   

Wiederholungsoptionen
/R:n Anzahl von Wiederholungsversuchen bei fehlerhaften Kopiervorgängen. Der Standardwert ist 1 Million.
Tipp: Sie sollten diesen Standarwert anpassen
/W:n Wartezeit zwischen Wiederholungsversuchen. Der Standardwert ist 30 Sekunden.
Tipp: Sie sollten diesen Standardwert anpassen.
   
/REG Speichert "/R:n" und "/W:n" in der Registrierung als Standardeinstellungen.
/TBD Wartet darauf, dass Freigabenamen definiert werden (Wiederholungsfehler 67).

Protokollierungsoptionen
/L Listet nur auf. Es werden keine Kopiervorgänge ausgeführt, Zeitstempel erstellt oder Dateien gelöscht.
Tipp: Nehmen Sie diesen Befehl um z.B. Ihren Robocopy-Befehl zu testen
/X Meldet alle zusätzlichen Dateien, nicht nur die ausgewählten Dateien.
/V Erstellt eine ausführliche Ausgabe mit ausgelassenen Dateien.
/TS Schließt Zeitstempel von Quelldateien in die Ausgabe ein.
/FP Schließt den vollständigen Pfadnamen von Dateien in die Ausgabe ein.
/BYTES Gibt Größen in Bytes aus.
   
/NS Keine Größe - Dateigrößen werden nicht protokolliert.
/NC Keine Klasse - Dateiklassen werden nicht protokolliert.
/NFL Keine Dateiliste - Dateinamen werden nicht protokolliert.
/NDL Keine Verzeichnisliste - Verzeichnisnamen werden nicht protokolliert.
   
/NP Kein Status - der Prozentsatz kopierter Elemente wird nicht angezeigt.
/ETA Zeigt die ungefähre Empfangszeit der kopierten Dateien an.
   
/LOG:Logfile-Dateiname Gibt den Status der Protokolldatei aus (beschreibt das vorhandene Protokoll).
/LOG+:Logfile-Dateiname Gibt den Status der Protokolldatei aus (wird an das vorhandene Protokoll angefügt).
   
/UNILOG:Logfile-Dateiname Gibt den Status der Protokolldatei als UNICODE aus (beschreibt das vorhandene Protokoll).
/UNILOG+:Logfile-Dateiname Gibt den Status der Protokolldatei als UNICODE aus (wird an das vorhandene Protokoll angefügt).
/TEE Gibt Daten in das Konsolenfenster und die Protokolldatei aus.
   
/NJH Kein Auftragsheader.
/NJS Keine Auftragszusammenfassung.
/UNICODE Gibt den Status als UNICODE aus.

Auftragsoptionen
/JOB:Auftragsname Übernimmt Parameter aus der angegebenen Auftragsdatei.
/SAVE:Auftragsname Speichert Parameter in der angegebenen Auftragsdatei.
/QUIT Beendet den Vorgang nach der Verarbeitung der Befehlszeile (zum Anzeigen von Parametern).
/NOSD Es ist kein Quellverzeichnis angegeben.
/NODD Es ist kein Zielverzeichnis angegeben.
/IF Schließt die folgenden Dateien ein.




Mit Robocopy sind sehr komplexe Dateireplizierungsaufgaben möglich, die Ihre tägliche Arbeit vereinfachen. Der größte Vorteil besteht jedoch in der Möglichkeit, vollständig gespiegelte Duplikate von zwei Dateistrukturen anzulegen (wenn Sie es wünschen, einschließlich aller Unterverzeichnisse und Dateien), ohne dass dabei unnötige Dateien kopiert werden müssten. Nur neue und aktualisierte Dateien am Quellspeicherort werden kopiert. Mit Robocopy erhalten Sie außerdem alle verbundenen Dateiinformationen, einschließlich der Datums- und Zeitstempel, Sicherheitszugriffssteuerungslisten (ACL) und vieles mehr.
Man kann sich Batch-Dateien (.bat) beispielsweise schreiben und diese mit dem Aufgabenplaner (Task Scheduler) automatisieren.

Die Robocopy GUI (Download: UtilitySpotlight2006_11.exe oder vom Giza-Blog.de-Server: UtilitySpotlight2006_11.exe (1,04 MB)) bietet Ihnen eine grafische Benutzeroberfläche, die die Handhabung mit Robocopy erleichtert. Dieses GUI-Tool stellt sämtliche über die Befehlszeile von Robocopy verfügbaren Funktionen bereit und erleichtert das Einrichten von Dateiübertragungen und -spiegelungen. Diese willkommene Erweiterung zu Robocopy wurde von Derk Benisch entwickelt, einem Systemingenieur aus der MSN Search Group bei Microsoft.

Empfehlung: Eine Weiterentwicklung der Robocopy GUI ist das Programm Microsoft RichCopy.
RichCopy ist auch eine grafische Benutzeroberfläche, die jedoch weitaus mehr Funktionen und Einstellungsmöglichkeiten bietet.
Man sollte sich also entscheiden, ob man lieber die simplifizierte RoboCopy GUI nutzt, oder das etwas mächtigere auch kostenfrei erhältliche Tool RichCopy.
Microsoft RichCopy wurde von Microsoft, Ken Tamaru, im Jahre 2001 bereits entwickelt und seit dem stätig weiterentwickelt. Man kann wirklich sagen, alles was man sich bei Thema "Kopieren" vorstellen kann, deckt dieses Programm ab. Download: Microsoft RichCopy | Alternativ vom Giza-Blog.de-Server: Microsoft RichCopy

Für den Heimgebrauch empfiehlt sich auch u.a. auch Microsoft SyncToy: SyncToy 2.1 (Beschreibung)

Sollte ich vielleicht den einen oder anderen Tipp zu RoboCopy oder anderen empfehlenswerten Tools übersehen haben, so würde ich mich über einen Kommentar freuen!

Jetzt diesen Blogpost kommentieren: Comments [6]


Thursday, 24 December 2009 15:22:04 (W. Europe Standard Time, UTC+01:00)
Ein weiterer Vorteil von RoboCopy gegenüber dem normalen Copy-Befehl ist, dass es anscheinend größere Blöcke auf einmal schreibt. Das ist nützlich, wenn man Daten auf eine SSD kopiert.

SSDs haben Probleme beim schreiben von kleien Blöcken, wenn die Blockgröße klein genug ist bricht bei meiner OCZ Apex z.B. die Schreibgeschwindigkeit auf unbrauchbar langsame 1,5 MB/s ein. Bei größeren Blöcken liegt die Geschwindigkeit bei > 100 MB/s.

Da copy anscheinend sehr kleine Blöcke verwendet, dauert das Kopieren größerer Dateien auf eine SSD furchtbar lange. Mit Robocopy geht es viel schneller, anscheinend schreibt es die Daten in größeren Blöcken.

Frohe Weihnachten,
Mathias
Thursday, 24 December 2009 16:17:11 (W. Europe Standard Time, UTC+01:00)
Vielen Dank Mathias,
sehr informativer Kommentar!
Ich wünsche Dir auch frohe Weihnachten!

Viele Grüße,
Kay
Saturday, 06 February 2010 08:33:54 (W. Europe Standard Time, UTC+01:00)
Alleine der Hinweis auf RichCopy macht den Artikel hier goldwert! Danke!
Cachy
Saturday, 06 February 2010 11:55:00 (W. Europe Standard Time, UTC+01:00)
Hallo Cachy,
herzlichen Dank für den netten Kommentar, freue mich.
Viele Grüße,
Kay
Friday, 25 February 2011 09:30:16 (W. Europe Standard Time, UTC+01:00)
Hallo,
Bezüglich Robocopy und der verschiedenen GUIs
bleibt in der heutigen Zeit eine wichtige Frage unbeantwortet.
Gut, mir ist es auch erst heute wichtig geworden, weil ich es vorher nicht wusste.
Wenn man wie früher kopiert, kommt man an gesperrte Dateien nicht heran, und diese werden nicht mit kopiert.
NTBackup kann aber alle Dateien kopieren, egal. ob sie gerade in Benutzung sind oder nicht
und die MB/s sind wesentlich mehr!
Woran liegt das, fragt man sich und kommt auf Volumenschattenkopie-Nutzung.
Wenn man das also jetzt weiß, will doch jeder genau nur noch solche Kopier-Programme, die diese Technologie Volumenschatten mit nuzen, oder?

Ich will doch ab jetzt von herkömmlichen alten trivialen langsamen und "nicht alles kopieren könnenden" Programmen nichts mehr wissen, wenn ich nicht gerade noch ein Windows 98 bedienen muss.

Wenn jetzt geschrieben wird von
Microsoft RichCopy wurde von Microsoft, Ken Tamaru, im Jahre 2001 bereits entwickelt und seit dem stätig weiterentwickelt. Man kann wirklich sagen, alles was man sich bei Thema "Kopieren" vorstellen kann, deckt dieses Programm ab.

alles was man sich vorstellen kann???: also auch Volumenschattenkopie-Nutzung?
und welche Parameter-Schalter sind dann anzuhaken um genau dieses zu erreichen?

Oder welches Kopierprogramm kann dieses intelliegente und vor allem sehr schnelle kopieren? Und wie heißen die Schalter, die man benutzen muss, damit dieses intelligente kopieren aktiviert ist, (wenn es extra Schalter dafür gibt, was ja eigentlich sinnlos wäre, oder?)

Ja, warum benutze ich denn dann nicht einfach NTBackup?

Weil ich für meine Zwecke am anderen Ende der Kopierprozedur eben die einzelnen Dateien brauche, und keinen Klumpen mit der Dateinamens-Erweiterung .bkf, ansonsten müsste ich ja noch einmal die selbe Zeit investieren,
um die .bkf - Datei hier zu entpacken.


MfG Crocodyl
Monday, 14 March 2011 22:52:09 (W. Europe Standard Time, UTC+01:00)
Hallo,
ich habe ein Problem mit dem Robocopy unter Windows 7:

Folgender Befehl funktioniert für eine USB-Platte völlig problemlos:
„ robocopy C:\Users\Public\Pictures\Fotos J:\Fotos /E“
Es werden genau die Datei kopiert, die noch nicht vorhanden sind.

Das gleiche probiere mit einer NAS-Platte:
„robocopy C:\Users\Public\Pictures\Fotos n:\ /E /LOG:SichernAufNas.log“

Hier erhalte ich folgende Log-Datei:

-------------------------------------------------------------------------------
ROBOCOPY :: Robustes Dateikopieren fr Windows
-------------------------------------------------------------------------------

Gestartet: Mon Mar 14 21:24:12 2011

Quelle : C:\Users\Public\Pictures\Fotos\
Ziel = n:\

Dateien : *.*

Optionen: *.* /S /E /COPY:DAT /R:1000000 /W:30

------------------------------------------------------------------------------

0 C:\Users\Public\Pictures\Fotos\
*ZUS. Verz. -1 n:\\
*EXTRA Datei 332
Neues Verz. 0 C:\Users\Public\Pictures\Fotos\Canon\
Neues Verz. 0 C:\Users\Public\Pictures\Fotos\Canon\2008\
Neues Verz. 0 C:\Users\Public\Pictures\Fotos\Canon\2008\06\
Neues Verz. 58 C:\Users\Public\Pictures\Fotos\Canon\2008\06\2008_06_13\
Neue Datei 3.5 m 2000_01_01_0001.JPG
0% ... 100%
2011/03/14 21:24:15 FEHLER 32 (0x00000020) Zieldatei wird mit Zeitstempel versehen
C:\Users\Public\Pictures\Fotos\Canon\2008\06\2008_06_13\2000_01_01_0001.JPG
Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.

30 Sekunden wird gewartet...“

Die Datei, die hier kopiert wurde, existierte allerdings bereits und hätte daher gar nicht kopiert werden müssen.
Abgesehen davon verstehe ich den „FEHLER32“ nicht.
Hat vielleicht jemand dazu eine Ideee eine Idee?
Vielen Dank im Voraus und viele Grüße
Volker
Volker Wenning
All comments require the approval of the site owner before being displayed.
Name
E-mail
Home page

Comment (HTML not allowed)  

[Captcha]Enter the code shown (prevents robots):

Live Comment Preview


Jahresübersicht: 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | 2010 2009 | 2008 | 2007 | 2006


Visual Studio Code - ein kostenloser Code-Editor für  Linux, OSX und Windows - jetzt ausprobieren