PC/Windows Poradniki

Używamy polecenia robocopy do wykonania backupu danych.

Z pewnością każdy z nas potrzebował stworzyć szybką kopię zapasową naszych plików. Dzisiaj pokaże wam niezwykle prosty patent, na wykonanie kopii plików za pomocą polecenia robocopy.

Osobiście korzystam z tego polecenia od jakiegoś czasu i nigdy mnie nie zawiodło. Składnia robocopy jest dość banalna załóżmy, że chcemy wykonać backup zawartości folderu:

D:\Dokumenty

Do lokalizacji:

F:\Backup\Dokumenty

Podstawowa składnia polecenia wygląda zatem następująco:

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty"

Jednak na niewiele się nam ona zda gdyż szybko okaże się, że w ten sposób kopiujemy jedynie pliki we wskazanym przez nas folderze, wszystkie podfoldery są pomijane. Aby uwzględnić foldery możemy użyć parametru /S a jeszcze lepiej /E który skopiuje również puste katalogi:

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty" /E

Dam sobie rękę uciąć, że często coś zmieniacie w strukturze swoich dokumentów np. segregujecie swoje zdjęcia czy też muzykę przenosząc je pomiędzy folderami. Wypadałoby nakłonić robocopy, aby uwzględniał te zmiany i usuwał nieistniejące już foldery/pliki z naszej kopi zapasowej prawda ? Zatem zamiast parametru /E wykorzystamy parametr /MIR

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty" /MIR

Teraz jeżeli korzystacie z linków symbolicznych o których już pisałem, i z jakiegoś powodu chcecie je pominąć w trakcie tworzenia kopii musicie do polecenia dodać parametr /XJD a jeżeli chcecie pominąć jeszcze pliki systemowe użyjcie parametru /XA:SH zatem nasza składnia zaczyna wyglądać następująco:

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty" /MIR /XJD /XA:SH

Ale to jeszcze nie wszystko.  Jednym z większych „bajerów” jakie posiada robocopy to jego reakcja na próbę skopiowania pliku, który aktualnie jest w użyciu. Standardowo natrafiając na taki plik wyświetla nam się taki komunikat:

scr 7033953 Używamy polecenia robocopy do wykonania backupu danych.Czyli bohater naszego artykułu poczeka sobie 30 sekund i ponowi próbę. Jeżeli nie uda mu się skopiować pliku po milionie prób (to nie jest żart…) plik zostanie pominięty. Musimy zatem nakłonić robocopy, aby po pierwsze zmniejszył czas pomiędzy próbami kopiowania parametrem /w:x oraz co jest bardziej oczywiste liczbę prób skopiowania pliku /r:x gdzie pod x podajemy czas w sekundach.

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty" /MIR /XJD /XA:SH /R:5 /W:15

W moim przypadku skrypt będzie czekał 15 sekund a po piątej nieudanej próbie po prostu go pominie.

Mam nadzieję, że do tego czasu jeszcze niczego nie zagmatwałem, pozostał nam jeszcze jeden parametr który warto znać. Standardowo robocopy zajmuje się jednym plikiem jednocześnie co przy listowaniu katalogów potrafi mu zająć za dużo naszego czasu. Parametr /MT:x określa iloma operacjami robocopy zajmie się jednocześnie. W moim przypadku wystarcza mi 15 wątków zatem dodajemy kolejny parametr do naszego polecenia:

robocopy "D:\Dokumenty" "F:\Backup\Dokumenty" /MIR /XJD /XA:SH /R:5 /W:15 /MT:15

Dzięki czemu sprawimy, że cała operacja zajmie znacznie mniej czasu oczywiście tylko w przypadku, jeżeli zrobiliśmy już co najmniej jedną kopię zapasową za pomocą naszego skryptu.

Czytaj także:  Usuwamy pozycję "Drukuj" z menu kontekstowego Windows

Mam nadzieję, że dość jasno wytłumaczyłem wam jak korzystać z robocopy. Wyżej wymienione parametry to tylko wierzchołek góry lodowej, aby uzyskać dostęp do wszystkich parametrów wystarczy w wierszu poleceń wpisać

robocopy /?

a wyświetlą nam się wszystkie dostępne parametry m.in. pomijanie plików starszych niż x dni, większych od x bajtów itd. Skoro znacie już składnię tego polecenia z pewnością dostosujecie polecenie robocopy do swoich potrzeb.

Nie musicie za każdym razem wklepywać polecenia w wiersz poleceń. Po prostu zapiszcie je np. w notatniku z rozszerzeniem *.cmd np. backup.cmd i w chwili potrzeby po prostu uruchomcie je jako administrator.

Jak widzicie do wykonania nawet dość zaawansowanego backupu danych wcale nie potrzebujecie zewnętrznych aplikacji wystarczy odrobinę sprytu i dość podstawowa wiedza którą się właśnie z wami podzieliłem.

Jak bardzo te informacje były dla Ciebie przydatne ?

Kliknij w ikonkę aby ocenić ten wpis:

Średnia ocen 2.5 / 5. Liczba głosów: 4

Nikt jeszcze nie ocenił 🙁

Wpisy, które mogą Ciebie zainteresować:

Uaktywniamy czarny styl w Windows 10

Kabson

Wyłączamy Panel Sterowania oraz Ustawień w Windows

Kabson

5 rzeczy które Linux robi lepiej od Windowsa

Kabson

Dwa sposoby na naprawę Windows Power User Menu

Kabson

Cztery proste metody na sprawdzenie typu tablicy partycji (GPT/MBR)

Kabson

Wyłączamy bądź kompletnie usuwamy aplikacje ze sklepu Microsoftu.

Kabson
Subksrybuj
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

13 komentarzy
najnowszy
najstarszy oceniany
Inline Feedbacks
View all comments
przemex
przemex
12 dni temu

Uratowałeś mi życie od 3 dni siedziałem aby zrobić kopię dysku prawie 1TB, ciągle wywalało mi błąd kopiowania za długa nazwa Windows file paths longer than 255 characters podczas funkcji kopiowania windows, masa zmian w windows7 w rejestrze typu LongPathsEnabled and set it to 1, setki solucji w internecie aby rozwiązać ten problem niestety nic nie pomagało, nawet nadałem enable dla grupy windows Enable Win32 long paths aby nie zwracał błędu za długiej nazwy podczas kopiowania plików bez skutki, na postach zagranicznych przewijał się wątek robocopy aby zastosować komendę robocopy d:\*.* e:\*.* niestety nie działała u mnie wywalało błąd i tak trafiłem na Twoją stronę i to był strzał w 10-tkę, są programy do robienia kopii bezpieczeństwa ale 99% komercyjnie zastosowanie jest płatnych, teraz po Twojej solucji robię kopię bezpieczeństwa bez problemu i nawet wydaje mi się że szybciej kopiuje niż funkcją kopiowania w windows. Podziękowania teraz backup bezpieczeństwa jest przyjemny 🙂 zajmuje skopiowanie 1TB bo to masa drobnych plików po kilka kb, ale idzie bez problemu 🙂

Marek
Marek
2 lata temu

Witam. Mam takie dwa skrypty uruchomione jednoczesnie:
1 robocopy „D:\Dysk lokalny\Raporty” „D:\Dysk sieciowy\Raporty PK” /IF *PK*.txt /E /FFT /MON:1
2 robocopy „D:\Dysk lokalny\Raporty” „D:\Dysk sieciowy\Raporty” /XF *PK*.txt /E /FFT /MON:1
Ma to na celu kopiowanie plikow z wykluczeniem. To wszystko działa w taki sposob, że tworzą się dwa katalogi na dysku sieciowym „Raporty i „Raporty PK” i do pierwszego kopiuje się wszystko co nie zawiera PK a do drugiego co zawiera PK. Czyli są dwie ścieżki. Teraz moje pytanie jest takie czy da się to zrobić w taki sposób żeby była jedna ścieżka , a katalog PK tworzył się wewnątrz folderu gdzie napotyka plik w nazwie z PK. Przykład D:\Dysk sieciowy\Raporty\Kwartał 1\Kwartał 2… i właśnie w tym miejscu jest plik zawierający w nazwie PK i tu tworzy się katalog i wrzuca wszystkie te pliki. Nie wiem czy za dużo nie namieszałem i rozumiecie o co mi chodzi ?
Pozdrawiam.

Skcaru
Skcaru
2 lata temu

Działa. Wielkie dzięki ?

Skcaru
Skcaru
2 lata temu

Dzieki. A teraz mam taki problem, pliki maja nazwy np. Plik1 us.txt ; Plik2.txt; Plik3.txt. No i chce zeby skopiowal wszystkie a pominal te ktore w nazwie pliku beda mialy „us”. Czy jest w ogole taka możliwosc. Pozdrawiam. ?

Skcaru
Skcaru
2 lata temu

To będę czekał na informację. Dzięki ?

Skcaru
Skcaru
2 lata temu

Witam. A jest taka możliwość żeby podczas kopiowania zostały pominięte te pliki które w nazwie mają jakiś wyraz klucz dzięki któremu będziemy oznaczać pliki których nie chcemy kopiować?
Pozdrawiam.

iPOD
Admin
3 lata temu

Robocopy jest idealne do tworzenia mirrorów zawartości całych dysków – sam tego używam do szybkich backupów. Mógłby jeszcze kompresować zawartość kopii, no ale jak za darmo to i tak jest dobrze.

W celu świadczenia usług na najwyższym poziomie strona http://variatkowo.pl używa Cookies. Korzystając ze strony wyrażasz zgodę na ich używanie zgodnie z polityką plików cookies. Ok, rozumiem Czytaj więcej