古いバージョン(1.2.6)ではこの問題は起こらなかったのですが、
ubuntu-11.
とりあえず、以下のような力技で対処。
cleanup_mu
1 #!/usr/bin/env ruby 2 require "etc" 3 4 Dir['/tmp/tmp.*'].each do |path| 5 uid = Etc.getpwuid(File.stat(path).uid).name 6 gid = Etc.getgrgid(File.stat(path).gid).name 7 next if uid != 'nobody' 8 next if gid != 'munin' 9 system "rmdir --ignore-f ail-on-non -empty #{path}" 10 end
これをcronで@hourlyに実行してます。
追記
シェルスクリプト版も用意してみました。
1 #!/bin/sh 2 3 for d in /tmp/tmp.* 4 do 5 if [ `stat -c %U $d` = "nobody" ] 6 then 7 if [ `stat -c %G $d` = "munin" ] 8 then 9 rmdir --ignore-fail-on-non -empty $d 10 fi 11 fi 12 done
posted by
genki
on Thu 7 Jul 2011
at 21:05