Migration mit robocopy (Windows)

Mit robocopy (Robust File Copy) können Sie Dateien und Ordner von einem Windows-Server auf einen anderen über eine Netzwerkfreigabe übertragen — zuverlässig, mit automatischen Wiederholungen bei Fehlern.

Voraussetzungen: RDP-Zugriff auf den Quellserver. Auf dem Zielserver muss eine Netzwerkfreigabe eingerichtet sein oder ein gemeinsam zugängliches Netzwerklaufwerk existieren. robocopy ist in Windows Server ab 2008 R2 vorinstalliert.

robocopy-Parameter für die Migration

ParameterBedeutung
/EKopiert alle Unterverzeichnisse inklusive leerer Ordner
/COPYALLKopiert alle Dateiattribute: Daten, Attribute, Zeitstempel, ACLs, Eigentümer
/MIRSpiegelt das Quellverzeichnis — löscht Dateien im Ziel die in der Quelle nicht mehr existieren
/R:33 Wiederholungsversuche bei Fehlern
/W:1010 Sekunden Wartezeit zwischen Wiederholungen
/LOGSchreibt den Fortschritt in eine Log-Datei

Schritt 1: Netzwerkfreigabe auf dem Zielserver einrichten

Einen freigegebenen Ordner auf dem Zielserver erstellen, auf den der Quellserver schreiben kann.

Verbinden Sie sich per RDP mit dem Zielserver und richten Sie eine Freigabe ein:

PowerShell
New-Item -ItemType Directory -Path "C:\Migration" New-SmbShare -Name "MigrationShare" -Path "C:\Migration" -FullAccess "Everyone"

Entfernen Sie die Freigabe nach der Migration wieder: Remove-SmbShare -Name "MigrationShare"

Schritt 2: Netzwerkfreigabe vom Quellserver verbinden

Auf dem Quellserver die Freigabe des Zielservers als Netzlaufwerk einbinden.

Verbinden Sie sich per RDP mit dem Quellserver und mappen Sie die Freigabe:

PowerShell
net use Z: \\ZIELSERVER_IP\MigrationShare /user:Administrator PASSWORT

Schritt 3: Daten übertragen

robocopy-Transfer vom Quellserver auf die Zielfreigabe starten.

Führen Sie folgendes auf dem Quellserver aus — passen Sie Quell- und Zielpfad an:

PowerShell
robocopy "C:\inetpub" "Z:\inetpub" /E /COPYALL /R:3 /W:10 /LOG:C:\migration.log

Wiederholen Sie den Befehl für alle weiteren zu migrierenden Verzeichnisse (z. B. C:\Users, C:\ProgramData).

Schritt 4: Delta-Sync vor dem Umschalten

Kurz vor dem DNS-Wechsel einen zweiten Lauf starten, um Änderungen nachzuziehen.

Führen Sie denselben robocopy-Befehl ein zweites Mal aus — er überträgt nur geänderte oder neue Dateien:

PowerShell
robocopy "C:\inetpub" "Z:\inetpub" /E /COPYALL /MIR /R:3 /W:10 /LOG:C:\migration-delta.log

Schritt 5: Dienste auf dem Zielserver starten & testen

Alle Dienste auf dem Zielserver starten und die Anwendungen vor dem DNS-Wechsel testen.
1.Starten Sie IIS, SQL Server und alle weiteren Dienste auf dem Zielserver
2.Testen Sie die Anwendungen über die IP-Adresse des Zielservers
3.Entfernen Sie die Netzwerkfreigabe und stellen Sie die DNS-Einträge um, sobald alles funktioniert

Weiterführende Dokumentation

Alle robocopy-Parameter finden Sie in der offiziellen Microsoft-Dokumentation.