系统中有一个程序,不点名了,它在运行时使用到/tmp目录下的一个子目录,最近发现经常会无辜找不到该目录,导致报错,导致工作异常。
周一认真检查了一下,发现是linux特色的一个东西。
原因:操作系统每天都会执行一个程序,该程序会自动将一些所谓垃圾文件清理掉,我们所需要的那个目录被河蟹了。
more /etc/crontab里边包含一行
2 4 * * * root run-parts /etc/cron.daily 注:表示每天的4点2分,开始执行/etc/cron.daily目录下的可执行程序或脚本;
其中有一个tmpwatch程序,会自动把/tmp目录下的过期文件和目录删除掉。可以通过修改该文件的方式,把该目录作例外处理。
more /etc/crontab里边包含一行
2 4 * * * root run-parts /etc/cron.daily 注:表示每天的4点2分,开始执行/etc/cron.daily目录下的可执行程序或脚本;
其中有一个tmpwatch程序,会自动把/tmp目录下的过期文件和目录删除掉。可以通过修改该文件的方式,把该目录作例外处理。
more /etc/cron.daily/tmpwatch
/usr/sbin/tmpwatch -x /tmp/.X11-unix -x /tmp/.XIM-unix -x /tmp/.font-unix
-x /tmp/.ICE-unix -x /tmp/.Test-unix 240 /tmp
/usr/sbin/tmpwatch 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch -f 720 "$d"
fi
done
/usr/sbin/tmpwatch -x /tmp/.X11-unix -x /tmp/.XIM-unix -x /tmp/.font-unix
-x /tmp/.ICE-unix -x /tmp/.Test-unix 240 /tmp
/usr/sbin/tmpwatch 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch -f 720 "$d"
fi
done
没有评论:
发表评论