先建立日志地图
排障效率取决于知不知道日志在哪。RPM 系发行版(openEuler、银河麒麟)的综合日志在 /var/log/messages、认证日志在 /var/log/secure;DEB 系(统信 UOS)对应 /var/log/syslog 与 /var/log/auth.log。除此之外还有包管理日志、审计日志、内核消息以及 journald 的二进制日志。先记住这张地图,再去谈具体分析手段。
基本信息
| 适用平台 | openEuler 与 Kylin(RPM 系)、UOS(DEB 系) |
|---|---|
| 综合消息 | RPM 系 messages,DEB 系 syslog |
| 认证登录 | RPM 系 secure,DEB 系 auth.log |
| 内核与审计 | dmesg、/var/log/audit/audit.log |
| 统一入口 | journalctl,不依赖文本文件 |
典型使用场景
- 服务异常退出后确认是配置错误、权限问题还是被系统杀掉
- 安全事件排查:梳理登录失败、提权与 sudo 使用记录
- 核对包变更:确认谁在什么时候安装或升级了什么
- 等保合规场景下集中收集与保留认证与操作日志
- 容量排查:日志暴涨写满分区时定位来源并调整轮转
快速巡检
快速巡检
ls -l /var/log/ | head -40 # 先看目录里都有什么
tail -n 30 /var/log/messages 2>/dev/null || tail -n 30 /var/log/syslog
grep -i 'failed' /var/log/secure 2>/dev/null | tail # 认证失败记录
journalctl -b -p warning --no-pager | tail -30 # 本次启动的告警及以上
dmesg -T | tail -30 # 内核消息,时间可读
last -n 10; lastb -n 10 2>/dev/null # 最近登录与失败尝试日志位置对照
| 类型 | RPM 系路径 | DEB 系路径 |
|---|---|---|
| 综合消息 | /var/log/messages | /var/log/syslog |
| 认证登录 | /var/log/secure | /var/log/auth.log |
| 计划任务 | /var/log/cron | syslog 或 journal |
| 包管理 | /var/log/dnf.log、dnf.rpm.log | /var/log/apt/history.log、term.log |
| 审计 | /var/log/audit/audit.log | /var/log/audit/audit.log |
| 内核与引导 | /var/log/boot.log、dmesg | /var/log/kern.log |
文本日志的前提是 rsyslog 在运行;精简安装的系统可能只保留 journal,文件不存在不等于没有记录,先试 journalctl 再回到文件。
直接删除大日志文件并不能立刻释放空间:被进程持有的句柄仍占用磁盘,正确做法是走 logrotate 或清空文件内容。
排查动作清单
- 先记录故障时间点,便于多个文件对齐时间线
- 用 journalctl -b -p warning 快速浏览整体异常
- 认证与登录问题看 secure 或 auth.log
- 内核与硬件问题看 dmesg 与 boot.log
- 包相关变更看 dnf 或 apt 日志
- 空间告警先查 /var 与日志轮转配置