You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Debian 10服务器中/tmp目录下collectd日志的logrotate每日轮转失效问题求助

Debian 10服务器中/tmp目录下collectd日志的logrotate每日轮转失效问题求助

我在Debian 10服务器上遇到了一个关于logrotate的奇怪问题。

整体来说,logrotate(v3.20.1)工作正常,日志轮转也没问题……但/tmp目录下的某些文件我想每天“截断清理”,这些是collectd生成的csv日志,我不需要保留超过24小时。

我的collectd日志轮转配置文件如下:

/var/log/collectd/collectd.log {
    weekly
    rotate 4
    create
    compress
    missingok
}

/tmp/collectd/csv/localhost/*/* {
    daily
    rotate 0
    copytruncate
    missingok
}

下面是logrotate日志文件的部分内容:

rotating pattern: /var/log/collectd/collectd.log  weekly (4 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/collectd/collectd.log
Now: 2022-12-09 00:00
Last rotated at 2022-12-04 15:15
log does not need rotating (log has been rotated at 2022-12-04 15:15, which is less than a week ago)

rotating pattern: /tmp/collectd/csv/localhost/*/*  after 1 days (no old logs will be kept)
empty log files are rotated
considering log /tmp/collectd/csv/localhost/*/*

我注意到一个奇怪的点:在logrotate状态文件/var/lib/logrotate/status中,这些/tmp下的文件的状态日期一直停留在2022-12-1-0:0:0,而其他条目是正常更新的。

执行cat /var/lib/logrotate/status | sort的输出:

logrotate state -- version 2

"/tmp/collectd/csv/localhost/*/*" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/cpu-0/cpu-idle" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/cpu-0/cpu-interrupt" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/cpu-0/cpu-nice" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/cpu-0/cpu-softirq" 2022-12-1-0:0:0
...
"/tmp/collectd/csv/localhost/tcpconns-4772-remote/tcp_connections-SYN_SENT" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/tcpconns-4772-remote/tcp_connections-TIME_WAIT" 2022-12-1-0:0:0
"/tmp/collectd/csv/localhost/uptime/uptime" 2022-12-1-0:0:0
...

"/var/log/borgbackup.log" 2022-12-4-15:15:18
"/var/log/btmp" 2022-12-1-0:0:1
"/var/log/chrony/*.log" 2022-1-13-18:0:0
"/var/log/clamav/clamav.log" 2022-12-4-15:15:18
"/var/log/clamav/freshclam.log" 2022-12-4-15:15:18
"/var/log/collectd/collectd.log" 2022-12-4-15:15:18

我尝试用调试模式运行logrotate,结果如下:

...
rotating pattern: /tmp/collectd/csv/localhost/*/*  after 1 days (no old logs will be kept)
empty log files are rotated
considering log /tmp/collectd/csv/localhost/cpu-0/cpu-idle
Now: 2022-12-09 17:32
Last rotated at 2022-12-01 00:00
log needs rotating
...

rotating log /tmp/collectd/csv/localhost/cpu-0/cpu-idle, log->rotateCount is 0
dateext suffix '-20221209'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
renaming /tmp/collectd/csv/localhost/cpu-0/cpu-idle.1.bz2 to /tmp/collectd/csv/localhost/cpu-0/cpu-idle.2.bz2 (rotatecount 1, logstart 1, i 1),
renaming /tmp/collectd/csv/localhost/cpu-0/cpu-idle.0.bz2 to /tmp/collectd/csv/localhost/cpu-0/cpu-idle.1.bz2 (rotatecount 1, logstart 1, i 0),
log /tmp/collectd/csv/localhost/cpu-0/cpu-idle.2.bz2 doesn't exist -- won't try to dispose of it
skip copying /tmp/collectd/csv/localhost/cpu-0/cpu-idle to /tmp/collectd/csv/localhost/cpu-0/cpu-idle.1
truncating /tmp/collectd/csv/localhost/cpu-0/cpu-idle
compressing log with: /bin/lbzip2
...

但这些文件并没有在每天午夜自动轮转,而是持续变大:(

请问在/tmp目录下轮转文件是可行的吗?看起来应该可以,但问题出在哪里呢?

感谢各位的帮助!

备注:内容来源于stack exchange,提问作者sbocquet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 07:37:58