파일이 이미 대상 폴더에있는 경우 파일을 복사하지 않는 동기화 방법이 있는지 궁금합니다.
설명하겠습니다 :
사진을 찍어서 랩탑의 폴더에 넣었습니다. 우분투 서버에서 백업하기 위해 방금 실행했습니다 rsync -vrutP source des/ti/na/tion/. 그런 다음 모든 RAW를 랩톱의 하위 폴더 ( source/RAW)에 배치하고 JPG를 다른 하위 폴더 ( source/JPG) 에 배치하기로 결정했습니다 .
이제 이것을 서버에 미러링하려면 실행해야 rsync -vrutP --delete source/ des/ti/na/tion/하지만 그렇게하면 서버에서 모든 파일을 삭제 한 다음 랩톱에서 서버로 다시 복사합니다. 몇 GB의 사진이 있는데 기다릴 시간이 있고 WiFi가 아닌 이더넷 연결이 있어도 문제가되지 않습니다.
그러나 더 많은 CPU를 요구하더라도 루트 폴더 "source"의 파일을 비교하고 소스와 대상 사이의 위치 차이 만 적용하는 명령이 있다면 훨씬 더 빠르지 않습니까? 더 많은 CPU가 모든 파일을 나열하는 데 관여하지만 파일을 전송하는 데 거의 대역폭이 필요하지 않습니다. 파일이 이미 목적지에 있기 때문에 실제로 전송할 필요가 없습니다. 이벤트는 다른 장소에 있습니다. 물론 필수 기능은 델타 동기화이며 기존 (그러나 이동 된) 파일이 소스 폴더의 파일과 정확히 같은지 여부도 감지합니다.
나는 이것을하는 소프트웨어 (Syncovery, Goodsync)에 대해 알고 있지만 실제로 Linux와 Windows 에서이 작업을 수행하는 명령이 있는지 알고 싶었습니다.
rsync -n되어야합니다. 수행 할 작업이 표시됩니다.