当前位置: 首页 > 新闻动态 > 技术教程

Linux使用journalctl查看日志_Linux系统日志管理方法

作者:舞姬之光 浏览: 发布日期:2025-12-20
[导读]:journalctl核心操作是时间范围、服务过滤和实时跟踪;常用参数包括-b(本次启动)、-u(服务名)、-f(实时跟随)等,配合--since、-n、-ojson等可高效定位问题。
journalctl核心操作是时间范围、服务过滤和实时跟踪;常用参数包括-b(本次启动)、-u(服务名)、-f(实时跟随)等,配合--since、-n、-o json等可高效定位问题。

journalctl 查看日志,核心是掌握时间范围、服务过滤和实时跟踪这三类常用操作,不需要记太多命令,记住几个关键参数就能解决大部分问题。

按时间查看最近的日志

系统重启后日志会从最新一次启动开始记录,最常用的是:

  • journalctl -b:查看本次启动后的所有日志
  • journalctl -b -1:查看上一次启动的日志(适合排查重启前的问题)
  • journalctl --since "2 hours ago"--since "2025-05-20 10:00:00":按相对或绝对时间筛选

按服务或进程过滤日志

避免被海量日志淹没,直接定位目标服务:

  • journalctl -u sshd:查看 ssh 服务日志(单位名通常是 service 文件名,如 nginx.service 可简写为 nginx
  • journalctl _PID=1234:查指定进程 ID 的日志(可用 ps aux | grep xxx 先找 PID)
  • journalctl SYSLOG_IDENTIFIER=kernel:查内核日志(或 systemddhcpcd 等标识符)

实时跟踪和常用查看技巧

像看终端输出一样动态监控日志流:

  • journalctl -f:实时跟随最新日志(类似 tail -f),按 Ctrl+C 退出
  • journalctl -n 50:只显示最后 50 行(配合 -f 就是“显示最后 50 行并继续跟进”)
  • journalctl -o json:以 JSON 格式输出,方便脚本解析(注意:中文可能显示为 Unicode 转义)

清理和持久化日志(可选)

默认 journal 日志存在内存和 /run/log/journal(重启丢失),若需长期保存:

  • 创建目录:sudo mkdir -p /var/log/journal
  • 重启 journald:sudo systemctl restart systemd-journald
  • 清理旧日志:sudo journalctl --vacuum-time=2weeks--vacuum-size=500M

基本上就这些。journalctl 比传统 syslog 更结构化,查得准、过滤快,用熟了比翻 /var/log/messages 还顺手。

免责声明:转载请注明出处:http://sczxchw.cn/news/65649.html

扫一扫高效沟通

多一份参考总有益处

免费领取网站策划SEO优化策划方案

请填写下方表单,我们会尽快与您联系
感谢您的咨询,我们会尽快给您回复!