温馨提示×

怎么清理CentOS message日志

小樊
69
2026-07-20 15:56:16
栏目: 智能运维

清理 CentOS 的 messages 日志(通常是 /var/log/messages)有几种常见、安全的方法,下面按推荐程度给你说明(适用于 CentOS 6/7/8)。


一、查看 messages 日志路径

ls -lh /var/log/messages

二、安全清理方式(推荐)

✅ 方法 1:清空日志内容(最常用)

不会删除文件,也不会影响系统

sudo truncate -s 0 /var/log/messages

或者:

sudo > /var/log/messages

✅ 适合:日志太大、想立刻释放空间


✅ 方法 2:使用 systemd 的 journalctl(CentOS 7/8)

如果 messages 是由 rsyslog + systemd 管理:

查看占用

journalctl --disk-usage

清理日志

sudo journalctl --vacuum-size=100M

或按时间:

sudo journalctl --vacuum-time=7d

三、仅删除旧日志(保留当前)

✅ 方法 3:删除轮转后的旧日志

CentOS 默认会轮转日志:

ls /var/log/messages*

可能看到:

messages
messages-20240101
messages-20240108

删除旧文件:

sudo rm -f /var/log/messages-*

⚠️ 不要删除 messages 本身


四、重启 rsyslog(清理后建议)

sudo systemctl restart rsyslog

五、防止 messages 日志过大(重要)

✅ 配置日志轮转

编辑:

sudo vi /etc/logrotate.d/syslog

示例(已存在,可检查):

/var/log/messages {
    rotate 7
    daily
    missingok
    notifempty
    compress
    delaycompress
    postrotate
        /usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
    endscript
}

生效:

sudo logrotate -f /etc/logrotate.conf

六、不推荐的方法 ❌

rm -f /var/log/messages

❌ 可能导致 rsyslog 不再写入日志,需重启服务才能恢复


七、快速判断 messages 是否异常增长

tail -f /var/log/messages

如果刷屏严重,可能是:

  • 网络问题
  • 磁盘 / 硬件错误
  • 服务频繁重启

总结(最常用 3 步)

sudo truncate -s 0 /var/log/messages
sudo systemctl restart rsyslog
sudo journalctl --vacuum-size=100M

如果你愿意,可以告诉我:

  • CentOS 版本(cat /etc/centos-release
  • messages 当前大小(du -sh /var/log/messages

我可以给你更精准的清理方案

0