问题是这样的,姑的孩子配logrotate,发现处理的结果后缀是1.gz 1.gz.1.gz无限循环的情况。
和预期不一致,所以想了解下解决办法,遂顺手谷歌搜了下,摘录如下。
问题示例:
-rw------- 1 root root 207 Nov 20 00:01 dev-virtual.log.1.gz
-rw------- 1 root root 113 Nov 19 00:01 dev-virtual.log.1.gz.1.gz
-rw——- 1 root root 100 Nov 18 00:01 dev-virtual.log.1.gz.1.gz.1.gz
-rw——- 1 root root 100 Nov 17 00:01 dev-virtual.log.1.gz.1.gz.1.gz.1.gz
怎么个情况?
怀疑两个相关程序配置有问题,即:logrotate and syslog-ng
logrotate配置要处理的文件为:
/var/log/syslog/*
而Syslog-ng配置记录日志的文件后缀为.log:
destination messages { file("/var/log/syslog/$HOST"); };
知道原因了,解决方法也很简单:
logrotate配置修改为:
/var/log/syslog/*.log
Syslog-ng配置文件
/etc/syslog-ng/syslog-ng.conf
改为:
destination messages { file("/var/log/syslog/$HOST.log"); };
测试结果:
logrotate --force "/etc/logrotate.d/syslog-ng"
-rw------- 1 root root 207 Nov 21 11:39 dev-virtual.log
-rw------- 1 root root 207 Nov 21 11:39 dev-virtual.log.1.gz
-rw------- 1 root root 313 Nov 21 11:26 dev-virtual.log.2.gz
问题解决。
以上方案完整翻译自:
如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。