Ben sadece neden bir dosya / dizin "tar -czf", osx her dosya için bir: ._ ekler bilmek istiyorum ? Bunları linux'da untar yaptığımda görüyorum. Ya da hiç sevmediği için tutulmadaki sıkıştırılmamış projeyle çalıştığımda. 10.7.5 kullanıyorum.
Ben sadece neden bir dosya / dizin "tar -czf", osx her dosya için bir: ._ ekler bilmek istiyorum ? Bunları linux'da untar yaptığımda görüyorum. Ya da hiç sevmediği için tutulmadaki sıkıştırılmamış projeyle çalıştığımda. 10.7.5 kullanıyorum.
Yanıtlar:
OS X'in katranı, genişletilmiş öznitelikleri ve ACL'leri saklamak için AppleDouble biçimini kullanır . tar ve Archive Utility aynı zamanda ._ dosyalarının yerel biçimlere nasıl dönüştürüleceğini bilir, ancak arşiv başka bir platformda veya HFS olmayan bir birimde çıkarılırsa ._ dosyaları tutulur.
Genellikle tar'dan COPYFILE_DISABLE değerini bir değere ayarlayarak meta verileri kaldırmasını söyleyebilirsiniz:
$ xattr -l file.jpg
com.apple.quarantine: 0002;50d20c48;Tweetbot;
$ tar -cf 1.tar file.jpg
$ tar -tf 1.tar
./._file.jpg
file.jpg
$ COPYFILE_DISABLE=1 tar -cf 2.tar file.jpg
$ tar -tf 2.tar
file.jpg
Genişletilmiş özellikler olarak depolanan bilgiler:
ACL'leri şununla görebilirsiniz ls -le
:
$ ls -led /Applications/
drwxrwxr-x@ 146 root admin 4964 Jun 17 22:53 /Applications/
0: group:everyone deny delete
--disable-copyfile
Bu dosyalar her zaman oradaydı, ancak Finder'da (ve çoğu Mac OS uygulamasında) görünmezler. Bkz. Https://superuser.com/questions/212896/
Düzenle
Yani: bu dosyalar genişletilmiş dosya özniteliklerini içerir ... en.wikipedia.org/wiki/Extended_file_attributes ... ve MacOS dosyalara genişletilmiş öznitelikler verir vermez oluşturuldu. Yani bu ._ * dosyaları tar arşivi için oluşturulmadı.