如果没有发生日志轮换,logrotate 可以跳过 postrotate 脚本吗?

如果没有发生日志轮换,logrotate 可以跳过 postrotate 脚本吗?

我已将 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一切都会按预期进行。

相关内容