信息发布→ 登录 注册 退出

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

发布时间:2025-12-20

点击量:
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 还顺手。

标签:# 重启  # 熟了  # 最常用  # 可选  # 只显示  # 不需要  # 就能  # 太多  # 几个  # 的是  # linux  # ssh  # var  # 标识符  # linux系统  # ai  # nginx  # go  # json  # js  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!