我已将 logrotate 配置为仅在日志文件大小超出特定限制时进行轮换。某些 logrotate 定义具有 postrotate 脚本,这些脚本似乎在每次调用 logrotate 时都会运行,无论相关日志文件是否已轮换。因此,即使 logrotate 不需要更改日志文件,也会进行一些处理。
如果日志文件尚未旋转,是否有办法跳过后旋转部分?
示例条目:
# global settings
size=3M
rotate 2
create
compress
delaycompress
include /etc/logrotate.d
# wtmp settings
/var/log/wtmp
{
size=3M
create 0664 root utmp
rotate 1
}
我运行以下命令看看会发生什么:
logrotate -d -f /etc/logrotate.conf
答案1
很抱歉犯了这个错误。我确实运行了logrotate -d -f /etc/logrotate.conf
强制旋转,即使条件不匹配。如果我在没有该选项的情况下运行它,-f
一切都会按预期进行。