윈도우에서 파일복사, 파일백업시 유용하게 사용할 수 있는 ROBOCOPY(로보카피) 사용법 및 예제 코드 입니다.
1. ROBOCOPY란?
- 윈도우 명령 (CMD)에서 사용할 수 있는 파일 복사 도구 입니다.
- 윈도우 비스타 이상부터 기본 제공하는 파일 복사 도구로 파일 복사, 백업, 일치화 등 다양하게 응용할 수 있습니다.
- 로컬 드라이브, 네트워크 드라이브의 파일 복사, 백업 등을 지원합니다.
2. ROBOCOPY 장점
- 드라이브 전체 복사, 특정 폴더 복사, 특정 파일 복사 가능
- 파일 권한, 정보 (소유자, 특성, 생성일 등) 모두 복사 가능
- 폴더 또는 파일 복사 후 추가로 실행하면 변경 사항만 복사 가능해서 빠른 백업이 가능
- ROBOCOPY 실행 후 결과를 로그파일로 확인 가능
3. ROBOCOPY 사용법
ROBOCOPY의 기본 구문은 ROBOCOPY [원본(소스)_디렉토리] [대상(타켓)_디렉토리] [옵션] 입니다.
예를 들어 C:\AA 폴더를 D:\BACKUP_AA 폴더에 미러링 복사하는 구문 입니다.
ROBOCOPY C:\AA D:\BACKUP_AA /MIR
주로 파일백업 또는 서버와 서버간에 대량의 파일을 동기화 할 때 사용합니다.
예를들어 A서버는 중지하고 B서버를 사용 예정이면, A 서버의 데이터를 ROBOCOPY를 이용해서 주중 업무 외 시간에 B서버로 데이터 동기화 합니다.
그리고 주말에 Cut-off 일정을 잡고 주말에 남은 변경분 데이터만 동기화 서버간 데이터 이동을 유용하게 할 수 있습니다.
ROBOCOPY 증분 백업시 사용하는 옵션
robocopy “c:\aa” ” c:\bb ” /S /E /COPY:DAT /PURGE /MIR /DCOPY:DAT /R:1 /W:1 /NS /NFL /NDL /NP /LOG:”C:\RESULT.LOG”
ROBOCOPY 사용법 및 예제 구문과 자주 사용하는 옵션
- CMD 실행
윈도우 시작 버튼 > 실행에서 CMD 입력해서 CMD 창을 엽니다.
- ROBOCOPY 명령 실행
CMD 창에서 ROBOCOPY 명령을 실행 합니다.
아래는 제가 주로 사용하는 ROBOCOPY 옵션 입니다. 옵션에 대한 상세 설명은 아래 ROBOCOPY 옵션을 참고 하시면 됩니다.
robocopy “c:\aa” ” c:\bb ” /S /E /COPY:DAT /PURGE /MIR /DCOPY:DAT /R:1 /W:1 /NS /NFL /NDL /NP /LOG:”C:\RESULT.LOG” - ROBOCOPY 실행 결과 로그파일
실행 결과가 로그 옵션에서 지정한 위치에 저장됩니다.
4. ROBOCOPY 주의사항
ROBOCOPY 사용시 앞쪽이 원본디렉토리, 뒤쪽이 대상 디렉토리 입니다.
순서를 바꿔서 사용하면 데이터가 모두 삭제될 수 있으니 경로 확인을 필수로 하고, 임의 폴더를 만들어 사전 테스트 해보시는걸 추천합니다.
5. ROBOCOPY 옵션
ROBOCOPY 실행에 붙는 옵션은 다양하게 있으니, 필요한 상황에 맞게끔 아래 옵션을 조합해서 사용하면 됩니다.
옵션 | Description |
---|---|
/s | 복사본 하위 디렉터리입니다. 이 옵션은 빈 디렉터리를 자동으로 제외합니다. |
/e | 복사본 하위 디렉터리입니다. 이 옵션은 빈 디렉터리를 자동으로 포함합니다. |
/lev:<n> | 원본 디렉터리 트리의 상위 n 수준만 복사합니다. |
/z | 다시 시작 가능 모드에서 파일을 복사합니다. 다시 시작 가능 모드에서 파일 복사가 중단되면 Robocopy는 전체 파일을 다시 복사하지 않고 중단된 위치를 선택할 수 있습니다. |
/b | 백업 모드에서 파일을 복사합니다. 백업 모드를 사용하면 Robocopy가 파일 및 ACL(폴더 권한 설정)을 재정의할 수 있습니다. 이렇게 하면 권한이 충분한 계정으로 실행되고 있다고 가정하여 액세스 권한이 없을 수 있는 파일을 복사할 수 있습니다. |
/zb | 다시 시작 가능 모드에서 파일을 복사합니다. 파일 액세스가 거부되면 는 백업 모드로 전환합니다. |
/j | 접미사가 없는 I/O를 사용하여 복사합니다(대용량 파일의 경우 권장). |
/efsraw | EFS RAW 모드에서 모든 암호화 된 파일을 복사합니다. |
/copy:<copyflags> | 복사할 파일 속성을 지정합니다. 이 옵션의 유효한 값은 다음과 같습니다.D – 데이터A – 특성T – 타임스탬프를S – NTFS ACL(액세스 제어 목록)O – 소유자 정보U – 감사 정보이 옵션의 기본값은 DAT(데이터, 특성 및 타임스탬프를)입니다. |
/dcopy:<copyflags> | 디렉터리에 복사할 내용을 지정합니다. 이 옵션의 유효한 값은 다음과 같습니다.D – 데이터A – 특성T – 타임스탬프를이 옵션의 기본값은 DA(데이터 및 특성)입니다. |
수/초 | 보안이 있는 파일을 복사합니다(/copy:DATS와동일). |
/copyall | 모든 파일 정보 복사 (동일 /copy:DATSOU). |
/nocopy | 복사 하는 파일 정보가 없습니다 (유용 제거/). |
/secfix | 모든 파일에 대 한 파일 보안 픽스는 스토리를 건너뜁니다. |
/timfix | 모든 파일에 대해 파일 시간을 수정 된 건너뜁니다. |
/purge | 더 이상 원본에 존재 하는 대상 파일 및 디렉터리를 삭제 합니다. /e 옵션 및 대상 디렉터리와 함께 이 옵션을 사용하면 대상 디렉터리 보안 설정을 덮어쓰지 않을 수 있습니다. |
/mir | 디렉터리 트리를 미러링합니다 (동일 /e plus 제거/). /e 옵션 및 대상 디렉터리와 함께 이 옵션을 사용하면 에서 대상 디렉터리 보안 설정을 덮어씁니다. |
/mov | 파일을 이동 하 고 복사한 후 다른 소스에서 삭제 합니다. |
/move | 파일 및 디렉터리를 이동 하 고 복사한 후 다른 소스에서 삭제 합니다. |
/a +: [RASHCNET] | 복사 된 파일에 지정 된 특성을 추가합니다. 이 옵션의 유효한 값은 다음과 같습니다.R – 읽기 전용A – 보관S – 시스템H – 숨김C – 압축N – 인덱싱된 콘텐츠가 아닙니다.E – 암호화T – 임시 |
/ a-: [RASHCNET] | 복사 된 파일에서 지정 된 특성을 제거합니다. 이 옵션의 유효한 값은 다음과 같습니다.R – 읽기 전용A – 보관S – 시스템H – 숨김C – 압축N – 인덱싱된 콘텐츠가 아닙니다.E – 암호화T – 임시 |
만들기 / | 디렉터리 트리 및 길이가 0 인 파일만 만듭니다. |
fat / | 8.3 문자 길이 FAT 파일 이름을 사용 하 여 대상 파일을 만듭니다. |
/256 | 256자보다 긴 경로에 대한 지원을 해제합니다. |
/mon:<n> | 원본을 모니터링하고 n개 이상의 변경 내용이 검색되면 다시 실행됩니다. |
/mot:<m> | 원본을 모니터링하고 변경 내용이 검색되면 m분 안에 다시 실행됩니다. |
/MT[:n] | n 스레드를 통해 다중 스레드 복사본을 만듭니다. n은 1에서 128 사이의 정수여야 합니다. n의 기본값은 8입니다. 성능을 향상 시키려면 /log 옵션을 사용 하 여 출력을 리디렉션합니다./Mt 매개 변수는 /ipg 및 /efsraw 매개 변수와 함께 사용할 수 없습니다. |
/rh:hhmm-hhmm | 새 복사본을 시작할 수 있습니다 실행된 시간을 지정 합니다. |
/pf | 검사 파일 (당-불합격) 단위로에 번 실행합니다. |
/ipg:n | 저속 회선에서의 대역폭을 확보 하는 패킷 간 간격을 지정 합니다. |
/sl | 바로 가기 링크를 따르지 말고 링크의 복사본을 만듭니다. |
/nodcopy | 디렉터리 정보를 복사 하지 않습니다 (기본 /dcopy: DA 가 수행 됨). |
/nooffload | Windows 복사 오프 로드 메커니즘을 사용 하지 않고 파일을 복사 합니다. |
/compress | 해당 하는 경우 파일을 전송 하는 동안 네트워크 압축을 요청 합니다. |
옵션 | Description |
---|---|
/a | 있는 파일만 복사는 보관 특성이 설정 되어 있습니다. |
/m | 있는 파일만 복사는 보관 특성을 설정 하 고 다시 설정 된 보관 특성입니다. |
ia[RASHCNETO] | 지정된 된 특성의 모든 설정 되어 있는 파일만 포함 됩니다. 이 옵션에 사용할 수 있는 값은 다음과 같습니다.R -읽기 전용A -보관S -시스템H -숨김C -압축 됨N -콘텐츠 인덱싱되지 않음E -암호화T -임시O -오프 라인 |
a[RASHCNETO] | 지정된 된 특성의 모든 설정 되는 파일을 제외 합니다. 이 옵션에 사용할 수 있는 값은 다음과 같습니다.R -읽기 전용A -보관S -시스템H -숨김C -압축 됨N -콘텐츠 인덱싱되지 않음E -암호화T -임시O -오프 라인 |
/xf <filename>[ ...] | 지정 된 이름이 나 경로 일치 하는 파일을 제외 합니다. 와일드 카드 문자 ( * 및 *) 이 지원됩니다. |
/xd <directory>[ ...] | 지정 된 이름 및 경로가 일치 하는 디렉터리를 제외 합니다. |
/xc | 변경 된 파일을 제외합니다. |
/xn | 최신 파일을 제외합니다. |
/xo | 오래 된 파일을 제외합니다. |
/xx | 추가 파일 및 디렉터리를 제외합니다. |
/xl | “다” 파일 및 디렉터리를 제외합니다. |
/im | 수정 된 파일을 포함 합니다 (다른 변경 시간). |
/is | 동일한 파일을 포함합니다. |
/it | 조정 된 파일을 포함 합니다. |
/xc | 타임 스탬프는 같지만 파일 크기가 다른 기존 파일은 제외 합니다. |
/xn | 원본 디렉터리의 복사본 보다 최신인 기존 파일을 제외 합니다. |
/xo | 원본 디렉터리의 복사본 보다 오래 된 기존 파일을 제외 합니다. |
/xx | 대상에 있지만 원본에는 없는 추가 파일 및 디렉터리를 제외 합니다. 추가 파일을 제외 하면 대상에서 파일이 삭제 되지 않습니다. |
/xl | 원본에는 있지만 대상에는 없는 “요” 파일 및 디렉터리를 제외 합니다. 요 파일을 제외 하면 새 파일이 대상에 추가 되지 않습니다. |
/is | 동일한 파일을 포함합니다. 동일한 파일이 이름, 크기, 시간 및 모든 특성에서 동일 합니다. |
/it | “조정” 파일을 포함 합니다. 조정 된 파일의 이름, 크기 및 시간은 동일 하지만 특성은 서로 다릅니다. |
최대값<n> | 최대 파일 크기를 지정 합니다 ( n 바이트 보다 큰 파일 제외). |
/min<n> | 최소 파일 크기를 지정 합니다 ( n 바이트 보다 작은 파일 제외). |
maxage<n> | 최대 파일 보존 기간을 지정 합니다 ( n 일 또는 날짜 보다 오래 된 파일 제외). |
/minage:<n> | 최소 파일 사용 시간(n일 또는 날짜 이후의 파일 제외)을 지정합니다. |
/maxlad:<n> | 최대 마지막 액세스 날짜를 지정합니다(n 이후 사용되지 않은 파일 제외). |
/minlad:<n> | 최소 마지막 액세스 날짜(n이후 사용된 파일 제외)를 지정합니다. n이 1900보다 작은 경우 n은 일 수를 지정합니다. 그렇지 않으면 n은 YYYYMMDD 형식의 날짜를 지정합니다. |
/xj | 기본적으로 일반적으로 포함 된 연결 지점에서 제외 됩니다. |
/fft | FAT 파일 시간을 가정합니다(2초 자릿수). |
/dst | 1 시간 짜리 DST 시간 차이를 보정합니다. |
/xjd | 디렉터리에 대 한 연결 지점을 제외합니다. |
/xjf | 파일에 대 한 연결 지점을 제외합니다. |
옵션 | Description |
---|---|
/r:<n> | 실패한 복사에 대한 재시도 횟수를 지정합니다. n의 기본값은 1,000,000(1백만 번의 재시도)입니다. |
/w:<n> | 다시 시도 간의 대기 시간을 지정합니다(초). n의 기본값은 30(대기 시간 30초)입니다. |
/reg | 에 지정 된 값을 저장 된 /r 및 /w 레지스트리에서 기본 설정으로 옵션입니다. |
/tbd | 시스템 정의 공유 이름에 대 한 대기 함을 지정 합니다 (다시 시도 오류 67). |
옵션 | Description |
---|---|
/l | 파일이 나열 될 지 지정 합니다 (및 복사 되지 않으며, 삭제 또는 타임 스탬프). |
/x | 뿐만 아니라 선택 된 모든 추가 파일을 보고 합니다. |
/v | 자세한 정보 출력을 생성 하 고 건너뛴된 파일을 모두를 보여 줍니다. |
/ts | 출력 소스 파일 타임 스탬프를 포함합니다. |
/fp | 출력 파일의 전체 경로 이름을 포함합니다. |
/bytes | 바이트 형식으로 크기를 인쇄합니다. |
/ns | 파일 크기를 기록 되도록 지정 합니다. |
/nc | 파일 클래스를 기록 되도록 지정 합니다. |
/nfl | 기록하지 않을 파일 이름을 지정합니다. |
/ndl | 기록하지 않을 디렉터리 이름을 지정합니다. |
/np | 복사 작업의 진행률(지금까지 복사된 파일 또는 디렉터리의 수)이 표시되지 않도록 지정합니다. |
/eta | 복사 된 파일의 (ETA) 도착 예상된 시간을 보여 줍니다. |
/log:<logfile> | 로그 파일에 상태 출력을 작성합니다(기존 로그 파일을 덮어씀). |
/log+:<logfile> | (기존 로그 파일에 출력 추가) 하는 로그 파일에 상태 출력에 씁니다. |
/unicode | 유니코드 텍스트로 상태 출력을 표시합니다. |
/unilog:<logfile> | (기존 로그 파일을 덮어씀) 하는 유니코드 텍스트로 출력 로그 파일에 상태를 씁니다. |
/unilog+:<logfile> | (기존 로그 파일에 출력 추가) 하는 유니코드 텍스트로 출력 로그 파일에 상태를 씁니다. |
/tee | 로그 파일 뿐만 아니라 콘솔 창에 상태 출력에 씁니다. |
/njh | 작업 헤더가 없으면 임을 지정 합니다. |
/njs | 작업 요약 없음 임을 지정 합니다. |
옵션 | Description |
---|---|
/job:<jobname> | 매개 변수 명명 된 작업 파일에서 파생 시 키도 록 지정 합니다. |
/save:<jobname> | 매개 변수를 명명 된 작업 파일에 저장 되도록 지정 합니다. |
종료 / | 후 처리 (보려면 명령줄에 매개 변수)를 종료 합니다. |
/nosd | 원본 디렉터리가 지정 되었음을 나타냅니다. |
/nodd | 대상 디렉터리가 지정 되었음을 나타냅니다. |
/if | 지정된 된 파일에 포함 되어 있습니다. |
django개발 Docker 설치하기 NAS 네트워크 구성 NAS비교 NAS사용법 NAS용도 NAS 포트포워딩 NAS활용 phpMyAdmin DB생성 QNAP NAS QNAP NAS 웹서버 QNAP Virtualization Station QNAP WinSCP QNAP 가상화 QNAP 랜섬웨어 QNAP 보안설정 QNAP 설정 QNAP 워드프레스 설치 QNAP 웹서버 QNAP 파일 업로드 SEO최적화 Synology QNAP 비교 WinSCP다운로드 WinSCP사용법 가비아 도메인 가상스위치구성 공유기 SUPER DMZ 설정 공유기 포트포워딩 구글SEO 노트북파우치 도커 워드프레스 리눅스 설치하는 방법 아이폰 애플케어플러스 에스티나인 워드프레스 고유주소 워드프레스 기본설정 워드프레스 설정 워드프레스 설치 워드프레스설치형 워드프레스 자동글쓰기 워드프레스 자동포스팅 쿠팡 파트너스 매크로 쿠팡파트너스 하는법 클라우드에 워드프레스 설치하기 홈게이트웨이 SUPER DMZ
Pingback: WMIC 명령어로 시스템 정보 확인하기 - IT 인프라 학교