분명히 Robocopy는 Windows Server 2016 중복 제거를 이해하지 못합니다. 볼륨을 손상시키지 않고 작동시키는 방법이 있습니까? 실행하여 새 서버의

대본:

  • 이 서버 오류 가이드에 따라 이전 Server 2008 R2에서 새 서버 2016으로 서버 마이그레이션 수행 : Robocopy를 사용한 파일 서버 마이그레이션

  • Robocopy가 완료되면 복사 한 볼륨에 대해 Server 2016에서 중복 제거를 활성화 한 다음 PowerShell을 사용하여 수동으로 중복 제거를 시작합니다. 몇 시간이 지나면 디스크 공간의 약 25 %가 완료되고 복구됩니다.

  • Robocopy를 다시 실행하여 새 서버의 최종 확인으로 초기 복사에서 누락 된 내용을 복사하십시오.

…. 그러나 서버 2016에서 실행되는 Robocopy는 중복 제거를 이해하지 못하므로 중복 제거 청크 저장소를 휴지통으로 이동합니다.

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

  Started : Sunday, July 8, 2018 12:10:02 PM
   Source : \\SERVER-2008\e$\
     Dest : \\SERVER-2016\e$\

    Files : *.*

  Options : *.* /TEE /S /E /COPYALL /PURGE /MIR /ZB /NP /MT:32 /R:1 /W:10

------------------------------------------------------------------------------

    *EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\
    *EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\
    *EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\
      *EXTRA File         253504    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\DedupFileList.1
      *EXTRA File         253504    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\DedupFileList.2
      *EXTRA File             28    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\stamp.dat
    *EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\COW\
    *EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\COW\00010000\
      *EXTRA File         196608    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\COW\00010000\00000046.00.RB
      *EXTRA File         106496    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\COW\00010000\00000048.00.RB

[…….]

*EXTRA File           30.3 m    \\SERVER-2016\e$\System Volume Information\Dedup\ChunkStore\{B7E1F3A4-AAD9-4449-9DF7-5489421C9EC5}.ddp\Stream\000f0000.00000002.ccc
*EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\
  *EXTRA File         29.7 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\00000001.kmchange.log
  *EXTRA File        999.8 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\changes.optimization.1.10.archive.etl
  *EXTRA File       1000.0 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\changes.optimization.1.11.archive.etl
  *EXTRA File        735.5 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\changes.optimization.1.12.archive.etl
  *EXTRA File        999.8 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\changes.optimization.1.9.archive.etl
  *EXTRA File          1.3 m    \\SERVER-2016\e$\System Volume Information\Dedup\Logs\changes.optimization.2.1.archive.etl
*EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\
  *EXTRA File             76    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\Dedup.00.cfg
  *EXTRA File             76    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\Dedup.01.cfg
  *EXTRA File           2228    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\dedupConfig.01.xml
  *EXTRA File           2228    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\dedupConfig.02.xml
  *EXTRA File              0    \\SERVER-2016\e$\System Volume Information\Dedup\Settings\VolumeJobLock.bin
*EXTRA Dir        -1    \\SERVER-2016\e$\System Volume Information\Dedup\State\
  *EXTRA File           2982    \\SERVER-2016\e$\System Volume Information\Dedup\State\chunkStoreStatistics.xml
  *EXTRA File           2592    \\SERVER-2016\e$\System Volume Information\Dedup\State\dedupStatistics.xml
  *EXTRA File         11.5 m    \\SERVER-2016\e$\System Volume Information\Dedup\State\GCReservedSpaceBitmap.tmp
  *EXTRA File          1.0 g    \\SERVER-2016\e$\System Volume Information\Dedup\State\GCReservedSpaceContainer.ccc
  *EXTRA File         46.0 m    \\SERVER-2016\e$\System Volume Information\Dedup\State\GCReservedSpaceDeleteLogs.tmp
  *EXTRA File          1.0 m    \\SERVER-2016\e$\System Volume Information\Dedup\State\GCReservedSpaceFileList.tmp
  *EXTRA File           4096    \\SERVER-2016\e$\System Volume Information\Dedup\State\GroupCommitFlushControl0.bin
  *EXTRA File           2066    \\SERVER-2016\e$\System Volume Information\Dedup\State\optimizationState.xml

[……]

나는 로그 에서이 비행을보고 무슨 일이 일어나고 있는지 인식 한 후 순간을 중단했다. 그러나 이미 손상된 상태입니다. 중복 제거 된 새 서버의 데이터는 \ System Volume Information을 통해 폭풍으로 인해 Robocopy에 의해 즉시 손상되었습니다. 새 서버 드라이브 파티션이 Server 2008에서 다시 포맷되고 다시 복사되었습니다.

중복 제거 볼륨 데이터에 닿지 않도록 Robocopy를 사용하는 안전한 방법이 있습니까?

또한, 새로운 관심사가 있습니다. Robocopy가 중복 제거 된 볼륨을 파괴 할 수 있다면, 중복 제거 된 볼륨과 함께 사용하기에 안전하지 않은 것은 무엇입니까? (아마도 별도의 질문이어야합니다 ..)



답변

System Volume Information디렉토리는 / XD 스위치를 사용하여 제외해야합니다. 아마도 다른 숨겨진 / 시스템 디렉토리를 제외하는 것이 좋습니다 $RECYCLE.BIN.


답변

사용 된 두 개의 명령 행 스위치는 다음 /MIR과 같습니다 /ZB. 설명서 ( robocopy /???)에 설명 된대로 :

/ MIR :: 디렉토리 트리를 미러링합니다 (/ E plus / PURGE와 동일).
/ ZB :: 재시작 가능 모드 사용; 액세스가 거부되면 백업 모드를 사용하십시오.

그것은 당신이 한 조합입니다 : /MIRdelete ( robocopy인수없이 실행할 때 지적한 바와 같이 ) 및 “백업 모드”는 파일을 “일반적으로”읽을 수 없어서 완전한 백업을하기 위해 대부분의 권한을 무효화합니다.

“백업 모드”는 “도움말”설명에서 특히 정의되지 않습니다. Windows CreateFileAPI는이라는 플래그를 지원합니다.이 플래그 FILE_FLAG_BACKUP_SEMANTICS는 특정 액세스 권한 SE_BACKUP_NAME( 기본적으로 관리자 그룹 부여 된 백업 운영자 그룹)과 함께 일반 파일 보안을 무시합니다.

당신은 몰랐어요? 그러면 robocopy가 원래 Windows의 일부가 아니었다는 것을 알지 못할 수도 있습니다. “Windows Resource Kit”라는 보조 장치의 일부였으며,이 프로그램은 주로 프로그래머와 하드 코어 sysadmins가 주로 사용했습니다. 추가 성능 옵션을 제외하고는 전혀 주목을받지 못했습니다! 특히 UI 또는 유용성에 전념하는 프로그램 관리자의 관심은 없습니다 . 따라서 사용하거나 잃을 수있는 힘의 원천입니다! -귀하의 책임입니다.

일반적으로 이해하지 못하는 명령 줄 옵션을 사용하지 마십시오.

“백업 모드”파일 액세스에 대해 알고 싶은 정보 :

https://isc.sans.edu/forums/diary/Use+The+Privilege/20483/

https://docs.microsoft.com/en-us/windows/desktop/api/FileAPI/nf-fileapi-createfilea

https://docs.microsoft.com/en-us/windows/desktop/FileIO/file-security-and-access-rights


답변

제공된 다른 답변을 사용하고 중복 제거 된 대상으로 테스트 한 후속 결과는 다음과 같습니다. ( 메타 : 원래 질문의 맨 아래에 이것을 편집으로 포함시켜야하는지 모르겠습니다. )

Robocopy 명령 줄은 다음과 같이 발전했습니다.

robocopy \\OLD-SERVER\e$\ \\NEW-SERVER\e$\ /MIR /COPYALL /DCOPY:DAT /NP /Z /B /J /SL /MT:128 /R:1 /W:10 /LOG+:robocopy-log.txt /TEE /XD "Recycler" "Recycled" "$Recycle.bin" "System Volume Information" /XF "pagefile.sys" "swapfile.sys" "hiberfil.sys"

옵션과 목적 :

  • / MIR-소스를 대상으로 미러링하고 더 이상 소스에없는 파일 및 디렉토리를 삭제합니다.
  • / COPYALL-모든 파일 정보 복사 : 데이터, 속성 및 타임 스탬프, NTFS 보안 ACL, 소유자 정보, 감사 정보 (모두 기본적으로 포함되어 있지는 않음)
  • / DCOPY : DAT-모든 디렉토리 정보 복사-데이터, 속성, 타임 스탬프 (원본 작성 타임 스탬프는 기본적으로 복사되지 않습니다. 일반적으로 Robocopy에서 복사 한 날짜로 변경됨)
  • / NP-진행률 표시 안 함
  • / Z-재시작 가능 모드 사용
  • / B-백업 모드에서 파일 복사 (관리자를 제외하고 독점 소유자 인 사용자 디렉터리에 필요한지 여부는 모르겠습니다.이 옵션은 “시스템 볼륨 정보”를 제외하지 않고 중복 제거 된 대상 볼륨을 삭제합니다)
  • / J-버퍼되지 않은 I / O를 사용하여 복사 (큰 멀티 기가 파일의 빠른 복사)
  • / SL-대상이 아닌 심볼릭 링크 복사
  • / MT : 128-최대 CPU 스레드 사용 (10 기가비트 이더넷 및 많은 CPU 코어 사용이 좋음)
  • / R : 1-파일 액세스 오류 인 경우 1 회 다시 시도
  • / W : 10-파일 액세스 오류 인 경우 10 초 동안 기다렸다가 다시 시도하십시오.
  • / LOG +-출력을 텍스트 파일에 기록하고 로그 파일이 이미 존재하는 경우 추가
  • / TEE-결과를 화면 및 로그 파일에 인쇄
  • / XD-디렉토리와 그 안의 모든 것을 제외합니다. 공백이있는 이름은 따옴표로 묶어야합니다. “Recycler” “Recycled” “$ Recycle.bin” “System Volume Information”
  • / XF-파일 제외 : 가상 메모리 및 최대 절전 모드 파일이 소스에있는 경우 : “pagefile.sys” “swapfile.sys” “hiberfil.sys”

최종 재실행 :

            Total    Copied   Skipped  Mismatch    FAILED    Extras
 Dirs :    158189    153466    158186         0         0         0
Files :   1116292         0   1116296         0         0         0
Bytes :   1.350 t         0   1.350 t         0         0         0
Times :   0:01:04   0:00:00                       0:00:00   0:01:04

,

또한 Microsoft에 버그를 신고 할 적절한 채널을 모르지만 Microsoft 중복 제거 설명서 하단의 Windows IT Pro Center 웹 사이트 에서이 토론에 연결했습니다 .

https://docs.microsoft.com/en-us/windows-server/storage/data-deduplication/overview


답변

robocopy / Robocopy가 무엇인지 모른다고 생각합니다. Windows 명령 줄을위한 강력한 파일 복사 명령으로 파일, 디렉토리 및 드라이브를 한 위치에서 다른 위치로 복사 할 수 있습니다. 자세한 내용을 보려면이 기사 https://rocketfiles.com/articles/what-is-robocopy-in-windows를 확인
하십시오.