Systemd Journal 日志过大排查
背景
最近的机器磁盘容量经常报警,发现以下目录的磁盘占用较多
1 | |
/run/log/journal 是 Systemd 的日志目录,用于存储 Systemd 日志文件。你可以使用 journalctl 工具来管理和清理这些日志文件。以下是清理 Systemd 日志的方法.
解决方案
1. 列出日志条目:
若要查看可用的日志条目,可以使用以下命令:
1
journalctl
这将显示当前可用的 Systemd 日志。
2. 设置日志保留策略:
Systemd 使用日志保留策略来管理日志文件的保留时间。你可以通过编辑 /etc/systemd/journald.conf 文件来配置日志保留策略。查找 SystemKeepFree、SystemMaxUse 和 RuntimeMaxUse 选项,然后根据需要进行设置。例如:
1
2
SystemMaxUse=100M
这将配置 Systemd 日志最大占用的磁盘空间为 100MB。你可以根据你的需求调整此值。
3. 清理日志:
一旦你设置了日志保留策略,你可以运行以下命令来清理日志:
1
sudo journalctl --vacuum-time=1h
这将删除三天前的日志,保留最近三天的日志。
你可以更改 **`--vacuum-time`** 标志的值来定义保留多长时间的日志。
4. 查看清理后的日志大小:
若要验证清理后的日志文件大小,可以再次运行以下命令:
1
journalctl
这将显示当前可用的日志信息,包括已清理的部分。
提示
请注意,清理 Systemd 日志需要足够的权限。确保你有足够的权限来执行这些操作,或者使用 sudo 命令以管理员权限执行。清理日志文件可能会释放磁盘空间,但也可能会导致丢失一些旧日志信息,因此请根据你的需求和存储空间情况慎重选择清理策略。
Systemd Journal 日志过大排查
https://garychow-lgtm.github.io/zh-CN/2024/06/26/systemd-log-too-big/