Ein umfassender Leitfaden zu Robocopy
Robocopy ist ein leistungsstarkes Befehlszeilentool für Windows, mit dem Sie Dateien und Ordner von einem Speicherort zu einem anderen synchronisieren können. Hier erfahren Sie mehr über Ihre Möglichkeiten mit Robocopy.
Inhaltsverzeichnis
- Was ist Robocopy?
- Was ist der Unterschied zu XCopy?
- Warum Robocopy anstelle von PowerShell verwenden?
- Wie Robocopy funktioniert
- Kopieren von Dateien und Ordnern mit Robocopy
- Wie man Unterordner einbezieht
- Verschieben von Dateien und Ordnern
- Wie man Dateien und Ordner filtert
- Auswählen von Dateien nach Name oder Dateityp
- Auswählen von Dateien nach Dateigröße
- Synchronisieren von Dateien und Ordnern
- Wie man Backups überwacht
- Wie man Dateien über ein Netzwerk überträgt
- So verwenden Sie Robocopy-Aufträge
- Fazit
Was ist Robocopy?
Robocopy steht für "Robust File Copy". Es handelt sich um ein leistungsstarkes (und potenziell furchteinflößendes) Befehlszeilenprogramm zum Kopieren oder Verschieben von Dateien von einem Ort zum anderen. Robocopy ist bei vielen IT-Profis sehr beliebt, vor allem wegen seiner überwältigenden Anzahl nützlicher Funktionen und Optionen.
Es wurde entwickelt, um zuverlässiger als Xcopy oder der ursprüngliche Kopierbefehl zu sein (daher der Name). Robocopy wurde erstmals mit dem Windows NT 4.0 Resource Kit (!) veröffentlicht. Seit Windows Vista und Windows Server 2008 ist es eine Standardfunktion in Windows.
Was ist der Unterschied zu XCopy?
Der größte Unterschied zwischen Robocopy und Xcopy ist die Vielzahl an Funktionen, Optionen, Flags, etc. Außerdem wurde die Leistung von Robocopy mehrfach verbessert, was es im Vergleich zu Xcopy zu einem eher pseudoähnlichen Sicherungsprogramm macht.
Warum Robocopy anstelle von PowerShell verwenden?
Obwohl die PowerShell für die hier erwähnten grundlegenden Kopier-/Verschiebeaufgaben sehr leistungsfähig ist, ist Robocopy aufgrund der zahlreichen Optionen, die Ihnen zur Verfügung stehen, die perfekte Wahl, wenn Sie Dateikopieraufgaben effizient und sicher durchführen möchten. Robocopy ist auch eine hervorragende Option für die Erstellung neuer Dateiserver und Migrationsprojekte.
Wie Robocopy funktioniert
Wie bereits mehrfach erwähnt, enthält Robocopy eine Reihe von Optionen, Optionen und Flags, mit denen Sie alle anfallenden Dateiübertragungsaufgaben so sorgfältig wie möglich erledigen können.
Kopieren von Dateien und Ordnern mit Robocopy
Kommen wir nun zu einigen Beispielen für das Kopieren von Dateien mit Robocopy.
Wir verwenden einen Windows 11-Client-Rechner in unserer Windows Server 2022 Active Directory-Domänen-Laborumgebung.
Mit dem folgenden Befehl werden (nicht wirklich) die Dateien am ersten Speicherort auf dem Dateiserver (Laufwerk D:) gesichert. Mit der Option /quit wurde überprüft, ob das, was Robocopy tun soll, korrekt ist.
robocopy c:\backup d:\files /quit
Dieser Befehl zeigt den Quell- und den Zielspeicherort an, welche Dateien gesichert werden sollen und welche Optionen verwendet werden.
robocopy c:\backup d:\files
Beachten Sie, dass nur eine Datei kopiert wurde, nämlich die einzelne TXT-Datei im Stammverzeichnis von c:\backup. Das liegt daran, dass Unterverzeichnisse standardmäßig nicht gesichert werden. Der nächste Schritt besteht also darin, Unterverzeichnisse einzubeziehen.
Wie man Unterordner einbezieht
Wir können Unterverzeichnisse mit dem Schalter /e einschließen, um alle Unterverzeichnisse einzuschließen, auch leere.
robocopy c:\backup d:\files /e
Die folgende Zusammenfassung zeigt, dass insgesamt 18 Dateien in der Quelle gefunden wurden, von denen 17 kopiert wurden, weil wir die Datei im Stammverzeichnis der Quelle bereits kopiert hatten. Infolgedessen wurde eine Datei übersprungen.
Verschieben von Dateien und Ordnern
Anstatt die Dateien zu kopieren, können wir sie mit dem Schalter /move verschieben.
robocopy c:\backup d:\files /move /e
Bei der Überprüfung des Laufwerks C: wurden die Dateien tatsächlich entfernt. Sie befinden sich jetzt auf dem Laufwerk G:.
Wie man Dateien und Ordner filtert
Sie werden wahrscheinlich nicht immer alle Dateien von einem Ort zum anderen kopieren wollen. Sie werden filtern wollen, welche Dateien kopiert werden sollen.
Im Folgenden werden wir die gebräuchlichsten Optionen zur Auswahl von Dateien nach Name, Typ, Größe usw. unter Verwendung von Platzhaltern erläutern.
Auswählen von Dateien nach Name oder Dateityp
Wir können Platzhalter verwenden, um bestimmte Dateinamen auszuwählen. Wie Sie sehen können, kopiert der unten stehende Befehl mit dem Sternchen nur die Dateien, die mit dem Buchstaben 'N' beginnen.
robocopy c:\backup d:\files N* /e
Mit dem folgenden Befehl können wir auch nur PDF-Dateien kopieren.
robocopy c:\backup d:\files *.pdf /e
Auswählen von Dateien nach Dateigröße
Um die Dateien nach ihrer Größe auszuwählen, verwenden wir diesen Befehl mit dem Schalter /max, um nur Dateien unter 1 MB zu kopieren.
robocopy c:\backup g:\files /e /max:1000000
Wenn wir nur Dateien kopieren wollen, die weniger als eineinhalb Jahre alt sind, können wir den Schalter /maxage verwenden.
robocopy c:\backup d:\files /e /maxage:547
Synchronisieren von Dateien und Ordnern
Mit dem leistungsstarken und potenziell wirkungsvollen Befehl /mir (MIRror) können wir zwei Speicherorte synchronisieren. Jedes Mal, wenn Sie diesen Befehl ausführen, wird alles, was in der Quelle und im Ziel nicht genau gleich ist, korrigiert.
In der Praxis bedeutet dies, dass eine Datei, die Sie in der Quelle löschen, auch im Ziel gelöscht wird (in beiden Fällen!). Und wenn jemand eine Datei am Zielort löscht, wird sie auch in der Quelle gelöscht (aus beiden verschwunden!). Dieser Befehl ist mächtig und gefährlich, also verwenden Sie ihn mit Vorsicht.
robocopy c:\backup d:\files /e /mir
Wie man Backups überwacht
Wenn Sie dringend einen Sicherungsdienst benötigen, hat Robocopy ein paar Tricks in petto. Sie können die Schalter /mon und /mot verwenden, um Änderungen zu überwachen. Nach einer bestimmten Anzahl von Datei-Änderungen und einer bestimmten Zeitspanne führt Robocopy einen weiteren Durchlauf durch und sichert Ihre Dateien erneut.
robocopy c:\backup d:\files /e /mon:3 /mot:5
Wie Sie am unteren Rand des Bildes sehen können, läuft der "Monitor" und wartet sowohl auf 5 Minuten als auch auf 3 Datei-Änderungen, die stattfinden.
Sie werden feststellen, dass Robocopy erneut ausgeführt wurde und eine Datei kopiert, die meisten übersprungen und auch eine zusätzliche Datei im Ziel gefunden hat.
Wie man Dateien über ein Netzwerk überträgt
Es gibt einige spezielle Schalter und Optionen, die IT-Profis bei größeren Dateikopien über ein lokales Netzwerk (LAN) oder ein WAN helfen. Hier sind die wichtigsten Optionen:
Parameter | Beschreibung |
/zb | Mit diesem Schalter werden Dateien im neustartbaren Modus kopiert, so dass eine unterbrochene Kopiersitzung fortgesetzt werden kann, wenn ein Netzwerkpfad langsam oder unzuverlässig ist. Die Option 'B' hilft Ihnen dabei, gesperrte 'Lese'-Berechtigungen auf der Quelle zu überwinden, indem Sie zumindest ALLE Dateien kopieren können. |
/copyall | Um sicherzustellen, dass Ihre Dateien auf Ihrem neuen Dateiserver geöffnet und geändert werden können, verwenden Sie diese Option, damit alle Dateiberechtigungen zusammen mit den Dateien kopiert werden. Sie möchten, dass Ihre Benutzer nahtlos auf alle ihre Dateien zugreifen können, nachdem Ihr neuer Dateiserver eingerichtet ist! |
/rh | Dies schränkt die Ausführung von Robocopy während bestimmter Stunden ein. Wenn Sie ein großes Dateiserver-Migrationsprojekt haben und nicht wollen, dass Ihre Netzwerkverbindung (insbesondere ein WAN) während der Geschäftszeiten überlastet ist, verwenden Sie dieses kleine Wunder. |
/mt | Erhöhen Sie damit die Anzahl der Threads, die Robocopy der CPU zur Verfügung stellt, um die Leistung Ihrer Kopien zu verbessern. |
So verwenden Sie Robocopy-Aufträge
Hier ist eine weitere Robocopy-Funktion, die ich noch nicht kannte - Jobs. Sie können einen recht komplexen Robocopy-Befehl zur späteren Verwendung speichern, indem Sie den Schalter /save am Ende verwenden. Hier ist ein Beispiel.
robocopy c:\backup g:\files m* /e /max:1000000 /maxage:400 /save: "c:\temp\backupJob"
Das obige Befehl zeigt die Ausgabe der Textdatei, die Robocopy erstellt. Um diesen speziellen Job/String in Zukunft auszuführen, verwenden Sie den Schalter /job wie folgt.
robocopy /job: "c:\temp\backupJob.rcj"
Fazit
Robocopy ist ein wunderbares Dienstprogramm zum Kopieren von Dateien, das jeder IT-Profi in seinem Arsenal haben sollte. Es wird ständig mit neuen Funktionen erweitert, sogar unter Windows 11, und wir hoffen, dass dieser Leitfaden Ihnen einige Ideen liefert, wie Sie Robocopy in Ihren Arbeitsablauf integrieren können.