問題:今天開發人員給我說了一個錯誤:The temporary upload location [/tmp/tomcat.1337767218595042057.80/work/Tomcat/localhost/ROOT] is not,很奇怪,以前在本機上編譯過,當時還有這個目錄,結果現在沒了
發現:發現/tmp/目錄很特殊,會自動刪除10天或者30天以前的文件
解決:在/usr/lib/tmpfiles.d/tmp.conf文件里修改下
# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d
# Exclude namespace mountpoints created with PrivateTmp=yes
x /tmp/systemd-private-%b-*
X /tmp/systemd-private-%b-*/tmp
x /var/tmp/systemd-private-%b-*
X /var/tmp/systemd-private-%b-*/tmp
加上一句:
x /tmp/tomcat.*
其他說明:(安裝tmpwatch在Centos 6.8里生成/etc/cron.daily/tmpwatch,在Centos7.3里不生成)
在Centos7.3系統里,沒發現/etc/cron.daily/目錄下有tmpwatch,只有/usr/lib/tmpfiles.d/tmp.conf的配置文件,在Centos6.8里,兩個都沒有,后來用yum裝了下tmpwatch,然后進行一個簡單測試,在/etc/cron.daily/tmpwatch里
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
將240改成1d,第二天果然刪除了。