今天服务器上/tmp下的php上传目录upload又没了,不是第一次了,郁闷的很
google下后找到原因,原来是tmpwath干的好事。
cat /etc/cron.daily/tmpwatch 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系统每天会用tmpwatch命令检查并删除 /tmp 下超过240小时未访问过的文件和目录
tmpwatch简介
功能说明:删除暂存文件。 语 法:tmpwatch [-afqv][–test][超期时间][目录…] 补充说明:执行tmpwatch指令可删除不必要的暂存文件,您可以设置文件超期时间,单位以小时计算。 参 数: -a或–all 删除任何类型的文件。 -f或–force 强制删除文件或目录,其效果类似rm指令的”-f”参数。 -q或–quiet 不显示指令执行过程。 -v或–verbose 详细显示指令执行过程。 -test 仅作测试,并不真的删除文件或目录。php.ini中设置
#临时文件的上传目录 upload_tmp_dir = “/tmp/upload” #session 分采用分级目录 session.save_path = “1;/tmp/session” ; 4 bits: 0-9, a-f ; 5 bits: 0-9, a-v ; 6 bits: 0-9, a-z, A-Z, “-“, “,” session.hash_bits_per_character = 4解决方法 -x 可以排除删除某些目录 -d 可以不删除空目录
/usr/sbin/tmpwatch -x /tmp/.X11-unix -x /tmp/.XIM-unix -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix -x /tmp/session -x /tmp/upload 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
学习, 不过,既然文件不是临时的,还是不要放tmp下好.
我改完tmpwatch配置文件后,tmp目录下的文件还是被删除,不知道什么原因。-x排除删除某些目录和240小时我都更改了。也没有好用。不知道还有别的什么文件需要更改还是需要重启什么服务,望博主指点。谢谢!
改完保存就可以了,你的情况我无法判断,查查crontab吧