温馨提示×

如何清理debian日志空间

小樊
37
2026-09-03 23:45:16
栏目: 云计算

在 Debian 系统中,日志通常由 systemd-journald(二进制日志)和 rsyslog / syslog(文本日志)管理。清理日志空间可以从以下几个方面入手:


一、查看日志占用情况

1. 查看 journal 日志大小

journalctl --disk-usage

2. 查看 /var/log 占用

du -sh /var/log/*

二、清理 systemd journal 日志(推荐)

方法 1:按时间清理

sudo journalctl --vacuum-time=7d

保留最近 7 天日志

方法 2:按大小清理

sudo journalctl --vacuum-size=500M

日志总大小限制为 500MB

方法 3:限制 journal 最大大小(永久)

编辑:

sudo nano /etc/systemd/journald.conf

修改或添加:

SystemMaxUse=500M

重启服务:

sudo systemctl restart systemd-journald

三、清理 /var/log 文本日志

1. 使用 logrotate(推荐,自动)

Debian 默认已启用:

sudo logrotate -f /etc/logrotate.conf

2. 手动清理大日志(谨慎)

例如:

sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log

⚠️ 不要用 rm,用 truncate 更安全

3. 删除旧压缩日志

sudo rm -f /var/log/*.gz
sudo rm -f /var/log/*.[0-9]

四、清理 apt 缓存(顺带)

sudo apt clean
sudo apt autoclean

五、查找异常大文件(实用)

sudo find /var/log -type f -size +100M

六、推荐做法总结

✅ 日常维护:

  • 限制 journal 大小
  • 依赖 logrotate

✅ 紧急清理:

  • journalctl --vacuum-size
  • truncate 大日志

❌ 不推荐:

  • 直接 rm 正在写入的日志
  • 关闭日志服务

如果你愿意,可以贴一下:

journalctl --disk-usage
df -h /var/log

我可以帮你判断是哪种日志在占空间。

0 踩