【Linux】journalctl
1、简介
journalctl用于查询和操作systemd进程管理的日志。
Systemd是Linux发行版的初始化系统,负责启动系统后的所有服务,并监视它们在系统运行期间的状态。Journal是Systemd的一部分,主要负责收集和存储日志数据。
journalctl是Journal的主要接口,提供丰富的功能来检索和显示日志条目。它能从磁盘上的二进制文件或者其他传输目标(如syslog)获取日志。
2、基础使用
2.1 查看所有日志
分页输出:
journalctl
不分页输出:
journalctl --no-pager
2.2 按时间倒序查看所有日志
journalctl -r
2.3 查看最新的10条日志
journalctl -n 10
2.4 实时查看新添加的日志条目
journalctl -f
3、过滤日志条目
3.1 根据服务名称过滤
journalctl -u nginx
3.2 根据进程ID过滤
journalctl _PID=2001
3.3 根据优先级过滤(0-7,0表示最重要)
journalctl -p err -b
4、时间戳和日志轮转
日志轮转是一个过程,其中旧的日志条目被删除以释放空间给新的日志条目。默认情况下,Journal将根据配置在/var/log/journal中保存日志文件,并在磁盘空间不足时执行日志轮转。
时间戳允许你查找特定时间范围内的日志条目。例如:
journalctl --since="2021-07-01" --until="2021-07-31 03:00"
5、查看日志占用空间大小
journalctl --disk-usage
注意事项: journal日志不会将程序输出的空行显示,日志会被压缩得满满当当。journal日志不会自动持久化,重启系统后,历史日志将被清除。可参考journal日志持久化配置。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!