[Linux][自分用メモ] because parent directory has insecure permissions (It’s world writable or writable by group which is not “root”)が出た時の対処法。

AIX、UNIX、Linux
2011-08-29
菖蒲のころ

zabbix の2.0.9が出ていることに気がついて、コンパイルして導入したところ、そういえばlogローテーションをしていないことに気が付き、慌ててlogローテーションをするように設定したところ、以下の様なエラーが発生しました。

/var/log/zabbix/zabbix_agentd.log {
  rotate 7
  missingok
  monthly
  notifempty
  compress
  dateext
  create 0664 zabbix zabbix
}

logローテーションファイル(zabbix-agent)

エラーメッセージ

logrotate -f zabbix-agent
error: skipping "/var/log/zabbix/zabbix_agentd.log" because parent directory has insecure permissions (It's world writable or writable by group which is not "root") Set "su" directive in config file to tell logrotate which user/group should be used for rotation.

Googleで少し検索したところ、明示的にsuを与えてやることでこのエラーに対処することが出来るようです。ということでlogローテーションファイルを以下のように修正してみました。

/var/log/zabbix/zabbix_agentd.log {
  rotate 7
  missingok
  daily
  notifempty
  compress
  dateext
  su zabbix zabbix
  create 0664 zabbix zabbix
}

こうすることでエラーメッセージが出力されないようになり、問題が改善したことを確認しました。

logrotate -v zabbix-agent
reading config file zabbix-agent

Handling 1 logs

rotating pattern: /var/log/zabbix/zabbix_agentd.log  after 1 days (7 rotations)
empty log files are not rotated, old logs are removed
switching euid to 993 and egid to 991
considering log /var/log/zabbix/zabbix_agentd.log
log does not need rotating
switching euid to 0 and egid to 0

今回の件で、logローテーションは奥が深いと感じ、また勉強不足だなぁと思いました。

この記事を書いた人

kometchtech

うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。じつはRouterboard User Group JPの中の人でもある。 Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

kometchtechをフォローする
タイトルとURLをコピーしました