Arrêter Finder / OSX de créer des objets temporaires et .apdisk sur les partages réseau

16

Je cherche un moyen de configurer OSX pour empêcher la création .apdisk fichiers et .TemporaryItems dossiers sur les partages réseau.

Ceux-ci sont créés chaque fois qu'OSX accède à un dossier partagé sur le réseau.

En recherchant, quelques solutions possibles que j'ai trouvées incluent:

  • Arrêtez d'utiliser l'application (Finder)
  • Marquer les partages comme étant en lecture seule
  • Ignore les
  • Utilisez un logiciel tiers (tel que BlueHarvest ) pour supprimer les fichiers.
  • Planifiez un script cron pour supprimer ces fichiers.

Malheureusement, les trois premières options ne sont pas réalisables pour moi, et je préfère ne pas avoir à acheter de licences ou à planifier des nettoyages sur les serveurs de fichiers.

Existe-t-il un moyen de configurer OSX pour ne pas les créer en premier lieu?

(Finder se connecte via AFP aux partages réseau, pour ce que ça vaut)

Modifier, environ 1 an plus tard: veuillez noter que je ne recherche pas de solution de nettoyage.

BlueHarvest (si vous avez un mac pour l'exécuter), et les scripts de nettoyage planifiés sont corrects - mais moins qu'idéaux. J'ai vraiment besoin d'une solution qui empêche OSX de créer ces fichiers en premier lieu.
À l'heure actuelle, il semble qu'Apple ne propose pas une telle option de configuration, ce qui est décevant.


la source
À quel (s) serveur (s) vous connectez-vous? OS X ou autre chose? Aussi, pourquoi ne voulez-vous pas les fichiers - je suppose que les clients non mac sur ces partages?
snakechowder
Toutes sortes de serveurs - peu importe. Et oui, je ne les veux pas à cause des clients non-mac et de la pollution générale des actions.
D'ACCORD. J'ai le même problème mais ma solution n'est pas dans vos paramètres; Je lance dot_clean (1) depuis cron sur le (s) client (s) / supprime la création sur le serveur.
snakechowder

Réponses:

5
  1. Ouvrez le terminal.
  2. Exécutez cette commande: defaults write com.apple.desktopservices DSDontWriteNetworkStores true
  3. Redémarrez l'ordinateur ou déconnectez-vous et reconnectez-vous au compte d'utilisateur.

Référence: http://support.apple.com/kb/HT1629

jnovack
la source
3
Ah, malheureusement, cela empêche uniquement la création des fichiers .DS_Store, cela n'empêche pas la création des dossiers .TemporaryItems et des fichiers .APDisk.
#blameapple Rien que je puisse faire. :(
jnovack
3

Si vous exécutez des partages de fichiers Windows sur Windows Server 2003 R2 et supérieur, vous pouvez créer des écrans de fichiers qui empêchent tout utilisateur de créer un ensemble de fichiers pré-spécifiés.

J'ai efficacement utilisé cette approche pour éliminer tous les fichiers créés par Mac sur nos partages de fichiers.

Veuillez consulter le document MS Technet, Screening Files , pour plus d'informations.

Jorge Henriquez
la source
Oh, wow - c'est une solution intéressante. N'avait aucune idée des écrans de fichiers.
3

Bien que cela puisse ne pas aider tout le monde, si vous exécutez samba sur le serveur de fichiers, vous pouvez ajouter ce qui suit dans votre smb.conf:

Veto files = /.TemporaryItems/._.TemporaryItems/.DS_Store/

Les "fichiers Veto" sont une chaîne / séparée de noms de fichiers (les caractères génériques sont également autorisés) dont la création est interdite. Cela a résolu le problème pour moi.

J'ai trouvé cette astuce sur le wiki Arch Linux samba

Martin Olika
la source
J'ai utilisé quelque chose de similaire il y a quelques années, j'ai dû le désactiver parce que certaines versions de MacOS X refusaient de se connecter au partage ou avaient des problèmes aléatoires avec lui (ne me souviens pas exactement, c'était vers 2010 ...). Je ne sais pas ce qui se passe avec les versions actuelles.
Ale
2

BlueHarvest est probablement le meilleur moyen et le plus simple de maintenir les partages réseau propres, du moins c'est ce que j'ai recherché après avoir moi-même pris la plupart de vos options.

Après c'est un travail cron pour supprimer tous ces fichiers, en utilisant quelque chose comme:

find "$@" \( -name ".DS_Store" -or -name ".TemporaryItems" -or -name ".Trashes" -or -name "._*" \) -exec rm -rf "{}" \; -prune 
acseven
la source
BlueHarvest et un cronjob étaient tous deux déjà mentionnés comme des moyens non privilégiés de gérer cela.
Salut! Je pense que vous l'avez mentionné, mais ma réponse a précisément servi à donner une recommandation de mon expérience précédente (et actuelle). J'ai toujours BlueHarvest installé pour atteindre exactement ce dont vous avez besoin, après avoir essayé d'autres solutions similaires à celles que vous avez mentionnées, mais aucune avec le même taux de réussite. C'est à dire que c'est toujours ma meilleure recommandation et dans mon pov vaut le coût.
acseven
Merci - je suis content que vous trouviez BlueHarvest utile, et je suis sûr que d'autres trouveront le script que vous avez fourni utile pour planifier des nettoyages. Ni répondre à l'exigence de configurer OSX pour ne pas les créer en premier lieu. BlueHarvest en particulier, quel que soit le prix, n'est pas utile pour ma situation - cela nécessiterait l'achat d'un mac, ce qui n'est pas rentable. Jusqu'à ce qu'Apple fournisse une option de configuration pour supprimer cela, la question restera ouverte.
0

sshfs a une option noappledouble qui empêche au moins .Spotlight-V100d'être créée dans mes tests (très limités) ...

mkdir -p /Volumes/user && /usr/local/bin/sshfs \
    -o volname=user,local,cache=no,allow_root,noappledouble,defer_permissions,reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 \
    [email protected]:/mnt/tank/homes/user \
    /Volumes/user

Si l'utilisation de sshfs est une option, vous pourriez envisager cette solution.

leoj
la source