Sous macOS, à quelle fréquence / tmp est-il supprimé?

95

À quelle fréquence / tmp est-il supprimé? Je pensais que le temps de démarrage était effacé et tous les trois jours si vous ne redémarrez pas, mais je ne trouve aucune source faisant autorité pour cela.

J'utilise la dernière version 10.6. (Je suppose que les modifications apportées à ce comportement dans les versions précédentes du système d'exploitation m'intéresseraient.)

Zekel
la source
2
Qu'en est-il des dossiers temporaires par utilisateur /var/folders/?
Adib

Réponses:

117

Réponse courte: par défaut, les fichiers qui ne sont pas utilisés au bout de trois jours sont supprimés de / tmp

Longue réponse:

  1. launchdse met en place /usr/sbin/periodic dailypour fonctionner tous les jours à 3h15 (définition en /System/Library/LaunchDaemons/com.apple.periodic-daily.plist).
  2. /usr/sbin/periodic dailyexécute les scripts dans /etc/periodic/daily, y compris 110.clean-tmps.
  3. 110.clean-tmpsutilise findpour supprimer les fichiers non accédés (à l'aide des paramètres -atimeet -mtimeà find) dans les $daily_clean_tmps_daysjours qui ne figurent pas dans $daily_clean_tmps_ignore.
  4. Ces deux variables (et d’autres variables connexes) sont définies dans /etc/periodic.conf. (Depuis OS 10.7, il existe un fichier /etc/defaults/periodic.confqui définit les valeurs par défaut , mais vous devez tout de même créer pour les écraser /etc/periodic.conf- voir la page de manuel period.conf (5).) Si vous n'avez pas modifié ce fichier, $daily_clean_tmps_daysdéfinissez la valeur sur 3.
Doug Harris
la source
10
Remarque dans 10.7 périodique: le fichier de configuration est passé à / etc / defaults.
Dan
1
Est-ce la même chose pour $ TMPDIR?
ccnokes
1
Non, je ne crois pas que ce soit le cas. Il n'y a aucune référence à $TMPDIRdans aucun des fichiers de configuration mentionnés.
Doug Harris
3
nb Cette réponse a 7,5 ans, macOS est maintenant à 10,13 et j'utilise 10,11. Bien que la réponse courte soit toujours correcte (3 jours), certains détails ont définitivement changé. Par exemple, dans 10.11, je ne vois pas la ligne qui planifie cela pour 3h15 dans /System/Library/LaunchDaemons/com.apple.periodic-daily.plist. Je n'ai pas eu le temps d'en apprendre davantage sur le processus de démarrage pour déterminer comment le /tmpnettoyer au moment de l'initialisation (selon le commentaire de @ Reb.Cabin ci-dessus)
Doug Harris
1
En utilisant OSX 10.14.5, vous pouvez confirmer que / tmp semble avoir été effacé au redémarrage.
Karlos