主要选项
点击以下选项,亲自构建 `journalctl` 命令并查看每个功能的说明。此工具旨在帮助用户通过组合各种选项直观地理解命令的工作方式。
1. 基本查询
2. 过滤
3. 输出格式
生成的命令:
请尝试组合命令。
描述:
`journalctl` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
日志存储和结构
`journald` 服务以二进制格式将系统日志存储在特定位置。存储方式取决于系统设置,这与日志保留期直接相关。本节将说明日志的存储位置和方式。
🌀 临时存储
/run/log/journal/
此处的日志在系统重启后将全部删除。主要用于短期问题解决或临时日志存储。如果系统未设置永久存储目录,则默认使用此处。
💾 永久存储
/var/log/journal/
此路径用于在系统重启后保留日志。在大多数生产服务器环境中,日志会配置存储在此路径。如果此目录存在,journald 将自动永久保留日志。
配置文件和日志清理
为了防止日志占用过多磁盘空间,您可以更改 `journald` 的设置或定期清理旧日志。本节将介绍相关的配置文件和清理命令。
配置文件:journald.conf
journald 的所有行为都可以通过 /etc/systemd/journald.conf 文件进行控制。以下是主要设置选项。更改设置后,需要使用 sudo systemctl restart systemd-journald 命令重启服务。
- Storage=: 决定日志存储方式。(
persistent,volatile,auto) - SystemMaxUse=: 指定日志占用的最大磁盘空间。(例如:
1G) - SystemKeepFree=: 指定始终需要保留的最小空闲空间。(例如:
200M) - ForwardToSyslog=: 设置是否将日志转发到现有的 syslog 守护进程。
日志清理
您可以手动清理日志以释放磁盘空间。请注意,删除的日志无法恢复。
查看当前磁盘使用情况
journalctl --disk-usage
查看日志当前占用的磁盘空间。
删除旧日志(按时间)
sudo journalctl --vacuum-time=2weeks
删除所有早于指定时间的日志。
限制日志大小(按容量)
sudo journalctl --vacuum-size=500M
将日志文件的总大小限制为指定容量,并删除旧日志。