rsync 명령에서 테스트 실행 상태를 얻는 방법

rsync 명령에서 테스트 실행 상태를 얻는 방법

사용 사례 - 마운트 지점( /apps , /logs 등)의 모든 파일과 디렉터리를 비교하고 어느 것이 최신인지와 크기 차이를 계산합니다.

rsync 명령을 사용하려고 하는데 제한 사항으로 인해 필요한 것을 제대로 구현하지 못했습니다.

아래 /tmp/test_ram에는 dir1dir2. dir1아래와 같이 두 개의 파일을 만들었습니다 .

drwxr-xr-x 2 chada users 4096 Nov 21 12:03 dir2
drwxr-xr-x 2 chada users 4096 Nov 21 12:03 dir1

cd dir1 ; ls -ltr
total 196
-rw-r--r-- 1 chada users 188510 Nov 21 12:03 file_man_rsync
-rw-r--r-- 1 chada users   6854 Nov 21 12:04 file_man_diff

DryRun 사용 –

예상한 일이 발생하지 않지만 o/p 크기에는 0이 표시됩니다. 이건 예상한게 아니네요. 파일 크기 차이를 보고 싶어요

rsync -n -avrczP --out-format="%t %f %''b" --backup --backup-dir=/tmp/test_ram /tmp/test_ram/dir1/ /tmp/test_ram/dir2/


sending incremental file list
2018/11/21 12:04:55 tmp/test_ram/dir1/. 0
2018/11/21 12:04:55 tmp/test_ram/dir1/file_man_diff 0
2018/11/21 12:04:55 tmp/test_ram/dir1/file_man_rsync 0

sent 161 bytes  received 25 bytes  372.00 bytes/sec
total size is 195,364  speedup is 1,050.34 (DRY RUN)

실제 작동:

예상한 대로 파일 크기가 표시됩니다. 하지만 확인하지 않고 복사할 위험은 없습니다. 예, 백업 디렉터리가 있지만 여전히 너무 많은 분석이 필요합니다.

rsync -avrczP --out-format="%t %f %''b" --backup --backup-dir=/tmp/test_ram/dir3 /tmp/test_ram/dir1/ /tmp/test_ram/dir2/


2018/11/21 12:05:52 tmp/test_ram/dir1/. 0
file_man_diff
          6,854 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=1/3)
2018/11/21 12:05:52 tmp/test_ram/dir1/file_man_diff 2.48K
file_man_rsync
        188,510 100%   16.34MB/s    0:00:00 (xfr#2, to-chk=0/3)
2018/11/21 12:05:52 tmp/test_ram/dir1/file_man_rsync 56.28K

sent 58,915 bytes  received 57 bytes  117,944.00 bytes/sec
total size is 195,364  speedup is 3.31

이것은 제가 설명하는 데 사용한 예입니다. 하지만 내 비교는 여러 서버 간의 비교입니다.

마운트 지점은 동일할 수 있지만 파일은 비교해야 하는 디렉터리입니다.

관련 정보