수동으로 전송된 파일의 지문이 다르기 때문에 rsync가 이를 동일한 파일로 인식하지 못합니까?

수동으로 전송된 파일의 지문이 다르기 때문에 rsync가 이를 동일한 파일로 인식하지 못합니까?

나는 이 질문에 대한 답을 이미 알고 있다고 생각하지만 확인하고 싶었습니다. 당시에는 rsync를 제대로 이해하지 못했기 때문에 한 가상 머신에서 다른 가상 머신으로 파일과 폴더를 수동으로 전송했습니다. 이제 다음을 실행하여 기존 가상 머신(예:)의 폴더에 있는 파일을 새 가상 머신(예:)의 정확히 동일한(수동으로 전송된) 파일과 [email protected]:/home/myoldfolder비교할 때[email protected]:/home/mynewfolder

rsync -a -v -c --dry-run [email protected]:/home/myoldfolder /home/mynewfolder

rsync는 델타 파일 목록에 동일한 파일을 표시합니다.

대신 rsync를 사용하여 동일한 파일을 새 가상 머신의 다른 새 폴더에 동기화한 다음 비교를 반복하면 델타 파일 목록에 파일이 표시되지 않습니다. 아마도 rysnc가 해당 파일을 정확히 동일한 파일로 인식하기 때문일 것입니다.

rsync를 사용하여 파일을 동기화하지 않으면 파일 지문이 변경되기 때문입니까? 내 질문이 명확해지기를 바랍니다.

감사해요!

답변1

파일의 변경 사항을 식별하기 위해 rsync다음을 사용합니다.

  • 파일이 있음(전송 대상에 파일이 없음)
  • 크기
  • 시간 변경

둘 중 하나라도 일치하지 않으면 전송이 완료됩니다. 이제 구체적으로 "수동"으로 복제하면 수정 시간이 대상 시스템에서 유지되지 않을 수 있습니다.

-c예를 들어 rsync에서 체크섬 기반 비교를 강제하거나(각 파일이 양쪽에서 체크섬되기 때문에 속도가 느림) --size-only수정 시간 테스트를 건너뛰거나 업데이트만 할 수 -u있습니다. 즉, 최신 파일에서 대상 시스템을 건드리지 마세요.

관련 정보