揮発性のメモ2

知識をメモ書きしておく

ログローテートしない

$ sudo logrotate -vf /etc/logrotate.d/oreore
Ignoring /etc/logrotate.d/oreore because of bad file mode.

Handling 0 logs
$
$ ls -l /etc/logrotate.d/oreore
-rwxr--r-- 1 jikken jikken 524 Jan 29 11:33 esalog

最近のlogrotateは、設定ファイルのパーミッションに非常にうるさい。(むかしはそんなことなかった)

$ sudo chmod 644 /etc/logrotate.d/oreore
$ sudo chown root:root /etc/logrotate.d/oreore


これだけやってもまだ文句を言うときがある

error: skipping "/var/log/ore/oreore.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.

諸事情でログ置き場のフォルダやログ本体の所有者がrootじゃないとき、怒ってくる。
書いてある通りに設定ファイルを修正する

/var/log/ore/*.log {
        daily
        missingok
        rotate 12
        compress
        delaycompress
        create 0666 www-data www-data
# ★この行を追加 ↓
        su www-data www-data
}

createディレクティブとおなじにしとけば文句を言わなくなる
su はDebianでしか使えない。 Redhatだとエラーになる