Linux日志分析核心是定位关键日志、按需筛选、结合上下文判断问题本质,聚焦“谁在什么时候、干了什么、结果如何”三要素。

Linux日志分析的核心逻辑很简单:先定位关键日志,再按需筛选内容,最后结合上下文判断问题本质。不靠死记命令,而靠理解“谁在什么时候、干了什么、结果如何”这三件事。
一、搞清日志从哪来、记了啥
系统日志不是杂乱无章的文本堆,而是有明确来源和分工的:
- /var/log/messages 或 /var/log/syslog:通用系统活动日志,内核消息、服务启停、硬件事件都往这里写
- /var/log/auth.log(Debian/Ubuntu)或 /var/log/secure(RHEL/CentOS):所有登录、sudo、SSH、su等安全动作全在这里,查异常访问首选
- /var/log/kern.log 和 dmesg:专盯内核级问题,比如驱动加载失败、USB设备识别异常、内存报错
-
journalctl:systemd 系统的日志统一入口,不用翻文件,一条命令就能查服务、时间、优先级——比如
journalctl -u nginx --since "2 hours ago"
二、用对工具,而不是用全工具
日常排查不需要掌握全部50个命令,盯住几个高频组合就足够应对80%场景:
- tail -f /var/log/auth.log:实时盯着登录行为,看到新失败记录立刻反应
-
grep -i "failed password" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr:一键统计暴力破解源IP,第11字段通常是IP(格式因日志而异,可先
head -n1看一眼) - grep -C 3 "segmentation fault" /var/log/messages:找到崩溃关键词,连带前后3行一起看,常能发现前置异常或后续连锁反应
- awk '$9 ~ /404|500/ {print $1, $4, $9}' /var/log/nginx/access.log:提取Web日志里的客户端IP、时间、状态码,快速定位异常请求模式
三、时间+上下文=真相
单看一行日志往往没意义,真正有用的线索藏在时间和关联行为里:
标签: linux word centos go nginx access ubuntu 工具 usb session ai 状
还木有评论哦,快来抢沙发吧~