rsync: 변경된 파일/속성만 나열

rsync: 변경된 파일/속성만 나열

나는 다음을 달성하려고 노력하고 있습니다.

기존 NAS의 모든 데이터를 새 NAS로 올바르게 재동기화했는지 확인하기 위해 다음을 실행합니다.

rsync --rltD -hvinu /path/to/old/NAS/ /path/to/new/NAS

이제: -n은 테스트 실행을 제공하고 -ia 변경 사항 목록을 제공하며 -u는 새 NAS에 있는 모든 최신 파일을 건너뛰어야 합니다. (새 NAS에 이미 업데이트가 있기 때문에 필요합니다. 사람들이 이미 작업하고 있습니다.) .

위의 명령은 여러 디렉터리에 대해 이를 포함하는 목록을 제공합니다.

.d..t

어느 acc. 맨페이지로 이동한다는 것은 전송이 발생하지 않지만 해당 속성(예: 시간)이 대상에서 업데이트된다는 것을 의미합니다.

영향을 받은 디렉터리를 확인하면 대상 디렉터리가 소스 디렉터리보다 최신인 것을 알 수 있습니다.

그래서 나는

  1. rsyncs 출력에서는 이를 볼 수 없을 것으로 예상됩니다. 건너뛰어야 하므로,
  2. 해당 타임스탬프가 업데이트되어서는 안 됩니다. -그건 네가 처리해야 해.

여기 누가 설명할 수 있는 rsync 전문가가 있나요? 내가 여기서 얻지 못하는 것은 무엇입니까?

btw.: 이것은 Qnap NAS(소스) 및 Synology NAS(대상)에서의 rsync 구현입니다.

업데이트 1:

따라서 --update는 디렉토리가 아닌 파일에만 적용되는 것 같습니다. rsync는 예상되는 작업을 수행합니다. 즉, 크기와 마지막으로 수정된 타임스탬프를 비교하고 대상의 타임스탬프를 소스의 타임스탬프(이전 버전)로 업데이트합니다.

--update를 디렉토리에 적용하는 옵션을 찾지 못했습니다. 그러나 디렉토리의 타임스탬프를 무시하는 --omit-dir-times가 있습니다. 해당 옵션을 적용하면 소스의 최신 디렉터리도 무시됩니다. 따라서 소스에 추가된 파일은 대상에 동기화되지만 상위 디렉터리 시간의 해당 변경 사항은 동기화되지 않습니다. 이것이 rsync의 버그/결함이라고는 상상할 수 없습니다. 여기에 뭔가 빠진 것이 있는 것 같은데요?

관련 정보