rsync를 사용하여 디렉터리 동기화

rsync를 사용하여 디렉터리 동기화

CentOS 6 시스템의 디렉터리를 백업하는 스크립트가 있습니다.

이것은 매우 기본적이지만 작업을 수행합니다.

rsync -a remote:~/original ./backup

이것은 잘 작동합니다. 원본 콘텐츠를 백업에 복사합니다. 하지만. 원본 파일에서 삭제된 항목은 백업에 계속 남아 있습니다.

rsync항목이 추가되거나 제거되었는지 여부에 관계없이 두 디렉터리의 내용이 동일한지 확인하는 것이 가능한지 궁금합니다 .

이전 백업 디렉터리의 내용을 삭제하는 것은 rsync디렉터리가 크기 때문에 옵션이 아닙니다.

답변1

소스에서 파일이 삭제될 때 타겟에서도 해당 파일을 삭제하려면 --delete 옵션을 사용하면 됩니다.

rsync -vaz --delete <origin_folder> <destination_folder>

이제 원본 사이트가 해당 항목을 삭제하면 대상 사이트도 해당 항목을 삭제합니다.

답변2

선택할 수 있는 여러 가지 제거 옵션이 있습니다. 다음은 페이지에서 발췌한 내용입니다 man rsync.

        --delete                delete extraneous files from dest dirs
        --delete-before         receiver deletes before xfer, not during
        --delete-during         receiver deletes during the transfer
        --delete-delay          find deletions during, delete after
        --delete-after          receiver deletes after transfer, not during
        --delete-excluded       also delete excluded files from dest dirs

관련 정보