🛠️ Robocopy.exe – Zaawansowany przewodnik użytkownika
1. Co to jest Robocopy?
Robocopy, czyli Robust File Copy, to narzędzie wiersza poleceń dostępne od Windows Vista, zaprojektowane do niezawodnego i wydajnego przenoszenia dużych ilości plików i folderów. Wykonuje zadania kopiowania, synchronizacji, „mirrorowania” danych i generowania szczegółowych raportów – wykracza dalece poza możliwości COPY
czy XCOPY
.
2. Podstawowe użycie
Najprostszy przykład:
robocopy C:\source D:\destination
Kopiuje wszystkie pliki z napędu lokalnego. Przy dodaniu /E
obejmuje również podfoldery, w tym puste. Dodając /COPYALL
, zachowasz atrybuty, znaki czasu, uprawnienia NTFS, właściciela i informacje o audycie.

3. Zaawansowane opcje
3.1 Synchronizacja i „mirror”
/MIR
to połączenie/E
+/PURGE
, synchronizuje strukturę i usuwa pliki z docelowego katalogu, jeśli zostały usunięte ze źródła.- Uwaga: nie używaj do backupu archiwalnego – zduplikowane usunięcia mogą spowodować utratę danych.
3.2 Tryb restartowalny i backupowy
/Z
– wznawianie transferu po nieoczekiwanym rozłączeniu ./B
– kopiowanie w trybie backup, ignorując uprawnienia, ale wymaga specjalnych praw ./ZB
– najpierw wznawialny, potem backupowy tryb .
3.3 Wielowątkowość
/MT[:n]
– kopiowanie równoległe zn
wątkami (domyślnie 8). Do intensywnej pracy używaj<32
. Uwaga:/NP
nie działa przy/MT
.
3.4 Filtry i selekcja plików
/S
,/E
,/LEV:n
– ograniczenie głębokości rekurencji ./MAXAGE:
,/MINAGE:
,/MAX:
,/MIN:
– dobór wg czasu/modyfikacji/rozmiaru ./XF
,/XD
,/XA:attributes
,/IA:attributes
,/XC
,/XO
,/XN
– wyłączenia/wybory plików i katalogów .
3.5 Kopiowanie zabezpieczeń i atrybutów
/COPY:DATSOU
– dane, atrybuty, timestamps, uprawnienia, właściciel, informacje audytu. Skrócony odpowiednik/COPYALL
./DCOPY:T
– zachowuje metadane folderów.
3.6 Monitorowanie i automatyczne kopiowanie
/MON:n
,/MOT:m
– śledzenie zmian, uruchamia kopiowanie pon
zmianach lubm
minutach.
3.7 Ograniczanie przepustowości sieci
/IPG:n
– opóźnienie między pakietami w ms, by ograniczyć obciążenie./RH:hhmm-hhmm
– tylko w określonych godzinach .
4. Raportowanie i logowanie
/LOG:file
– zapisuje wszystkie komunikaty do pliku./LOG+:file
– dopisywanie do istniejącego logu.- Opcje wygaszające szczegóły:
/TEE
,/V
,/FP
,/TS
,/NP
,/NFL
,/NDL
.
Przykład zaawansowanego logowania:
robocopy "C:\Data" "\\Backup\Storage" /MIR /MT:16 /ZB /IPG:20 /RH:0200-0500 /TEE /FP /LOG:"C:\Logs\backup_%date:~-4,4%%date:~3,2%%date:~0,2%.log"
Można nawet zmieniać nazwy logów przez skrypt PowerShell .
5. Obsługa kodów zwrotnych (exit codes)
Robocopy zwraca kody statusu:
- 0 = brak zmian,
- 1 = niektóre pliki skopiowane,
- 16+ = krytyczne błędy.
Idealne do automatycznych skryptów bat/ps1 z obsługą błędów.
6. Najlepsze praktyki i scenariusze
✅ Przed uruchomieniem – testuj
Użyj /L
aby sprawdzić planowane zmiany bez wpływu na dane.
✅ Uruchamiaj w nocy
W skrypcie zadania zaplanuj operacje np. o 2:00. Użyj /RH
, ogranicz MT gdy serwer jest obciążony.
✅ Sieć i serwery
Kopiuj tylko potrzebne pliki, dodaj retries i throttling, by praca była odporna na przerwy.
✅ Raportowanie
Loguj działania i analizuj np. w PowerShell/Power BI, by monitorować proces backupu.
✅ Bezpieczeństwo
Kopia NTFS + ACL wymaga uruchomienia jako admin lub z prawami backupu.
✅ Długie ścieżki
Robocopy domyślnie obsługuje ponad 260 znaków, ale możesz dodać /256
jeśli chcesz narzucić ograniczenie.
✅ Otwarte pliki
Robocopy nie kopiuje plików otwartych – użyj snapshotów VSS (DiskShadow) jako źródła.
7. Przykładowy skrypt PowerShell
$src="C:\Data"
$dst="\\Backup\Storage"
$log="C:\Logs\backup_$(Get-Date -Format yyyyMMdd).log"
robocopy $src $dst /MIR /MT:16 /ZB /IPG:50 /RH:0100-0500 /TEE /FP /LOG:$log
if($LASTEXITCODE -ge16){ Send-MailMessage -To admin@domain.com -Subject "Robocopy FAILED" -Body "Backup failed with code $LASTEXITCODE" -SmtpServer smtp; exit 1 }
8. Ograniczenia i uwagi
- Brak kopii plików otwartych – używaj VSS;
- Zliczanie pustych folderów –
/E
; - Długie ścieżki – upewnij się, że Windows wspiera długie nazwy;
- Uprawnienia – kopiuj ACL tylko jako admin/root.
9. Podsumowanie
Robocopy to niezwykle wszechstronne i potężne narzędzie do kopiowania i synchronizacji danych. Główne zalety:
- Wznawialne transfery i odporność na błędy,
- Zaawansowana selekcja i filtrowanie danych,
- Zachowanie zabezpieczeń i atrybutów,
- Automatyzacja przez wielowątkowość i monitorowanie,
- Profesjonalne logowanie i analiza procesów.
To narzędzie dla administratorów, profesjonalistów IT i zaawansowanych użytkowników systemu Windows, doskonałe do backupów, migracji, serwerów plików, synchronizacji i automatycznych operacji.