본문 바로가기
Windows

Robocopy - copy everything another drive

by 올엠 2020. 9. 30.
반응형

윈도우에서 제공하는 기본 복사 명령인 robocopy는 막강한 기능을 갖춘 복사 도구이다.

다음과 같은 상황에서 많이 이용된다.

- 추가로 생성된 파일에 대한 복사

- 동일한 보안 권한을 유지하면서 복사

- 잠긴 파일 복사(쉐도우 카피 이용)

 

여기에서는 드라이브 전체를 다른 드라이브로 복사하는데, 소스의 권한을 유지하면서 복사하는 방법을 공유해 보겠다.

기본적으로 윈도우에서 드라이브를 넘어가는 경우 속성, 권한은 초기화 되기 때문에 간혹 파일 속성과 권한을 그대로 유지해야 하는 경우 유용하게 사용할 수 있다.

또 하나의 장점은 robocopy의 경우 대상 폴더에 동일한 파일이 있는 경우 Overwrite 옵션을 주지 않는 다면, 기본적으로 무시하도록 구성된다.(Overwrite 옵션 - /si(대상 폴더에 속성이 동일한 파일이 있는 경우 덥어씀) , /it(속성이 다른 파일인 경우 덥어씀) 2가지 옵션 동시에 사용가능함 이경우 파일 속성이 동일하거나 다른 경우 덥어씀)

 

robocopy <원본> <대상> /copyall /e /dcopy:t /b /r:3 /w:1 /v

 

/copyall - 지정한 원본 폴더의 모든 파일 정보를 복사

/e - 비어있는 폴더 포함, 만약 /s 옵션과 함께쓰면 /e 옵션이 우선시 됨

/dcopy:t - 원본 폴더의 시간 값을 가져옴

/b - 백업 모드로 복사, 이 옵션을 사용해야 파일의 소유권한을 유지

/r:n - 실패시 재시도 횟수, 현재는 3회로 되어 있다.

/w:n - 재시도시 대기하는 시간으로 초단위

/v - 세부정보를 표시

 

/v 옵션을 통해 복사현황을 확인 할 수 있다.

이외 유용한 옵션은 다음과 같다.

 

/mt:n - 스레드를 n개의 갯수 만큼 실행하여 다중 스레드 복사를 진행, 실행되는 스레드 수만큼 속도가 빨라지나, 디스크 쓰기 IO 부분을 고려해서 사용 필요, 복사 결과에 대해서는 /log 옵션을 이용하여 저장된 파일을 통해 확인

/mon:n - 원본 폴더를 모니터링하다가 n개의 파일 이상 변경이 있는 경우, 복사 시작

/mot:n - 원본 폴더를 모니터링하다가 변경이 있다면, n 분이후  복사 시작

반응형