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

Linux下logrotate按小时轮转失效,如何解决?

解决logrotate按小时轮转不生效的问题

以下是排查和解决的具体步骤:

  • 检查定时任务触发频率
    默认的logrotate通常是按天执行(通过/etc/cron.daily/logrotate),哪怕配置了hourly,如果定时任务没每小时运行,也不会触发小时级轮转。解决方式:

    • 复制daily的脚本到hourly目录:cp /etc/cron.daily/logrotate /etc/cron.hourly/
    • 如果你用systemd管理定时任务,需要修改logrotate.timer的配置,将OnCalendar设为hourly,然后重启timer:systemctl edit logrotate.timer,添加内容:
      [Timer]
      OnCalendar=hourly
      Persistent=true
      
      然后执行systemctl daemon-reload && systemctl restart logrotate.timer
  • 验证配置文件语法正确性
    用调试模式检查配置是否有语法错误:logrotate -d /path/to/your/logrotate.conf,仔细查看输出内容,确认没有报错或警告。

  • 手动测试轮转是否生效
    强制触发轮转,验证配置本身是否能正常工作:logrotate -f /path/to/your/logrotate.conf,执行后检查日志目录下是否生成了轮转后的压缩文件,原日志是否被截断。

  • 检查logrotate状态文件
    logrotate会在/var/lib/logrotate.status记录每个日志文件的上次轮转时间,查看该文件确认对应日志的时间是否异常。如果时间记录错误,可以手动修改,或者用-f强制轮转后更新状态。

  • 确认日志文件权限
    确保logrotate运行用户(一般是root)对/var/adm/ras/cherrypy/下的日志文件有读写权限,否则无法完成轮转操作。可以用ls -l /var/adm/ras/cherrypy/查看权限,必要时调整:chown root:root /var/adm/ras/cherrypy/*.log

内容的提问来源于stack exchange,提问作者hundun

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 21:57:33