Unter Windows-Betriebssystemen gibt es zahlreiche Methoden, um Dateien und Verzeichnisse zu kopieren. Eine der leistungsstärksten und vielseitigsten Lösungen ist Robocopy (kurz für Robust File Copy). In diesem Artikel werden wir uns eingehend mit Robocopy befassen, seine Funktionen erkunden und wichtige Parameter sowie praktische Beispiele für den Einsatz dieses nützlichen Tools vorstellen.
Was ist Robocopy?
Robocopy ist ein leistungsfähiges Kommandozeilenprogramm von Microsoft, das entwickelt wurde, um Dateien und Verzeichnisse effizient von einem Speicherort zum anderen zu kopieren. Im Vergleich zu herkömmlichen Kopiermethoden in Windows bietet Robocopy zahlreiche Vorteile, darunter:
1. Zuverlässigkeit und Robustheit
Robocopy wurde entwickelt, um auch mit großen Datenmengen umzugehen und sicherzustellen, dass keine Daten verloren gehen. Es ist äußerst robust und kann den Kopiervorgang bei Unterbrechungen fortsetzen, ohne bereits kopierte Dateien erneut zu übertragen.
2. Effizienz
Durch die parallele Verarbeitung von Dateien kann Robocopy Kopiervorgänge erheblich beschleunigen. Dies ist besonders nützlich, wenn es darum geht, große Dateisammlungen zu verschieben.
3. Umfassende Anpassungsmöglichkeiten
Robocopy bietet eine breite Palette von Optionen und Parametern, mit denen Kopiervorgänge nach den eigenen Bedürfnissen angepasst werden können. Dies ermöglicht eine präzise Steuerung des Kopierprozesses.
Wichtige Robocopy-Parameter
Bevor wir uns praktische Beispiele für die Verwendung von Robocopy ansehen, ist es wichtig, einige der häufig verwendeten Parameter zu verstehen. Diese Parameter ermöglichen es, den Kopiervorgang nach Bedarf anzupassen.
/S
– Kopieren von Unterverzeichnissen
Mit diesem Parameter kopiert Robocopy auch Unterverzeichnisse, einschließlich ihrer leeren Strukturen.
/E
– Kopieren von Verzeichnisstrukturen
Ähnlich wie /S
, jedoch werden auch leere Verzeichnisstrukturen kopiert.
/Z
– Wiederaufnahme im Bruchfall
Dieser Parameter ermöglicht die Wiederaufnahme des Kopiervorgangs an der Stelle, an der er unterbrochen wurde, wenn beispielsweise die Verbindung vorübergehend unterbrochen wurde.
/MIR
– Spiegelkopie
Mit diesem Parameter wird das Zielverzeichnis in exakter Übereinstimmung mit der Quelle dupliziert. Es werden Dateien hinzugefügt, aktualisiert und gelöscht, um eine Spiegelung zu gewährleisten.
/XD
und /XF
– Ausnahmen festlegen
Mithilfe dieser Parameter können Ausnahmen definiert werden, um bestimmte Dateien oder Verzeichnisse vom Kopiervorgang auszuschließen.
/LOG
– Protokollierung des Kopiervorgangs
Robocopy kann Kopiervorgänge protokollieren, um detaillierte Informationen über den Vorgang bereitzustellen. Mit /LOG
wird die Protokolldatei angegeben.
Praktische Beispiele für die Verwendung von Robocopy
Beispiel 1: Kopieren eines Verzeichnisses mit Unterverzeichnissen
Angenommen, ihr möchtet den Inhalt des Verzeichnisses “Quelle” in das Verzeichnis “Ziel” kopieren, einschließlich aller Unterverzeichnisse und Dateien. Hier ist der Befehl:
robocopy Quelle Ziel /S
Beispiel 2: Spiegelkopie eines Verzeichnisses
Wenn ihr ein Verzeichnis “Backup” erstellen möchtet, das eine genaue Kopie des Verzeichnisses “Daten” ist, könnt ihr dies mit /MIR
tun:
robocopy Daten Backup /MIR
Beispiel 3: Protokollierung des Kopiervorgangs
Um den Kopiervorgang zu protokollieren und eine Logdatei namens “Kopierprotokoll.txt” zu erstellen, verwendet ihr /LOG
:
robocopy Quelle Ziel /LOG:Kopierprotokoll.txt
Diese Beispiele sollen nur einen Einblick in die Verwendung von Robocopy bieten. Es gibt zahlreiche weitere Parameter und Anwendungsfälle, die ihr je nach euren Anforderungen nutzen könnt.
Robocopy alle Parameter:
ROBOCOPY :: Robustes Dateikopieren für Windows
Gestartet: Montag, 25. September 2023 09:57:43
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 "*.*")
::
:: 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.
/J :: kopieren mit ungepuffertem E/A (empfohlen für sehr große
Dateien).
/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 "/COPY:DAT").
(Kopierflags : D=Daten, A=Attribute, T=Zeitstempel, X=Alternative Datenströme überspringen).
(S=Sicherheit=NTFS-ACLs, O=Besitzerinformationen,
U=Überwachungsinformationen).
/SEC :: Kopiert Dateien mit Sicherheitsinformationen
(entspricht "/COPY:DATS").
/COPYALL :: Kopiert alle Dateiinformationen
(entspricht "/COPY:DATSOU").
/NOCOPY :: Kopiert keine Dateiinformationen
(hilfreich in Verbindung 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 aus 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 Datei
(nicht pro Durchgang).
/IPG:n :: Abstand zwischen Paketen (ms), um bei langsamen
Verbindungen Bandbreite freizugeben.
/SJ :: Kopiert Verbindungen als Verbindungen anstatt als Verbindungsziele.
/SL :: Kopiert symbolische Verknüpfungen als Verknüpfungen anstatt als Verknüpfungsziele.
/MT[:n] :: Multithreadkopien mit n Threads erstellen (Standardwert: "8").
n muss zwischen 1 und 128 (einschließlich) liegen.
Die Option ist nicht mit "/IPG" und "/EFSRAW" kompatibel.
Die Ausgabe kann mit "/LOG" umgeleitet werden, um eine bessere Leistung zu erzielen.
/DCOPY:Kopierflag[s] :: zu kopierende Elemente für Verzeichnisse (Standard: “/DCOPY:DA”).
(Kopierflags : D=Daten, A=Attribute, T=Zeitstempel, E=EAs, X=Alternative Datenströme überspringen).
/NODCOPY :: kopiert keine Verzeichnisinformationen
(standardmäßig wird "/DCOPY:DA" ausgeführt).
/NOOFFLOAD :: Dateien werden ohne den Windows-Kopieabladungs-
mechanismus kopiert.
/COMPRESS :: Fordert während der Dateiübertragung ggf. Netzwerkkomprimierung an.
::
:: 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).
/FFT :: Geht von FAT-Uhrzeitangaben für Dateien aus (Granularität von zwei Sekunden).
/DST :: Kompensiert Zeitunterschiede von einer Stunde aufgrund
der Sommerzeit.
/XJ :: Schließt Links (für Dateien und Verzeichnisse) und Verbindungspunkte aus.
/XJD :: Schließt symbolische Verknüpfungen für Verzeichnisse und Verknüpfungspunkte aus.
/XJF :: Schließt symbolische Verknüpfungen für Dateien aus.
/IM:: Enthält geänderte Dateien (abweichende Änderungszeiten).
::
:: Wiederholungsoptionen:
::
/R:n :: Anzahl von Wiederholungsversuchen bei fehlerhaften
Kopiervorgängen. Der Standardwert ist 1 Million.
/W:n :: Wartezeit zwischen Wiederholungsversuchen.
Der Standardwert ist 30 Sekunden.
/REG :: Speichert "/R:n" und "/W:n" in der Registrierung als
Standardeinstellungen.
/TBD :: Wartet, dass Freigabenamen definiert werden (Wiederholungsfehler 67).
/LFSM :: Betrieb im Modus "wenig freier Speicherplatz", ermöglicht Kopieren, Anhalten und Fortsetzen (siehe Anmerkungen).
/LFSM:n[KMG] :: /LFSM, gibt die Floor-Größe in [K:Kilo,M:Mega,G:Giga] Byte an.
::
:: Protokollierungsoptionen :
::
/L :: Listet nur auf. Es werden keine Kopiervorgänge
ausgeführt, Zeitstempel erstellt oder Dateien gelöscht.
/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:Datei :: Gibt den Status der Protokolldatei aus (überschreibt das
vorhandene Protokoll).
/LOG+:Datei :: Gibt den Status der Protokolldatei aus
(wird an das vorhandene Protokoll angefügt).
/UNILOG:Datei :: Gibt den Status der Protokolldatei als UNICODE aus
(überschreibt das vorhandene Protokoll).
/UNILOG+:Datei :: 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.
::
:: Hinweise:
::
Bei der Verwendung von /PURGE oder /MIR im Stammverzeichnis des Volumes
wurde der angeforderte Vorgang von Robocopy zuvor auch auf Dateien innerhalb
des Verzeichnisses mit Systemvolumeinformationen angewendet.
Dies ist nicht länger der Fall. Falls angegeben, überspringt Robocopy Dateien
oder Verzeichnisse mit diesem Namen im obersten Quell- und Zielverzeichnis des Kopiervorgangs.
Die geänderte Dateiklassifizierung gilt nur, wenn sowohl die Quell-
als auch die Zieldateisysteme Änderungszeitstempel unterstützen (z. B. NTFS)
und die Quell-und Zieldateien unterschiedliche Änderungszeiten aufweisen, ansonsten jedoch
identisch sind. Diese Dateien werden nicht standardmäßig kopiert. Geben Sie /IM an,
um sie einzubeziehen.
Das /DCOPY:E-Flag erfordert, dass das Kopieren erweiterter Attribute
für Verzeichnisse versucht werden sollte. Beachten Sie, dass robocopy derzeit fortgesetzt wird,
wenn die EAs eines Verzeichnisses nicht kopiert werden können. Dieses Flag ist auch nicht
in /COPYALL.
Verwendet /LFSM-Anforderungen für robocopy, um im Modus „wenig freier Speicherplatz” zu arbeiten.
In diesem Modus wird Robocopy angehalten, wenn eine Dateikopie dazu führt,
dass freier Speicherplatzes auf dem Ziel-Volume unter einen "Floor"-Wert sinkt, der
explizit durch die LFSM:n[KMG]-Form des Flags angegeben werden kann.
Wenn /LFSM ohne expliziten Floor-Wert angegeben ist, wird dieser auf
zehn Prozent der Größe des Ziel-Volume festgelegt.
Wenig freier Speicherplatz ist inkompatibel mit /MT, /EFSRAW, /B und /ZB.
Fazit
Robocopy ist ein äußerst leistungsfähiges Werkzeug zur Verwaltung von Datei- und Verzeichniskopien unter Windows. Es zeichnet sich durch seine Robustheit, Geschwindigkeit und Anpassungsfähigkeit aus. Die Fähigkeit, Kopiervorgänge zu steuern und zu automatisieren, macht es zu einem wertvollen Werkzeug für Systemadministratoren und Benutzer, die große Datenmengen effizient verschieben müssen. Mit den richtigen Parametern und etwas Übung könnt ihr Robocopy optimal nutzen, um eure Dateien und Verzeichnisse sicher zu kopieren und zu verwalten.
Ich bin seit mehreren Jahren als leidenschaftlicher ITler unterwegs. Schreibe gerne über Windows und WordPress-Themen & Co. auf der Seite. Darüber hinaus bin ich seit 2008 als selbständiger SEO-Berater tätig. Also falls ihr Beratung in Sachen PC oder SEO braucht, gerne kontaktieren🙂
Wir hoffen, unsere Artikel konnten euch bei eurer Problemlösung helfen? Wenn ihr unsere Arbeit unterstützen möchtet, würden wir uns über eine kleine PayPal-Kaffeespende freuen. Vielen Dank!