Si les fichiers/répertoires dans /tmp n'ont pas été consultés pendant une longue période, ils peuvent être supprimés automatiquement. "tmpwatch ” nettoie le contenu de /tmp ou d'autres répertoires temporaires.
Dans la plupart des cas, la suppression de fichiers par tmpwatch peut être ignorée en toute sécurité, car les fichiers inutilisés doivent être supprimés de /tmp pour libérer de l'espace dans le système de fichiers afin que le système de fichiers contenant /tmp ne se remplisse pas avec le temps.
Cependant, si vous avez fortement besoin de désactiver cette fonction pour une raison quelconque, malgré l'importance de tmpwatch pour s'assurer que /tmp ne provoque pas le remplissage d'un système de fichiers, c'est possible en désinstallant tmpwatch :
# rpm -e tmpwatch
ou, alternativement, déplacer/supprimer /etc/cron.daily/tmpwatch fichier au cas où le package rpm pour tmpwatch ne peut pas être supprimé, comme ci-dessous :
# rpm -e tmpwatch LANG=C rpm -e tmpwatch error: Failed dependencies: tmpwatch is needed by (installed) tetex-3.0-33.15.el5_8.1.x86_64 tmpwatch is needed by (installed) cups-1.3.7-32.el5_11.x86_64 #
Le nettoyage des fichiers non consultés dans /tmp est une fonction par défaut du package « tmpwatch », qui fournit une tâche cron /etc/cron.daily/tmpwatch. Il s'agit d'un script shell lancé quotidiennement par crond, qui vérifie /tmp, /var/tmp et plusieurs répertoires dans /var/ et supprime les fichiers/répertoires qui n'ont pas été consultés depuis longtemps.
Par exemple, /etc/cron.daily/tmpwatch sur CentOS/RHEL 5 affiche :
flags=-umc /usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \ -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \ -X '/tmp/hsperfdata_*' 240 /tmp /usr/sbin/tmpwatch "$flags" 720 /var/tmp for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do if [ -d "$d" ]; then /usr/sbin/tmpwatch "$flags" -f 720 "$d" fi done
qui supprimera les fichiers/répertoires qui n'ont pas été consultés pendant 240 ou 720 heures (=10 ou 30 jours).
/etc/cron.daily/tmpwatch sur CentOS/RHEL 6 montre :
#! /bin/sh flags=-umc /usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \ -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \ -X '/tmp/hsperfdata_*' -X '/tmp/.hdb*lock' -X '/tmp/.sapstartsrv*.log' \ -X '/tmp/pymp-*' 10d /tmp /usr/sbin/tmpwatch "$flags" 30d /var/tmp for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do if [ -d "$d" ]; then /usr/sbin/tmpwatch "$flags" -f 30d "$d" fi done
qui supprimera les fichiers/répertoires qui n'ont pas été consultés pendant 10 ou 30 jours.