我发现只有 syslog.1 的大小在增加(Gbs)。其余的日志轮换过程都正常工作。我确实看到了压缩的 syslog2.gz、syslog.3.gz 等。
为什么只有 SYSLOG.1 在增长?请帮忙
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.6 LTS
Release: 16.04
Codename: xenial
答案1
你是指文件吗/var/log/syslog.1
?该lsof
命令将告诉你哪个进程打开了该文件。
sudo lsof /var/log/syslog.1
我只希望看到打开的rsyslogd
任何/var/log/syslog*
文件。
这是特定于程序的日志,还是您已自定义程序以写入此文件?某些程序需要信号来告诉它们在 logrotate 运行后开始使用新日志文件。这就是许多 logrotate 配置使用设置的原因postrotate
。如果程序没有此功能,则可以使用 来配置 logrotate copytruncate
。来自手册页http://manpages.ubuntu.com/manpages/precise/man8/logrotate.8.html
复制截断
在创建副本后,将原始日志文件原地截断为零大小,而不是移动旧日志文件并选择性地创建新日志文件。当某些程序无法关闭其日志文件并因此可能继续永久写入(附加)前一个日志文件时,可以使用此选项。请注意,复制文件和截断文件之间的时间间隔非常短,因此可能会丢失一些日志数据。使用此选项时,创建选项将不起作用,因为旧日志文件保留在原处。