linux

Linux系统日志如何清理

小樊
46
2025-09-03 10:31:28
栏目: 智能运维

Linux系统日志清理方法如下:

  1. 手动清理

    • 清空日志文件sudo truncate -s 0 /var/log/logfile(保留文件但清空内容)。
    • 删除旧日志文件sudo find /var/log -type f -name "*.log" -mtime +7 -delete(删除7天前的日志)。
  2. 使用logrotate工具(推荐)

    • 自动轮转压缩:编辑配置文件/etc/logrotate.conf/etc/logrotate.d/下的服务配置,设置rotate(保留天数/个数)、compress(压缩)等参数,执行sudo logrotate -f /etc/logrotate.conf手动触发。
    • 示例配置:保留7天日志并压缩:
      /var/log/*.log {
          daily
          rotate 7
          compress
          missingok
      }
      ```。  
      
      
  3. 管理systemd日志(journalctl)

    • 清理指定时间前的日志sudo journalctl --vacuum-time=1d(保留1天内日志)。
    • 限制日志大小sudo journalctl --vacuum-size=500M(保留500MB日志)。
    • 查看日志占用journalctl --disk-usage
  4. 注意事项

    • 操作前备份重要日志,避免误删。
    • 部分服务日志需重启服务(如systemctl restart rsyslog)以重新生成文件。
    • 定期检查清理策略,避免影响系统监控。

优先使用logrotate,它是系统原生支持的标准工具,可避免手动操作风险,且支持自动化管理。

0
看了该问题的人还看了