Empêcher macOS de créer des fichiers .DS_Store sur le réseau

J’en ai déjà parlé, mais vu que le sujet énerve rapidement (notamment mon boss) : on peut empêcher macOS de créer des fichiers .DS_Store sur les partages réseau.

.DS_Store ?

Le premier truc à savoir : c’est quoi un .DS_Store ? Le nom signifie Desktop Service Store et il est précédé d’un point parce que (Mac) OS X et les UNIX en général cachent les fichiers dont le nom commence par un point. Le fichier contient en fait la position des icônes, la taille des icônes, le fond d’écran du dossier, etc. En gros, tous les paramètres d’affichage du Finder sont stockés dans ce fichier. le Finder va donc créer un fichier .DS_Store (caché) dans chaque dossier où vous allez modifier les paramètres par défaut : si vous naviguez avec la vue en colonnes dans le Finder, il ne devrait pas créer de fichiers .DS_Store.

Empêcher la création

La commande à taper existe depuis 10.4. Attention, il ne faut pas ajouter un “-bool” dans le code, comme vu sur certains sites. On peut d’ailleurs forcer en “-string“, pour être certains. En fait, ça marchait dans les vieux OS, mais pas les actuels. La bonne commande est bien celle-ci.

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

Si vous voulez le faire pour tous les comptes du Mac :

sudo defaults write /Library/Preferences/com.apple.desktopservices DSDontWriteNetworkStores -string true

La commande a le défaut… de ne pas stocker les .DS_Store. Dans certains cas, ils ont de l’intérêt pour garder les paramètres.

Attention, enfin, à une chose : macOS ne va pas créer de fichiers .DS_Store, mais ça ne l’empêche pas de les copier depuis votre disque interne. Si vous copiez un dossier qui contient des .DS_Store dans un partage réseau, macOS copie tout (y compris les .DS_Store).