Home

技術系のメモと日々の雑感

意外と知らない tmpwatch の動作

cron で定期的に実行されてても、知ってるようで意外と知らない tmpwatch の動作。
再帰的にディレクトリを降りていくはずなのに、中身が空にならずにずっと残ってるディレクトリがあったりして、不思議に思ったりしてたんだけど。
この前、Samba のゴミ箱をクリアする方法を考えているときに man ページ(英語)を見たら Description が丁寧に書かれていた。
それによると、デフォルトでは

・シンボリックリンクはたどらない
・ファイルシステムが変わったら処理しない(・・・で合ってるかな?)
・root がオーナの lost+found は処理しない
・空のディレクトリと通常のファイルとシンボリックリンクのみ削除

という振る舞いをするらしい。
ちなみに、CentOS の /etc/cron.daily/tmpwatch では、オプションとして -umc が指定されているので、デフォルトの atime だけでなく mtime や ctime もチェックしてくれる。
ただ、ちょっと注意が必要なのは、複数指定されている場合にはそれらの最大値で判定される点。
ls -l(mtime)で見たときにタイムスタンプが変わってないから消えるだろうと思っていたら、atime が変わっていて消えないなんてこともあるので、覚えておいた方がよさそう。

この記事に対するトラックバック

この記事のトラックバックURL

-

管理人の承認後に表示されます

  • From: |
  • 2013/04/16(火) 12:47:02

この記事に対するコメント

この記事にコメントする

管理者にだけ表示を許可する