Verhindern von .DS_Store Dateien auf Samba-Freigaben

Veröffentlicht von Ulf Joksch am 17.02.2021

Verhindern von .DS_Store Dateien auf Samba-Freigaben

Wer hasst es nicht, wenn seine Samba-Freigaben geflutet werden mit .DS_Store Dateien und .TemporaryItems Verzeichnissen? .DS_Store Dateien sind versteckte Dateien, die von MacOSX in jedem Verzeichnis angelegt werden, auf das über den Finder zugegriffen wird. Diese Dateien enthalten Benutzer-Atrribute zu einem Verzeichnis wie z.B. die Position des Icons, Hintergrundbilder, etc. Da sie nunmal benutzerspezifisch und außerdem ärgerlich sind, will man sie nicht auf einer Netzwerk-Freigabe haben. Also wollen wir das verhindern:

Wir editieren /etc/samba/smb.conf und fügen die folgenden Zeilen zu jeder Freigabe hinzu:

veto files = /._*/.DS_Store/.Trashes/.TemporaryItems/
delete veto files = yes

Anschließend Samba neu starten.

Dann ist es an der Zeit, bereits existierende Mac OSX Dateien zu löschen! Das lässt sich unter Linux mit dem folgenden Kommando erledigen:

find \( -name ".DS_Store" -or -name ".Trashes" -or -name "._*" -or -name ".TemporaryItems" \) -delete

Das obige Kommando kann natürlich auch über einen Cronjob regelmäßig ausgeführt werden.

Darüber hinaus kann auf dem Mac noch das folgende Kommando ausgeführt werden um eine zukünftige Erstellung der .DS_Store Dateien auf Netzlaufwerken:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true