cfsまたはsmbネットワークストレージ上の非表示ファイル「._」のストレージを無効にします


34

OS X Mavericksを使用し、会社のストレージドライブをいくつかマウントしています(smbまたはcfsを使用)。(smb://username@address.path.toserver.com/directory/data)。ドライブ上のファイルを操作したり、ファイルをドライブにコピーすると、いくつかの隠しファイルが作成されます。これらのファイルのほとんどは、次のようにドットダッシュで始まり._、元のファイルのファイル名で始まります。

._test001.png
._test002.png
._test003.png

そして、ほとんどの回の、有名な._.DS_Store.DS_Storeそこにもあります。

私のMacでは、これらの.ドットアイテムは表示されませんが、Windowsの同僚にはこれらのファイルが表示されます。OS Xがこれらの奇妙な不可視ファイルを作成しないようにするにはどうすればよいですか?

support.apple.com(およびその他のインターネット情報源)、あなたのネットワークドライブ上の.DS_Storeファイルの作成を無効にするには、「デフォルトは書き込み」を見つけることができます。しかし、これはマーベリックスでは機能しません。

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true

今のところ私はこのonelinerを使用rm -rfしていますが、この場合は間違っていると感じます。

find . -type f -name "._*" -exec rm "{}" \;

編集:ファイルを削除したり、コピーから除外したりしません。そもそも作成しないようにしたいです。

編集:サードパーティのアプリよりも「ネイティブ」なOS Xソリューションの方が好きです。

編集:この質問には、._ファイル用と.DS_Storeファイル用の2つの回答があります。恵みが報われdot_clean、このネイティブコマンドラインアプリはすべて._ファイルをクリーンアップします。残念なことに、.DS_Storeファイルは消去されません。これはAsepsisで効果的に実行できます。Asepsisは.DS_Storesをフォルダー自体ではなく、固定された場所に保存します。


これらの提案があなたの問題を解決するかどうかわからないので、コメントに残してください。1. TinkerTool bresink.com/osx/TinkerTool.htmlを試して、[ Finder]> [ネットワーク接続で非表示の.DS_Storeファイルを作成しない]を使用します。2. Secretsシステム環境設定ペインsecrets.blacktree.comを試して、Finder>ネットワーク上の.DS_Storesを使用のチェックを外します。

@gentlemanhog、あなたの提案を試みます。しかし、サードパーティのアプリよりも「ネイティブ」なOS Xソリューションの方が好きです。
いとこコカイン14年

@gentlemanhog、残念ながらあなたのソリューションはマーベリックスでは機能しません。
いとこコカイン14年

回答:


31

defaults writeマーベリックでコマンドが機能しなくなったことに気づかなかったのは認めます。ただし、1つのライナーfindとの代わりにネットワークマウントをクリーニングrmする場合、これを使用します。

dot_clean .

manfileの説明:

dot_clean -- Merge ._* files with corresponding native files.

-mフラグは使用しませんが、状況によっては役立つことがあります。

-m      Always delete dot underbar files.

.DS_Storeファイルの作成を積極的に停止しようとしている別の人は次のとおりです 彼はネットワーク上でそれらを望んでいない限り!


これは仕事に最適なツールです。残念ながら、このソリューションは「ポスト」マウントであり、マウント後に実行する必要があります。asepsisはより良い仕事をします(apple.stackexchange.com/a/136558/55028)が、サードパーティのアプリであり、.DS_Storeファイルでのみ動作し、すべてのマウントのすべての.DS_Storeファイルでのみ動作します。
いとこコカイン14

12

試したところ、これはMavericksで機能します(少なくともネットワーク共有ではなく.DS_Storeを無効にするため):

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true

Finderを再起動することも忘れないでください:

killall Finder

1
これは、SambaドライブのEl Capitanでは機能しません。.DS_Storeファイルはまだ作成中です
セバスチャン

これら.DS_StoreはAppleDoubleファイルではなく、Finderによって作成される「通常の」不可視ファイルです。したがって、これらの.DS_Storeファイルを確認しても、DSDontWriteNetworkStores機能するかどうかはわかりません。
トーマステンペルマン16

4

._ファイルには、拡張属性、ACLは、ファイルフラグ、およびリソースフォークなどのメタデータを格納するために使用されているのAppleDoubleファイルです。

それらを削除するには、次を実行します:

find . -name ._\* -delete

ファイルに拡張属性、ACL、またはファイルフラグがあるかどうかを確認できますls -l@eO._ファイルが拡張属性を持っているので、ファイルは、通常作成されます。xattr -c拡張属性のchmod -N削除またはACLの削除に使用できます。cp -Xそしてrsync拡張属性、ACLは、ファイルフラグ、またはリソースフォークせずにファイルをコピーします。


ファイルを削除したり、コピーから除外したりしたくありません。そもそも作成しないようにしたいです。
いとこコカイン14年

2
Finderを使用している場合、作成されないようにすることはできません。
Fyrefly 14年

@Fyrefly。ただし、他の場所で作成できます。Asepsis、apple.stackexchange.com / a / 136558/55028を参照してください。だから、「ネイティブ」ソリューションも同様に可能であるかもしれない
CousinCocaine

3

共有に接続できるすべてのMacで隠しファイルの書き込みを無効にする必要があるため、クライアントではなく共有でこれを停止することをお勧めします。

必要なことは、共有構成を編集して(たとえばLinuxの/etc/samba/smb.confに)、次のオプションを共有構成に追加することです。

veto files = /._*/.DS_Store/ 

Macクライアントは、これらのパターンを持つファイルを共有に保存できなくなりました。


1
「veto files」はファイルの書き込みを防ぎません。ユーザーがファイルを見るのを防ぎます。samba.org
Justin Catterallを

1
ただし、sambaには「delete veto files = yes」というオプションがあり、これも削除します。
rwenz3l

1
残念ながら、delete veto files = yesこれらのドットファイルは削除されveto filesません。オプションによって非表示にされたファイルを含むフォルダーを削除できることを保証するだけなので、OPが何をしたか(および、私が無駄に検索しているものも)ために)。
-xmnboy

2

私はこれを自分で試したことがない、私はOPは、ネイティブのソリューションを好む実現するが、それにもかかわらず:

これらのファイルの作成を特別なフォルダーにリダイレクトすることによって、つまり表示されないように機能する、Aepsisというアプリがあります。


これは仕事に適したツールです。残念ながら、このソリューションはサードパーティのアプリであり、.__ファイルではなく.DS_Storeファイルでのみ動作し、すべてのマウントのすべての.DS_Storeファイルでのみ動作します。これは良い解決策ですが、非ネイティブおよび非._ファイルであり、したがって賞金はありません。スライ。
いとこコカイン14

1

ネイティブのソリューションではなく、実際にこれらのファイルが書き込まれるのを防ぐこともできませんが、ファイルが書き込まれたらすぐに積極的にそれらを追いかけて削除します...

ブルーハーベスト

BlueHarvestは、USBキー、SDカード、音楽プレーヤー、ファイルサーバー、またはMac以外のディスクから.DS_Storeおよび._ AppleDoubleファイルを自動的に削除します。BlueHarvestは、これらのアイテムが作成または変更されると削除するため、指を離さなくても常にメタデータを利用できます。

所属していません。私はこれを数年間非常にうまく使用しています。


0

私の知る限り、これらのファイルが作成されるのを防ぐことはできません。少なくともFinderがそれらを作成します。

これらのファイルを削除しても役に立たない-Macで次にボリュームとそのフォルダにアクセスすると、Finderがそれらを再度作成するため。

Windowsの同僚がこれらのファイルを見ることに驚かされます。私はMacとWindowsを使ってMacで長年働いていますが、これらのファイルを見ることはありません。MacでもWindowsでもない。

これらのファイルはデフォルトで「非表示」としてマークされ、Windowsで非表示のファイルとフォルダーを非表示に設定している場合は表示されません。


私はチェックしましたが、彼らは「隠しファイルを隠す」を無効にしました。しかし、これはそれらの作成を妨げません。私は、OSに10.5デフォルトはcom.apple.desktopservicesのDSDontWriteNetworkStoresが真の-bool書き込みがあったとして、これを修正する方法があると思います
CousinCocaine

それらが「隠しファイルを隠す」を無効にした場合(チェックを外した場合)、それはちょうど別の方法です:有効にします。:-)そして私が言ったように:私が知る限り、「ネイティブOS Xソリューション」ソリューションはありません。そして:「support.apple.com」からの回答にリンクしました:「リモートファイルサーバーでの.DS_Storeファイルの作成を無効にすると、Finderで予期しない動作が発生する可能性があります」。そして、それを防ぐことを約束するアプリケーションをインストールすることはお勧めしません。私の知る限り、これは非常に危険です。
マーティン14年

2
「これは非常に危険な場合があります」:)今、私は本当にこれらのファイルが消えて欲しいです!真剣に、.DS_StoreファイルはFinderプロパティを保存し、破損したDS_Storeファイルは実際に奇妙なことをする可能性があります。破損したDS_Storeファイルは必要ありません。DS_Storeファイルは必要ありません。それらを削除することを恐れていません。そして元の質問に戻ります:OS Xがこれらの奇妙な不可視ファイルを作成するのを防ぐにはどうすればよいですか そして、それはすべての._ファイルと.DS_Storeファイルを意味します。他に何もありません。
いとこコカイン14年

人々が「隠しファイルを隠す」を有効にした(そして無効にしたのではない)ことを確認するなら、私(そしてあなたかもしれません)にとって役立つでしょう。そして、これらのファイルが作成されることを望んでおらず、ネイティブソリューションが必要であることを理解できますが、ネイティブソリューションがない場合は、「しかし欲しい」と言うのは役に立ちません。
マーティン14

-1

特に外部fat32 HDから._ファイルを削除する非常に簡単で無料の方法を見つけました。

OnyX(フリーソフトウェア)を起動します。[ユーティリティ]からAppleDoubleに移動し、フォルダを選択します。それでおしまい!!!


1
OPは、具体的には、クリーンアップツールは必要ないが、ファイルがまったく書き込まれないようにするツールを必要としていると述べています。
鉄人
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.