Son zamanlarda Mac'imin dosya sistemini büyük / küçük harf korumasından tamamen büyük / küçük harfe duyarlı hale getirmek zorunda kaldım. Bunu CCC kullanarak ve verileri başka bir diske kopyalayıp yeni biçimlendirilmiş ana diske geri döndürerek yaptım.
Şimdi, FreeBSD tabanlı NAS'ımda barındırılan eski Time Machine diskimde AFP aracılığıyla dışa aktarılan Time Machine yedeklemesini yapmak istedim. Ancak, Time Machine hala büyük / küçük harf duyarlı olmayan fs olduğundan, dosya sistemleri eşleşmeyen bir hata alıyorum. Bu kez, Time Machine birimleri için dosya düzeyinde kopyalamayı desteklemediğinden CCC'yi kullanamıyorum.
Doğal olarak, rsync için düz gittim, ancak bu bir sorun yaratır - eğer onu çalıştırırsam:
/usr/local/bin/rsync --super -aEHAXNvx --fileflags --delete /Volumes/Time\ Machine\ Backups/ /Volumes/NewDisk/
ile Backups.backupdb/<machinename>
dosyaya ulaşır ulaşmaz şikayet etmeye başlar failed to set permissions, operation not permitted
. Buradaki sorun, oldukça kısıtlayıcı olan ACL'leri kopyalamaktır:
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
Bu yüzden, -A
yukarıdaki komuttan kaldırıldım ve rsync artık GB'lardaki verileri mutlu bir şekilde taşıyor.
Ne yazık ki, ACL'leri de korumak istiyorum. Bu bir şekilde mümkün mü? OS X'in getfacl / setfacl özelliği yoktur ve çıktısını ayrıştırmak istemiyorum ls -le
. Burada bir çözüm olarak gördüğüm, bir şekilde rsync'e ACL'leri "geriye" uygulamayı, yani yaprak dosyalarından dizinlere kadar uygulamasını söylemektir, ancak bunun için bir seçenek yoktur.