Logrotate 追加而不替换文件名上的日期

Leo*_*Leo 3 logrotate

我在 RedHat 系统上运行 logrotate。我更改了配置以每天轮换文件夹中的所有文件。几天后,文件列表显示:

login.log-20170220
login.log-20170220-20170222
login.log-20170220-20170222-20170224
login.log-20170220-20170222-20170224-20170226
login.log-20170220-20170222-20170224-20170226-20170228
login.log-20170220-20170222-20170224-20170226-20170228-20170302
login.log-20170220-20170222-20170224-20170226-20170228-20170302-20170304
login.log-20170220-20170222-20170224-20170226-20170228-20170302-20170304-20170306
login.log-20170220-20170222-20170224-20170226-20170228-20170302-20170304-20170306-20170308
login.log-20170220-20170222-20170224-20170226-20170228-20170302-20170304-20170306-20170308-20170310
login.log-20170220-20170222-20170224-20170226-20170228-20170302-20170304-20170306-20170308-20170310-20170312
login.log-20170228
login.log-20170228-20170302
login.log-20170228-20170302-20170304
login.log-20170228-20170302-20170304-20170306
login.log-20170228-20170302-20170304-20170306-20170308
login.log-20170228-20170302-20170304-20170306-20170308-20170310
login.log-20170228-20170302-20170304-20170306-20170308-20170310-20170312
login.log-20170306
login.log-20170306-20170308
login.log-20170306-20170308-20170310
login.log-20170306-20170308-20170310-20170312
Run Code Online (Sandbox Code Playgroud)

我在其他系统中也有同样的设置,从来没有遇到过这个问题……这是 logrotate.d/ 中的配置

/var/log/syslog-wal/* {
    missingok
    notifempty
    create 0640 root wheel
    daily
    rotate 14
}
Run Code Online (Sandbox Code Playgroud)

我觉得奇怪的是,每 8 天就会有新一轮的文件。有什么线索吗?该文件夹位于 /var/log 内,但我在其他标准 logrotate.d 文件中没有看到任何可以解释这一点的内容。

Kus*_*nda 6

该模式/var/log/syslog-wal/*不仅匹配login.log该日志的所有轮换,还匹配该日志的所有轮换,这意味着每个文件都将轮换并在其名称后附加日期(如果文件满足轮换标准)。

再次运行时,这些文件中的每一个都会附加日期等。

因此,解决方案是仅将/var/log/syslog-wal/login.log或可能指定/var/log/syslog-wal/*.log为模式。