다른 대륙의 다른 그룹을 지원하기 위해 Fedora 21 시스템에서 cifs 공유로 rsync를 실행하고 있습니다. 공유된 콘텐츠는 원래 그룹의 일부 구성원이 시내를 방문하는 동안 하드 드라이브에 복사되었습니다.
rsync는 다음과 같습니다
rsync --no-owner \
--no-group \
--verbose \
--recursive \
--links \
--itemize-changes \
--times \
--omit-dir-times \
<source>/ <destination>
그때부터 rsync가 제대로 작동하기 시작했지만 항상 시간 만료로 인해 재전송된 파일이 많이 발견되었습니다. 구체적으로:
f..t...... <file>
--time을 지정했지만 변경 시간이 아닌 수정 유형만 업데이트되었다는 사실을 우연히 발견했습니다. "stat"를 사용하는 로컬 파일은 다음과 같습니다.
File: <source file>
Size: 214 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 15211788 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 537/ build) Gid: ( 501/ toddb)
Access: 2017-01-23 07:08:40.724417237 -0800
Modify: 2010-08-20 21:57:32.000000000 -0700
Change: 2017-01-13 07:17:19.745921010 -0800
rsync가 실행된 후 대상 파일은 다음과 같습니다.
File: <dest file>
Size: 214 Blocks: 16 IO Block: 16384 regular file
Device: 3ah/58d Inode: 288918155034656 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 531/ toddb) Gid: ( 501/ toddb)
Access: 2017-01-23 07:08:40.000000000 -0800
Modify: 2010-08-20 21:57:32.000000000 -0700
Change: 2010-08-20 21:57:32.000000000 -0700
대상은 동시에 수정되고 변경됩니다. 맞는 것 같지만 rsync를 다시 실행하면 동일한 파일이 복사됩니다. 그래서 무심코 사용하게 됐는데...
touch -r <source> <destination>
...Update rsync는 모든 파일이 업데이트되고 있다고 보고합니다. 이제 실행하면 주목할 만한 두 가지 사항이 있습니다. (a) 통계는 동일한 것으로 나타납니다. (b) rsync는 더 이상 파일을 재전송하지 않습니다.
그렇다면 rsync가 수행하지 않는 "터치" 터치는 무엇입니까? (그리고 그래야 한다)