ディレクトリをtarするときにOSXが余分な '._ <filename>'を追加するのはなぜですか?


14

ファイル/ディレクトリを「tar -czf」すると、osxが 各ファイルに._を追加する理由を知りたいの ですが。Linuxでtarを展開するとこれらが表示されます。または、私がEclipseで非圧縮プロジェクトを操作するとき、それらがまったく好きではないので。10.7.5を使用します。

回答:


15

OS Xのtarは、AppleDouble形式を使用して拡張属性とACLを保存します。tarおよびArchive Utilityは、._ファイルをネイティブ形式に変換する方法も知っていますが、アーカイブが別のプラットフォームまたは非HFSボリュームで抽出された場合、._ファイルは保持されます。

通常、COPYFILE_DISABLEを何らかの値に設定することで、tarにメタデータを削除するよう指示することができます。

$ 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

拡張属性として保存される情報:

  • リソースフォーク(10.4以降)
    • Finderで設定されたカスタムアイコンとIcon \ rファイルの画像
    • PSDファイルのメタデータ
    • scptファイルに保存されているスクリプトオブジェクト、AppleScript Editorウィンドウの状態
  • エイリアスに関する情報
  • 検疫ステータス、ダウンロードURL
  • スポットライトのコメント
  • TextEditで保存されたファイルのエンコード
  • TextMateで保存されたファイルのキャレット位置
  • スキムノート

ACLを見るにはls -le

$ ls -led /Applications/
drwxrwxr-x@ 146 root  admin  4964 Jun 17 22:53 /Applications/
 0: group:everyone deny delete

COPYFILE_DISABLEに関するすばらしいアドバイスは、これらの厄介な._ファイルに関する私の問題を解決しました。
StasM


-2

これらのファイルは常にそこにありましたが、Finder(およびほとんどのMac OSアプリケーション)では見えません。/superuser/212896/を参照してください

編集する

つまり、これらのファイルには拡張ファイル属性... en.wikipedia.org/wiki/Extended_file_attributesが含まれており、MacOSがファイルに拡張属性を与えるとすぐに作成されました。したがって、これらの._ *ファイルはtarアーカイブ用に作成されていません。


2
いいえ、彼らは私が以前ubuntuで働いていたものだったので、いつもそこにいたわけではありません。圧縮ファイルをシステム上で爆発させると、osxがそれらを追加すると思います。もちろん、私は元のプラットフォームに警官を連れ戻すまで知りませんでした。それが最初の場所でそれらを追加WH私が知りたいことはある
ダークStar1

1
これらのファイルには拡張ファイル属性が含まれます... en.wikipedia.org/wiki/Extended_file_attributes
GEdgar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.