2007~2011/Tools2010. 6. 10. 10:18

원본 파일 또는 폴더에 대한 데이터, 속성, 타임스탬프, NTFS ACL, 소유자, 감사 정보를 모두 유지한 채 다른 폴더로 복사할 수 있을까요? Windows Server 2003 Resource Kit 등에 포함된 robocopy.exe 바이너리를 사용하면 이 고민을 해결할 수 있습니다. 사용 방법에 대한 간략한 예제를 아래와 같이 정리하였습니다. GUI 툴도 제공하니 취향에 맞게 사용하면 되겠습니다.


[환경]
Windows Server 2003


[작업절차]
1. C Drive 에 '걸그룹' 폴더 생성
2. 걸그룹 폴더 안에 소녀시대, 애프터스쿨, 원더걸스, 카라, 티아라 폴더 생성
3. 소녀시대, 애프터스쿨, 원더걸스, 카라 폴더 안에 '멤버.TXT' 파일 생성 (티아라 폴더에만 멤버.TXT 파일을 생성하지 않고 빈 폴더 유지)
4. C:\걸그룹 폴더에 앨범소개1.TXT, 앨범소개2.TXT 파일을 생성하고 앨범소개2.TXT 는 SYSTEM 권한 외 모든 권한 제거




5. C Drive 에 ROBOCOPY.EXT 파일을 복사한 뒤 아래 명령을 실행합니다.
 가. 실행 명령

C:\> ROBOCOPY C:\걸그룹 C:\스타\걸그룹 *.* /E /COPYALL /R:1 /W:1 /LOG:Z:\ROBO_LOG.TXT


 나. 옵션 설명 
  1) C:\걸그룹 : 원본 폴더 
  2) C:\스타\걸그룹 : 대상 폴더 (스타라는 폴더는 자동으로 생성됨)
  3) *.* : 모든 파일 
  4)  /E : 파일이 없는 빈 폴더를 포함하여 하위 폴더 복사 
  5) /COPYALL : 파일의 모든 정보 복사 ( = /copy:DATSOU ) 데이터, 속성, 타임스탬프, NTFS ACL, 소유자, 감사 정보 의미
  6) R:1 : 파일 복사 실패 시 재시도 횟수
  7) W:1 : 파일 복사 실패로 인해 재시도 할 경우 대기 시간 1초 
  8) LOG:Z:\ROBO_LOG.TXT : 처리 결과 로그 파일 생성 경로


6. 복사 결과 확인
 가. 폴더 내 파일이 없는 '티아라' 폴더 정상 복사
 나. 앨범소개2.TXT 파일은 복사되지 않음 
 다. 복사 성공된 모든 파일에 대한 권한, 타임스탬프 정보가 일치함
 다. Z:\ROBO_LOG.TXT 파일에 파일 복사 결과가 저장되어 있음




7. 로그 파일 확인

-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robust File Copy for Windows     ::     Version XP010
-------------------------------------------------------------------------------

  Started : Thu Jun 10 09:45:54 2010

   Source : c:\걸그룹\
   Dest : c:\스타\걸그룹\
   Files : *.*

  Options : *.* /S /E /COPYALL /R:1 /W:1
------------------------------------------------------------------------------
   New Dir          2 c:\걸그룹\
   New File           0 앨범소개1.TXT
100% 
     New File           0 앨범소개2.TXT
2010/06/10 09:45:54 ERROR 5 (0x00000005) Copying File c:\걸그룹\앨범소개2.TXT
액세스가 거부되었습니다.

Waiting 1 seconds... Retrying...
     New File           0 앨범소개2.TXT
2010/06/10 09:45:56 ERROR 5 (0x00000005) Copying File c:\걸그룹\앨범소개2.TXT
액세스가 거부되었습니다.

ERROR: RETRY LIMIT EXCEEDED.

   New Dir          1 c:\걸그룹\소녀시대\
   New File           0 멤버.TXT
100% 
   New Dir          1 c:\걸그룹\애프터스쿨\
   New File           0 멤버.TXT
100% 
   New Dir          1 c:\걸그룹\원더걸스\
   New File           0 멤버.TXT
100% 
   New Dir          1 c:\걸그룹\카라\
   New File           0 멤버.TXT
100% 
   New Dir          0 c:\걸그룹\티아라\
------------------------------------------------------------------------------

                   Total    Copied   Skipped  Mismatch    FAILED    Extras
    Dirs :           6          6          0              0             0             0
    Files :          6         5           0             0              1             0   
    Bytes :         0         0           0             0              0             0
    Times :   0:00:01   0:00:00                                  0:00:01   0:00:00
                                         (1개 파일이 복사 실패한 것을 확인할 수 있음)

    Ended : Thu Jun 10 09:45:56 2010



8. 복사되지 않은 파일 '앨범소개2.TXT' 에 Administrator 권한을 부여하고 다시 한 번 위 옵션으로 ROBOCOPY 를 실행하면 이미 복사 완료된 파일을 SKIP 하고 아래와 같이 파일 복사가 정상 처리됨을 확인할 수 있습니다. 

   Source : c:\걸그룹\
   Dest : c:\스타\걸그룹\
   Files : *.*
     
  Options : *.* /S /E /COPYALL /R:1 /W:1

------------------------------------------------------------------------------
                    2 c:\걸그룹\
     New File           0 앨범소개2.TXT
100% 
                    1 c:\걸그룹\소녀시대\
                    1 c:\걸그룹\애프터스쿨\
                    1 c:\걸그룹\원더걸스\
                    1 c:\걸그룹\카라\
                    0 c:\걸그룹\티아라\
------------------------------------------------------------------------------

                Total    Copied   Skipped  Mismatch    FAILED    Extras
     Dirs :        6         0           6           0                   0         0
    Files :        6         1        5           0                   0         0
    Bytes :       0         0           0           0                   0         0
    Times :   0:00:00   0:00:00                                 0:00:00   0:00:00
            (파일 정상 복사 1개, 파일 5개/폴더 6개는 skipped)



[참고자료]
Robocopy
http://technet.microsoft.com/en-us/library/cc733145(WS.10).aspx


작성자 : Lai Go / 작성일자 : 2010.06.10

Posted by 사용자 Lai Go
TAG

댓글을 달아 주세요

  1. Jee-Won

    디렉토리 동기화가 필요해서 명령을 찾아보다가 현재 블로그를 보게 되었습니다.
    robocopy 명령어로 실제 복사를 하다보니 directory의 timestamp가 새로 생성이 되서 더 알아보다가
    위에 쓰신 옵션에서 /DCOPY:T 옵션을 추가하니 directory의 timestamp도 복사가 된다는 정보를 다른 사람들에게도 같이 알려드리고 싶어서 글 남기고 갑니다.

    2015.01.10 18:04 [ ADDR : EDIT/ DEL : REPLY ]