logrotate管理分割nginx日志无效


服务器想使用logrotate管理分割nginx日志,但是不知道为什么没有效果。如果手动执行logrotate强制rotate日志,能够成功分隔日志。

系统环境是centos 6.4。

下面是配置:


 # cat /etc/logrotate.d/nginx
/usr/local/nginx/logs/*.log {
daily
rotate 15
missingok
dateext
sharedscripts
postrotate
    if [ -f /usr/local/nginx/logs/nginx.pid ]; then
        kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
    fi
endscript
}

执行 sudo logrotate -dv /etc/logrotate.d/nginx 的时候显示 log does not need rotating

另外 cat /var/lib/logrotate.status 的时候,发现日志文件确实被标记成已经rotate了。

Linux logrotate nginx

哇好大一条狗 11 years ago

终于搞明白了,原来是selinux的问题。 chcon -Rv --type=var_log_t /usr/local/nginx/logs/ 为文件加上var_log_t就可以了

卖红帽的火柴 answered 11 years ago

Your Answer