麒麟OS排查异常需用journalctl查结构化日志,支持查看全部日志、实时监控、按时间筛选、指定服务日志及访问传统日志文件路径。

如果您在麒麟操作系统中需要排查系统异常、服务故障或启动问题,则需快速定位并读取系统日志。麒麟OS基于systemd架构,主要依赖journalctl命令读取结构化日志,同时也保留传统日志文件路径供兼容性访问。以下是查看系统日志的具体操作方法:
一、使用journalctl查看全部系统日志
该方法适用于快速浏览完整日志流,日志按时间倒序排列,最新条目在最下方。默认输出包含内核、服务单元及用户会话日志,需注意权限限制。
1、打开终端,输入以下命令查看全部日志:
2、如需限制输出行数(例如仅显示最后50行),执行:journalctl -n 50
3、若日志量过大导致卡顿,添加--no-pager避免分页器阻塞输出:journalctl --no-pager
二、实时监控日志输出
该方法用于持续观察服务运行状态或调试正在发生的事件,日志随新条目生成而自动追加,类似tail -f行为。
1、在终端中运行:journalctl -f
2、如需仅监控某类高优先级错误,可组合过滤:journalctl -f -p err
3、按下 Ctrl+C 可随时中断实时流。
三、按时间范围筛选日志
该方法适用于复现特定时段的问题,支持绝对时间、相对时间和自然语言表达式,精确到秒级。
1、查看今日全部日志:journalctl --since today
2、查看昨天08:00至17:30的日志:journalctl --since "yesterday 08:00" --until "yesterday 17:30"
3、查看最近15分钟内所有日志:journalctl --since "15 minutes ago"
四、查看指定服务的运行日志
该方法聚焦单一服务(如sshd、nginx、dbus等),排除无关干扰,便于分析服务启停、崩溃或配置加载失败原因。
1、查询SSH服务完整日志:journalctl -u ssh.service
2、查看上一次开机时该服务的日志(排除当前会话干扰):journalctl -u ssh.service -b -1
3、仅显示该服务的错误级别及以上日志:journalctl -u ssh.service -p err
五、访问传统日志文件路径
该方法适用于journalctl不可用(如journald服务异常)、需跨主机比对或配合第三方工具分析的场景。路径因麒麟OS版本(桌面版/服务器版)略有差异,需逐一验证。
1、检查系统是否启用rsyslog:systemctl is-active rsyslog
2、若启用,查看通用系统日志:sudo cat /var/log/syslog
3、银河麒麟服务器版常用路径:sudo cat /var/log/messages
4、认证相关日志(如登录失败记录):sudo cat /var/log/auth.log










