나는 이상한 상황에 처해 있다. 내 자신의 스크립트를 작성해야 할 것 같지만 작업을 완료하기 위해 rsync 또는 다른 옵션을 사용할 수 있는지 궁금합니다.
Windows 공유 폴더에서 새 파일과 변경된 파일을 가져와야 합니다. 사람들은 무작위로 배치 로그를 수동으로 넣습니다. 로그 자체는 상당히 작지만 그 수는 상당히 많습니다. cifs를 사용하여 이 공유 폴더를 마운트했습니다.
이 설치 폴더의 내용을 Linux 드라이브의 대상 폴더로 재동기화하고 싶습니다.
대상 드라이브는 Logstash의 데이터 소스입니다. 공간을 절약하기 위해 logstash는 처리 후 대상 폴더의 파일을 삭제하도록 구성되었습니다.
내가 아는 한, 이 경우 rsync는 다음 호출 시 모든 파일을 다시 복사합니다.
이미 대상에 복사된 파일이 아닌 새 파일이나 변경된 파일만 복사하도록 rsync에 지시하는 옵션이 있습니까?
rsync 자체는 어떤 기록도 유지하지 않기 때문에 이것이 가능하지 않다고 생각합니다. 아니면 일부 고급 구성을 수행할 수 있습니까? 아니면 Linux 생태계에 다른 도구가 있나요?
답변1
rsync
파일을 성공적으로 복사한 후 소스에서 파일을 삭제해도 문제가 해결될 수 있습니다 .
rsync -av --remove-source-files ...
이것은 실제로이동하다하나보다는복사.