Pokud soubory/adresáře v /tmp nebyly po dlouhou dobu přístupné, mohou být automaticky odstraněny. „tmpwatch ” vyčistí obsah /tmp nebo jiných dočasných adresářů.
Ve většině případů je odstranění souborů tmpwatch bezpečně ignorovatelné, protože nepoužívané soubory by měly být odstraněny z /tmp, aby se uvolnilo místo v systému souborů, aby se systém souborů obsahující /tmp časem nezaplnil.
Pokud však z nějakého důvodu tuto funkci nutně potřebujete deaktivovat, navzdory důležitosti tmpwatch pro zajištění toho, že /tmp nezpůsobí zaplnění souborového systému, je to možné odinstalováním tmpwatch:
# rpm -e tmpwatch
nebo alternativně přesunout/odebrat /etc/cron.daily/tmpwatch soubor v případě, že balíček rpm pro tmpwatch nelze odstranit, jako například níže:
# 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 #
Vyčištění nepřístupných souborů v /tmp je výchozí funkcí balíčku „tmpwatch“, který poskytuje úlohu cron /etc/cron.daily/tmpwatch. Toto je shell skript spuštěný crond daily, který kontroluje /tmp, /var/tmp a několik adresářů ve /var/ a odstraňuje soubory/adresáře, ke kterým se dlouho nikdo nepřistupoval.
Například /etc/cron.daily/tmpwatch na CentOS/RHEL 5 ukazuje:
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
která odstraní soubory/adresáře, ke kterým nebyl přístup po dobu 240 nebo 720 hodin (=10 nebo 30 dní).
/etc/cron.daily/tmpwatch na CentOS/RHEL 6 ukazuje:
#! /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
který odstraní soubory/adresáře, ke kterým nebyl přístup po dobu 10 nebo 30 dnů.