mkdir /etc/logrote.daily/ -p
vim nginx_access
root@ubuntu:/etc/logrotate.daily.0# cat nginx_access
/var/log/nginx/access.log {
daily #按天切割日志
missingok #忽略错误
rotate 7 #文件保留7天
compress #压缩文件
delaycompress #延迟一天压缩文件
dateext #以日期为单位 默认-%Y%m%d
notifempty #空文件不切割
#create 0640 www-data adm #创建 0640权限的日志文件
sharedscripts
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then
run-parts /etc/logrotate.d/httpd-prerotate;
fi
endscript
postrotate
if [ -f /run/nginx.pid ]; then
kill -USR1 cat /run/nginx.pid
#切割日志完成后通知nginx重新打开日志文件,不终止nginx
fi
endscript
}
crontab -e
0 0 * * * /usr/sbin/logrotate -f /etc/logrotate.daily.0/nginx_access >/dev/null 2>&1