この記事は会員限定です。会員登録すると全てご覧いただけます。
/tmp/ディレクトリ下は、テンポラリ領域としてファイルの解凍や一時的に利用するファイルが書き出される。常時稼働させている状態でしばらくの日数を経て/tmp/下を見ると、以前あったファイルが無くなっている場合がある。これはどのようなタイミングで削除されたのだろうか?
これは、1日1回実行されるcronスケジュールで実行されるスクリプト「tmpwatch」から実行されるコマンド「tmpwatch」によって判断されている。
# file /usr/sbin/tmpwatch /usr/sbin/tmpwatch: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), stripped
その条件を確認するためには、cronスケジュールの該当するスクリプト「tmpwatch」を覗いてみればよい(注:前述の/usr/sbin/tmpwatchとは別ファイル)。
# ls /etc/cron.daily/ 00-logwatch logrotate rpm tetex.cron 0anacron makewhatis.cron slocate.cron tmpwatch # cat /etc/cron.daily/tmpwatch /usr/sbin/tmpwatch 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スクリプト内では、/usr/sbin/tmpwatchによる実行オプションが各種指定されている。それぞれの内容は次の通りだ。
/tmp/下で240時間アクセスが無いファイルを削除する
/var/tmp/下で720時間アクセスが無いファイルを削除する
/var/cache/man/、/var/cache/catman/下で720時間アクセスがないファイルを削除する
ここまでで明らかなように、/etc/cron.daily/tmpwatchスクリプト内の時間指定を編集すれば、好みの間隔で自動削除させることも可能だ。
Copyright © ITmedia, Inc. All Rights Reserved.