최근에는 Mac의 파일 시스템을 대 / 소문자 구분에서 대 / 소문자 구분으로 변경해야했습니다. CCC를 사용하고 다른 디스크에 데이터를 복사 한 다음 새로 포맷 된 주 디스크로 다시 되돌려 서 수행했습니다.
이제는 FreeBSD 기반 NAS에서 호스팅되는 AFP를 통해 내 오래된 Time Machine 디스크에서 Time Machine 백업을 수행하려고했습니다. 그러나 Time Machine에는 여전히 대소 문자를 구분하지 않는 fs가 있으므로 파일 시스템이 일치하지 않는다는 오류가 발생합니다. 이번에는 Time Machine 볼륨에 대한 파일 레벨 사본을 지원하지 않으므로 CCC를 사용할 수 없습니다.
당연히, 나는 rsync를 위해 똑바로 갔지만 문제가 발생합니다.
/usr/local/bin/rsync --super -aEHAXNvx --fileflags --delete /Volumes/Time\ Machine\ Backups/ /Volumes/NewDisk/
Backups.backupdb/<machinename>
와 함께 폴더에 도달하자마자 불평을 시작 합니다 failed to set permissions, operation not permitted
. 여기서 문제는 ACL을 복사하는 것인데, 이는 매우 제한적입니다.
ll -dle /Volumes/Time\ Machine\ Backups/Backups.backupdb/<machinename>/
drwxr-xr-x@ 19 root staff 646 Dec 23 09:38 /Volumes/Time Machine Backups/Backups.backupdb/<machinename>/
0: group:everyone deny add_file,delete,add_subdirectory,delete_child,writeattr,writeextattr,chown
따라서 -A
위의 명령에서 제거 했으며 rsync는 이제 행복하게 GB의 데이터를 이동합니다.
아아, ACL도 보존하고 싶습니다. 어떻게 든 가능합니까? OS X에는 getfacl / setfacl이 없으므로의 출력 구문 분석을 피하고 싶습니다 ls -le
. 여기에서 해결책으로 보는 것은 rsync에게 ACL을 "뒤로"(즉, 리프 파일에서 디렉토리까지) 적용하도록 지시하는 것입니다. 그러나 그 옵션은 없습니다.