rsync를 사용하여 다수의 동일한 파일이 포함된 두 위치에서 백업

rsync를 사용하여 다수의 동일한 파일이 포함된 두 위치에서 백업

1TB 외부 저장 장치가 2개 있는데 모두 서버에 백업하고 싶습니다. 이 작업을 수행하기 위해 rsync를 사용하고 싶었지만 각 장치에 있는 약 100,000개의 파일 중에서 약 80,000개의 파일이 동일하다는 것을 발견했습니다(동일한 이름과 디렉터리 경로를 가짐). 두 파일을 개별적으로 rsync할 수 있으며 그러면 파일이 병합되지만 수정된 파일이 수정된 경우 수정된 파일을 잃고 싶지 않기 때문에 "상호" 파일에 동일한 콘텐츠가 포함되어 있는지 확인하는 방법이 필요합니다. rsync를 사용하여 이를 확인할 수 있는 방법이 있습니까?

답변1

파일의 체크섬을 확인하려면 rsync의 "-c" 플래그를 사용하는 것이 좋습니다. 모드 시간과 크기가 동일한 경우. 그런 다음 체크섬을 수행하여 파일의 내용이 동일한지 확인합니다. 자세한 내용은 여기에서 확인하세요 ==>https://serverfault.com/questions/211005/rsync-difference-Between-checksum-and-ignore-times-options

답변2

이후 로컬 시스템에서 변경된 원격 시스템의 업데이트되거나 수정된 ​​파일만 동기화하려면 다음과 같이 파일을 복사하기 전에 연습 실행을 수행할 수 있습니다.

rsync -av --dry-run --update Documents/* [email protected]:/<directory>

결과가 괜찮다면 이것을 사용하십시오

rsync -av --update Documents/* [email protected]:/<directory>

자세한 내용은 다음을 참조하세요.http://www.tecmint.com/sync-new-changed-modified-files-rsync-linux/

답변3

두 가지 운송 모두에 대해 다음을 사용할 수 있습니다.

rsync --ignore-existing -i dir1/ [email protected]:/dir2/

첫 번째 전송의 경우 모든 파일을 전송하고 나열합니다.

두 번째 전송에서는 이미 존재하는 파일을 무시하고( --ignore-existing) 실제로 복사한 모든 파일을 나열합니다( -i). 그런 다음 모든 파일 목록 가져오기 를 사용하여 전송에서 누락된 파일을 복사하도록 선택하고 find전송 2의 출력에 나열된 파일을 제거할 수 있습니다.

불행하게도 파일이 이미 존재하는 경우 약간 다른 파일 이름으로 복사할 수 없으므로 추가 논리와 루프가 필요합니다.

관련 정보