环境
CentOS Linux release 7.4.1708 (Core)
iRedMail 0.9.9
描述
iRedMail 使用 CentOS 7 中内置的 logrotate 来管理日志文件,默认只保存 4 周(不足 1 个月)的 maillog,在查询之前的邮件发信情况时,对于现实来说时间跨度不够,现更改其 logrotate 配置文件,使 logrotate 保存 iRedMail 至少 1 年的日志文件。其中包括 cron,maillog,messages,secure,spooler 日志文件,将会每周一份保存 1 份,且总共 56 份,并 57 份开始循环覆盖。
操作
logrotate 配置文件(部分),无需操作,仅共参考。
# rotate log files weekly
# 每周创建新的日志文件
weekly
# keep 4 weeks worth of backlogs
# 保存 4 周的日志文件
rotate 4
...
修改 iRedMail logrotate 日志配置文件"/etc/logrotate.d/syslog" 中的内容:
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
# 新增下行,以上日志文件保存56周日志。
rotate 56
missingok
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}