Deaktivieren Sie die Speicherung unsichtbarer Dateien "._" auf meinem CFS- oder SMB-Netzwerkspeicher

34

Ich verwende OS X Mavericks und habe einige Firmenspeicherlaufwerke gemountet (mit smb oder cfs). (smb: //[email protected]/directory/data). Wenn ich mit Dateien auf dem Laufwerk arbeite oder Dateien auf das Laufwerk kopiere, werden einige versteckte Dateien erstellt. Die meisten dieser Dateien beginnen mit Punkt-Strich ._und dann mit dem Dateinamen der Originaldatei, wie zum Beispiel:

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

Und meistens sind die Berühmten ._.DS_Storeund .DS_Storeauch da.

Auf meinem Mac sind diese .Punkte nicht sichtbar, aber meine Windows-Kollegen sehen diese Dateien. Wie kann ich verhindern, dass OS X diese seltsamen unsichtbaren Dateien erstellt?

Auf support.apple.com (und anderen Internetquellen) finden Sie einen Standardschreibzugriff, um die Erstellung von .DS_Store-Dateien auf Ihren Netzwerklaufwerken zu deaktivieren. Aber das funktioniert in Mavericks nicht:

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true

Im Moment benutze ich diesen Oneliner, aber rm -rfes fühlt sich in diesem Fall falsch an, a zu machen.

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

Bearbeiten: Ich möchte die Dateien nicht löschen oder vom Kopieren ausschließen. Ich möchte, dass sie gar nicht erst entstehen.

Bearbeiten: Ich bevorzuge eine "native" OS X-Lösung gegenüber Apps von Drittanbietern.

Bearbeiten: Diese Frage hat zwei Antworten, eine für die ._-Dateien und eine für die .DS_Store-Dateien. Das Kopfgeld wird belohnt dot_clean, diese native Befehlszeilen-App bereinigt alle ._-Dateien. Leider werden die .DS_Store-Dateien nicht gelöscht, dies kann effektiv mit Asepsis durchgeführt werden. Asepsis speichert .DS_Stores an einem festen Speicherort und nicht im Ordner selbst.

CousinCocaine
quelle
Ich bin mir nicht sicher, ob diese Vorschläge Ihr Problem lösen werden. Hinterlassen Sie diese in einem Kommentar. 1. Probieren Sie TinkerTool bresink.com/osx/TinkerTool.html aus und verwenden Sie Finder> "Erstellen Sie keine versteckten .DS_Store-Dateien über eine Netzwerkverbindung". 2. Versuchen Sie es im Bereich "Systemeinstellungen" von Secrets.blacktree.com und deaktivieren Sie Finder> Use .DS_Stores in einem Netzwerk.
@gentlemanhog, ich werde Ihre Vorschläge versuchen. Ich bevorzuge jedoch eine "native" OS X-Lösung gegenüber Apps von Drittanbietern.
CousinCocaine
@gentlemanhog, leider funktionieren deine Lösungen in Mavericks nicht.
CousinCocaine

Antworten:

31

Ich gebe zu, ich hatte nicht bemerkt, dass der defaults writeBefehl in Mavericks nicht mehr funktionierte. Allerdings, wenn ich sauber Netzwerk Halterungen DO, statt Ihr Motto findund rmverwende ich diese:

dot_clean .

Das Manfile erklärt:

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

Ich verwende das Flag -m nicht, aber es kann in Ihrer Situation hilfreich sein.

-m      Always delete dot underbar files.

Hier ist eine andere Person, die aktiv versucht, die Erstellung von .DS_Store-Dateien zu stoppen: http://www.aorensoftware.com/blog/2011/12/24/death-to-ds_store/ - Sieht so aus, als ob sie nicht auf Laufwerken gespeichert werden sollen so sehr er sie nicht im Netzwerk haben will!

böser Blender
quelle
Dies ist das richtige Werkzeug für den Job. Leider handelt es sich bei dieser Lösung um eine Nachmontage, die ausgeführt werden muss, nachdem die Montage erfolgt ist. Die Asepsis erledigt einen besseren Job ( apple.stackexchange.com/a/136558/55028 ), ist jedoch eine Drittanbieter-App und funktioniert nur für .DS_Store-Dateien und nur für alle .DS_Store-Dateien auf jedem Mount.
CousinCocaine
12

Nur versucht, und das funktioniert in Mavericks (zumindest zum Deaktivieren von .DS_Store nicht Netzwerkfreigaben):

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true

Sie müssen nur daran denken, Finder neu zu starten:

killall Finder
dmuir
quelle
1
Dies funktioniert auf El Capitan für ein Samba-Laufwerk nicht. .DS_StoreDateien werden noch erstellt
Sébastien
Es .DS_Storehandelt sich nicht um AppleDouble-Dateien, sondern nur um "normale" unsichtbare Dateien, die vom Finder erstellt werden. Wenn Sie also diese .DS_Store-Dateien sehen, ist dies kein Hinweis darauf, ob das DSDontWriteNetworkStoresfunktioniert oder nicht.
Thomas Tempelmann
4

Die ._Dateien sind AppleDouble-Dateien, in denen Metadaten wie erweiterte Attribute, ACLs, Dateiflags und Ressourcengabeln gespeichert werden.

Führen Sie zum Löschen Folgendes aus:

find . -name ._\* -delete

Sie können sehen, ob Dateien erweiterte Attribute, ACLs oder Dateiflaggen mit haben ls -l@eO. Die ._Dateien werden normalerweise erstellt, weil Dateien erweiterte Attribute haben. Mit können Sie xattr -cerweiterte Attribute oder chmod -NACLs löschen. cp -Xund rsynckopieren Sie Dateien ohne erweiterte Attribute, ACLs, Dateiflaggen oder Ressourcengabeln.

Lri
quelle
Ich möchte die Dateien nicht löschen oder vom Kopieren ausschließen. Ich möchte, dass sie gar nicht erst entstehen.
CousinCocaine
2
Wenn Sie den Finder verwenden, können Sie nicht verhindern, dass sie erstellt werden.
Fyrefly
@Fyrefly, aber du kannst sie woanders erstellen. Siehe Asepsis, apple.stackexchange.com/a/136558/55028 . Möglicherweise ist also auch eine "native" Lösung möglich
CousinCocaine
3

Da Sie das Schreiben versteckter Dateien auf jedem Mac deaktivieren müssten, der eine Verbindung zu Ihrer Freigabe herstellen könnte, ist es eine bessere Option, dies auf der Freigabe und nicht auf den Clients zu beenden.

Sie müssen lediglich Ihre Share-Konfiguration bearbeiten (zum Beispiel unter Linux in /etc/samba/smb.conf) und Ihrer Share-Konfiguration die folgende Option hinzufügen:

veto files = /._*/.DS_Store/ 

Jetzt können keine Mac-Clients Dateien mit diesen Mustern auf Ihrer Freigabe speichern.

Wolkenförster
quelle
1
‚Veto - Dateien‘ nicht daran hindert , Dateien geschrieben werden, es verhindert , dass Benutzer sehen Sie die Dateien. Bitte beziehen Sie sich auf samba.org
Justin Catterall
1
Samba hat jedoch die Option "delete veto files = yes", wodurch diese ebenfalls gelöscht werden.
rwenz3l
1
Leider werden delete veto files = yesdiese Punktedateien nicht gelöscht, sondern es wird lediglich sichergestellt, dass Sie einen Ordner löschen können, der Dateien enthält, die durch die veto filesOption nicht sichtbar gemacht wurden. Dadurch wird nicht erreicht, wonach das OP gesucht hat (und nach was ich auch vergeblich suche) zum).
Xmnboy
2

Ich habe das nicht selbst ausprobiert, und mir ist klar, dass das OP native Lösungen bevorzugt, aber trotzdem:

Es gibt eine App namens Asepsis , die die Erstellung dieser Dateien in einen speziellen Ordner umleitet, dh auf eine Weise, die verhindert, dass sie angezeigt werden.

Frost
quelle
Dies ist ein gutes Werkzeug für den Job. Leider ist diese Lösung eine Drittanbieter-App und funktioniert nur für .DS_Store-Dateien (nicht für ._-Dateien) und nur für alle .DS_Store-Dateien auf jedem Mount. Dies ist eine gute Lösung, aber keine nativen und keine ._-Dateien und daher kein Kopfgeld. sry.
CousinCocaine
1

Nicht eine native Lösung, auch nicht wirklich verhindern , dass diese Dateien geschrieben werden, aber es aktiv nach ihnen nicht jagen und löschen, sobald sie geschrieben sind ...

Blaue Ernte

BlueHarvest entfernt automatisch .DS_Store- und ._ AppleDouble-Dateien von Ihren USB-Sticks, SD-Karten, Musik-Playern, Dateiservern oder allen Nicht-Mac-Laufwerken. BlueHarvest entfernt diese Elemente, wenn sie erstellt oder geändert werden, sodass Sie immer metadatenfrei sind, ohne dass Sie einen Finger bewegen müssen.

Keine Zugehörigkeit, ich benutze es seit einigen Jahren sehr erfolgreich.

Tetsujin
quelle
0

Soweit mir bekannt ist, kann man nicht verhindern, dass diese Dateien erstellt werden. Zumindest der Finder wird sie erstellen.

Das Löschen dieser Dateien hilft auch nicht weiter. Wenn Sie das nächste Mal auf das Volume und seine Ordner auf dem Mac zugreifen, erstellt der Finder sie erneut.

Ich bin erstaunt, dass Ihre Windows-Kollegen diese Dateien sehen. Ich arbeite seit vielen Jahren mit meinem Mac unter Mac und Windows und sehe diese Dateien nie. Weder auf dem Mac noch unter Windows.

Diese Dateien sind standardmäßig als "versteckt" markiert und werden nicht angezeigt, wenn Sie Windows so eingestellt haben, dass versteckte Dateien und Ordner ausgeblendet werden.

Martin
quelle
Ich habe überprüft, und sie haben "versteckte Dateien verstecken" deaktiviert. Dies hindert sie jedoch nicht daran, geschaffen zu werden. Ich denke, es gibt eine Möglichkeit, dies zu beheben, da in OS 10.5 die Standardeinstellungen com.apple.desktopservices schreiben. DSDontWriteNetworkStores -bool true
CousinCocaine
Wenn sie "versteckte Dateien verstecken" deaktiviert (nicht markiert) haben, ist es genau umgekehrt: Aktivieren Sie es. :-) Und wie gesagt: Soweit ich weiß, gibt es keine "native OS X-Lösung". Und: Sie haben mit einer Antwort von "support.apple.com" verlinkt, die besagt: "Das Deaktivieren der Erstellung von .DS_Store-Dateien auf Remote-Dateiservern kann zu unerwartetem Verhalten im Finder führen." Und: Ich würde nicht vorschlagen, Anwendungen zu installieren, die versprechen, dies zu verhindern. Soweit ich weiß, kann dies sehr gefährlich sein.
Martin
2
"das kann sehr gefährlich sein" :) Jetzt möchte ich wirklich, dass diese Dateien weg sind! Im Ernst, in .DS_Store-Dateien werden Finder-Eigenschaften gespeichert, und beschädigte DS_Store-Dateien können in der Tat seltsame Dinge bewirken. Ich möchte keine beschädigten DS_Store-Dateien, sondern KEINE DS_Store-Dateien. Ich habe keine Angst, sie zu entfernen. Und zurück zu meiner ursprünglichen Frage: Wie kann ich verhindern, dass OS X diese seltsamen unsichtbaren Dateien erstellt? Und damit meine ich alle ._-Dateien und .DS_Store-Dateien. Nichts anderes.
CousinCocaine
Es wäre für mich (und möglicherweise für Sie) hilfreich, wenn Sie bestätigen würden, dass die aktivierten (und nicht deaktivierten) Personen "versteckte Dateien verstecken". Und ich kann verstehen, dass Sie nicht wollen, dass diese Dateien erstellt werden und dass Sie eine native Lösung wollen, aber wenn es keine native Lösung gibt, hilft es nicht, zu sagen, "aber ich will es".
Martin
-1

Ich fand eine sehr einfache und kostenlose Möglichkeit, loszuwerden ._-Dateien, vor allem von einem externen fat32 HD.

Starten Sie OnyX (kostenlose Software). Wechseln Sie unter "Dienstprogramme" zu "AppleDouble" und wählen Sie den Ordner aus. Das ist es!!!

Mariano Rocchi
quelle
1
Das OP gibt ganz konkret an, dass er kein Bereinigungswerkzeug haben möchte, sondern eines, das das Schreiben der Dateien überhaupt verhindert.
Tetsujin