在Linux系統中/tmp文件夾里是存放臨時文件的,在一定的時間內會被清空,則多長時間以后面的會被清空呢?
不一樣的Linux系統又不一樣的清空方式:
RHEL\CentOS\Fedora\:
/etc/cron.daily/tmpwatch這個文件的作用就是刪除一段時間內不使用的文件
查看文件內容如下:
#! /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_*' 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
第一行相當於一個標記(參數);
第二行就是針對/tmp目錄里面排除的目錄
第三行,這是對這個/tmp目錄的清理,下面的是針對其他目錄的清理。
在紅色部分附近/usr/sbin/tmpwatch "$flags" 30d /var/tmp這一行
紅色的表示30天的意思,這個就決定了30天清理/tmp下不訪問的文件。
你想一天一清理的話,就把這個30d改成1d。
但有個問題需要注意,如果你設置更短的時間來清理的話,比如說是30分鍾、10秒等等,
但你會發現重新電腦,這個並無效他不清理/tmp文件夾里面的內容,
因為tmpwatch的上層目錄是/etc/cron.daily/,而這個目錄是一天執行一次計划
任務,所以說,你設置了比一天更短的時間,他就不起作用了。
所以,在RHEL6中,系統自動清理/tmp文件夾的默認時限是30天
Debian\Ubuntu:
在/tmp文件夾里面的內容,每次開機都會被清空,如果不想讓他自動清理的話,只
需要更改rcS文件中的TMPTIME的值。
我們看如何來修改
vi /etc/default/rcS
把
TMPTIME=0 (默認是被注釋的,即每次啟動都會清理)
修改成
TMPTIME=-1或者是無限大
改成這樣的話,系統在重新啟動的時候就不會清理你的/tmp目錄了。
當然,如果說要限制多少時間來更改的話,就可以改成相應的數字。
所以,在Ubuntu中,系統自動清理/tmp文件夾的時限默認每次啟動
參考資料:http://lei3056.blog.163.com/blog/static/39532279201281174519863/
