Robocopy – kompletny poradnik użycia narzędzia w Windows

Robocopy (ang. Robust File Copy) to jedno z najpotężniejszych narzędzi dostępnych w systemie Windows do kopiowania i synchronizacji plików oraz katalogów. W przeciwieństwie do standardowych komend copy i xcopy, Robocopy oferuje rozbudowane możliwości, które sprawiają, że jest chętnie wykorzystywane przez administratorów, informatyków i firmy do wykonywania kopii zapasowych, przenoszenia danych i zarządzania dużymi zbiorami plików.

Dlaczego warto używać Robocopy?

Korzystanie z Robocopy ma wiele zalet:

  • Umożliwia tworzenie lustrzanych kopii katalogów (synchronizacja danych).
  • Obsługuje wznowienia kopiowania w przypadku błędów lub przerwania procesu.
  • Kopiuje nie tylko pliki, ale także atrybuty, daty i prawa dostępu NTFS.
  • Jest znacznie szybsze i bardziej stabilne niż tradycyjny xcopy.
  • Pozwala na szczegółowe logowanie i analizę wyników.

Składnia polecenia Robocopy

Ogólna składnia wygląda następująco:

robocopy <źródło> <cel> [pliki] [opcje]

Gdzie:

  • <źródło> – katalog, z którego kopiujemy pliki.
  • <cel> – katalog docelowy.
  • [pliki] – opcjonalnie określenie, jakie pliki mają być kopiowane (np. *.docx).
  • [opcje] – dodatkowe parametry sterujące kopiowaniem.

Najważniejsze parametry Robocopy

Parametr Opis
/S Kopiuje podkatalogi, ale pomija puste.
/E Kopiuje wszystkie podkatalogi, w tym puste.
/Z Tryb wznowienia – umożliwia kontynuację kopiowania po przerwaniu.
/MIR Tworzy lustrzaną kopię źródła (synchronizacja). Usuwa pliki w katalogu docelowym, które nie istnieją w źródle.
/XO Pomija starsze pliki – kopiuje tylko nowsze.
/XC Pomija pliki z różnicą w zawartości.
/XN Pomija nowsze pliki.
/COPY:DAT Kopiuje dane (D), atrybuty (A) i znaczniki czasu (T). Przykład: robocopy C:\Dane D:\Backup /COPY:DAT kopiuje pliki z zachowaniem ich metadanych.
/COPYALL Kopiuje wszystkie atrybuty plików, w tym prawa NTFS.
/R:n Liczba ponownych prób kopiowania w przypadku błędu. Domyślnie 1 mln.
/W:n Czas oczekiwania (w sekundach) pomiędzy kolejnymi próbami. Domyślnie 30 s.
/LOG:plik.txt Zapisuje raport do wskazanego pliku.
/TEE Wyświetla wynik w konsoli i zapisuje go do pliku (z opcją /LOG).
/XD katalog Wyklucza wskazany katalog z kopiowania.
/XF plik Wyklucza wskazany plik z kopiowania.
/MT[:n] Włącza wielowątkowe kopiowanie (domyślnie 8 wątków, max. 128). Przykład: /MT:32 przyspiesza kopiowanie na szybkich dyskach SSD.

Uwaga dotycząca /MT: Wielowątkowość znacząco przyspiesza kopiowanie, szczególnie na dyskach SSD. Zaleca się używanie 8–32 wątków, ponieważ zbyt duża liczba (np. 128) może obciążyć system, zwłaszcza na starszych dyskach HDD.

Przykłady użycia Robocopy

1. Kopiowanie wszystkich plików z podkatalogami

robocopy C:\Dane D:\Backup /E

Komenda skopiuje wszystkie pliki i podkatalogi (także puste) z folderu C:\Dane do D:\Backup.

2. Kopiowanie z możliwością wznowienia

robocopy C:\Dane D:\Backup /Z /E

Opcja /Z pozwala na kontynuację kopiowania, gdy proces zostanie przerwany (np. awaria sieci).

3. Tworzenie lustrzanej kopii (synchronizacja)

robocopy C:\Projekty D:\Projekty /MIR

Folder D:\Projekty będzie identyczny jak źródłowy. Pliki nieistniejące w źródle zostaną usunięte z katalogu docelowego.

4. Kopia tylko nowszych plików

robocopy C:\Dane D:\Backup /XO

Przydatne przy codziennym backupie – kopiuje tylko pliki, które zostały zmodyfikowane.

5. Kopiowanie z logowaniem

robocopy C:\Dane D:\Backup /E /LOG:C:\raport.txt

Raport z kopiowania zostanie zapisany w pliku raport.txt.

6. Wykluczanie katalogów lub plików

robocopy C:\Dane D:\Backup /E /XD temp cache /XF *.tmp

Pomijane będą katalogi temp i cache oraz wszystkie pliki z rozszerzeniem .tmp.

7. Szybsze kopiowanie wielowątkowe

robocopy C:\Dane D:\Backup /MT:32

Kopiowanie odbywa się przy użyciu 32 wątków równolegle – znacząco przyspiesza proces na szybkich dyskach.

8. Kopiowanie w środowisku sieciowym

robocopy \\Serwer1\Dane \\Serwer2\Backup /E /Z /COPYALL /LOG:C:\log_kopiowania.txt

Kopiuje wszystkie pliki i podkatalogi z serwera źródłowego na serwer docelowy, zachowując prawa NTFS i logując operację. Wymaga odpowiednich uprawnień sieciowych.

9. Kopia przyrostowa (incremental backup)

robocopy C:\Dane D:\Backup /MIR /XO /R:3 /W:5

Kopiuje tylko nowsze pliki, wykonując maksymalnie 3 próby w przypadku błędu, z 5-sekundowym odstępem między próbami.

Automatyzacja Robocopy w skryptach

Robocopy można łatwo zautomatyzować, np. w skryptach batch lub PowerShell, aby wykonywać regularne kopie zapasowe. Poniżej przykład prostego skryptu batch do codziennego backupu:

@echo off
set SOURCE=C:\Dane
set DEST=D:\Backup
set LOG=C:\Logs\backup_%date:~-4%%date:~3,2%%date:~0,2%.txt
robocopy %SOURCE% %DEST% /MIR /XO /LOG:%LOG% /TEE
echo Backup completed at %time% >> %LOG%

Ten skrypt można dodać do Harmonogramu Zadań Windows, aby uruchamiał się codziennie. W PowerShell można uzyskać większą elastyczność, np.:

$source = "C:\Dane"
$dest = "D:\Backup"
$log = "C:\Logs\backup_$(Get-Date -Format 'yyyyMMdd').txt"
robocopy $source $dest /MIR /XO /LOG:$log /TEE

Najczęstsze błędy i jak ich uniknąć

  • Błąd 0x00000005 (Access Denied): Brak uprawnień. Uruchom wiersz poleceń jako administrator. Sprawdź prawa dostępu do plików/katalogów za pomocą icacls lub Eksploratora Windows.
  • Niechciane kasowanie plików przy /MIR: Zawsze upewnij się, że katalog docelowy może być nadpisany, ponieważ /MIR usuwa pliki nieistniejące w źródle.
  • Duże obciążenie dysku przy /MT: Zbyt wiele wątków może spowolnić system. Na dyskach HDD zalecane jest 8–16 wątków, na SSD 16–32.
  • Problemy z kopiowaniem dużych plików: Upewnij się, że system plików docelowego dysku (np. NTFS, exFAT) obsługuje duże pliki.

Robocopy vs. Xcopy – co wybrać?

Xcopy to starsze narzędzie kopiowania, które w wielu scenariuszach jest już przestarzałe. Robocopy zapewnia większą kontrolę, obsługuje prawa NTFS, logowanie, wznowienia i synchronizację – dlatego jest rekomendowanym wyborem do pracy z dużą ilością danych.

Wymagania systemowe

Robocopy jest dostępny w systemie Windows od wersji XP (i Windows Server 2003) wzwyż. Wszystkie opisane parametry działają w systemach Windows 7, 10, 11 oraz wersjach serwerowych (np. Windows Server 2019, 2022). W starszych systemach (np. Windows XP) niektóre opcje, jak /MT, mogą nie być dostępne.

Podsumowanie

Robocopy to narzędzie, które każdy administrator i zaawansowany użytkownik Windows powinien znać. Dzięki ogromnej liczbie parametrów pozwala tworzyć niezawodne kopie zapasowe, synchronizować dane pomiędzy serwerami i automatyzować procesy związane z plikami. Odpowiednio użyte – staje się fundamentem bezpiecznego i wydajnego zarządzania plikami.

screen użycia komendy robocopy
screen użycia komendy robocopy
Zamów wycenę
Polityka prywatności | Regulamin
Pro-link 2005-2020