사용 사례 - 마운트 지점( /apps , /logs 등)의 모든 파일과 디렉터리를 비교하고 어느 것이 최신인지와 크기 차이를 계산합니다.
rsync 명령을 사용하려고 하는데 제한 사항으로 인해 필요한 것을 제대로 구현하지 못했습니다.
아래 /tmp/test_ram
에는 dir1
및 dir2
. 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
이것은 제가 설명하는 데 사용한 예입니다. 하지만 내 비교는 여러 서버 간의 비교입니다.
마운트 지점은 동일할 수 있지만 파일은 비교해야 하는 디렉터리입니다.