정기적으로 rsync를 통해 동기화하는 디렉토리가 있습니다 rsync -rva
. 오늘 나는 예를 들어 내가 가지고 있는 많은 파일에 대해 rsync 대상에 이름이 있는 빈 파일 path/to/S00041.jpg
도 있다는 것을 발견했습니다. path/to/._S00041.jpg
누가 만들었는지 생각 rsync
하지만 확신할 수는 없습니다. 이 파일들은 모두 해당 원본 파일과 동일한 타임스탬프를 갖고 있으므로 언제 나타났는지는 알 수 없습니다.
소스 및 대상 디렉토리는 모두 Mac OS에 있습니다. 이것이 어떤 식으로든 도움이 된다면 다른 위치와 컴퓨터에서 이 디렉터리로 동기화합니다(그러나 분명히 디렉터리 구조는 항상 동일합니다).
이것이 rsync에 의해 수행되는지, 그리고 그 이유가 궁금합니다. rsync를 통해 자동으로 "수정"하는 방법도 있습니까?
답변1
MacOS에서는 각 파일의 "리소스 포크"에 추가 정보를 저장할 수 있습니다. 기본 MacOS 파일 시스템에서 이 추가 정보는 파일 자체의 일부로 (투명하게) 저장됩니다. 그러나 네이티브가 아닌 파일 시스템에 파일을 복사하는 경우 리소스 포크를 별도로 저장해야 합니다. 이것들은 ._*
파일입니다. 최신 응용 프로그램은 리소스 포크가 아닌 리소스 파일을 생성하는 경향이 있으므로 이러한 데이터를 내보낼 때 모든 것이 단일 파일에 저장됩니다.
길이가 0이면 안전하게 삭제할 수 있습니다.
find /path -name '._*' -type f -size 0 -delete
건너뛰도록 선택할 수 있지만 rsync
조건부로 건너뛸 수는 없습니다. 즉, 길이가 0인 경우에만 가능합니다.
인용하다: