当前位置:首页>Linux>实施岗必背:Linux排障11大必杀命令,从入门到甩锅

实施岗必背:Linux排障11大必杀命令,从入门到甩锅

  • 2026-10-11 06:18:09
实施岗必背:Linux排障11大必杀命令,从入门到甩锅

前面其实写过Linux基础命令,但很多小伙伴反馈太杂、太理论。想记吧,不知道先记哪几个。在生产环境出问题时,大脑一片空白,想查个东西敲不出来,敲出来了又少参数,查不到具体原因,最后锅全自己背了。

那今天就聊一聊生产环境真正高频、能定位问题、还能甩锅留痕的11条命令实战用法。包括每一段字符到底干啥的,以后就不用复制粘贴,脑海里自动就组合好了。


一、find 精准找大文件/异常日志(磁盘爆满核心)

对应现场场景:磁盘100%、日志炸盘、服务写文件失败、找不到垃圾文件。

完整实战命令

# 全盘查找1G以上大文件find / -type f -size +1G -exec ls -lh {} \;

字段拆解:

•find:检索文件专属命令
•/:从根目录开始全盘扫描(范围最大,适合全盘爆盘排查)
•-type f:只找「文件」,忽略文件夹、目录,避免干扰
•-size +1G:筛选大于1G的文件,精准锁定巨型日志/垃圾文件
•-exec ls -lh {} \;:找到文件后,自动展示文件大小、权限、时间,不用二次查询

其余高频衍生命令拆解

# 指定日志目录找500M以上文件find /home/logs -type f -size +500M -exec ls -lh {} \;

/home/logs:限定检索目录,不用全盘扫描,排查速度更快

# 查找近3天新增/修改文件find /home/project -mtime -3 -type f

-mtime -3:只看3天内变动的文件,专治「突然爆盘、临时新增垃圾文件」

老唐现场总结:df看磁盘、du看目录、find看文件,磁盘问题三步闭环,所有爆盘问题通杀。

禁忌:find查到的正在写入的日志,千万别直接删,会造成磁盘空间不释放。

二、du -sh * 逐级排查大目录

对应现场场景:磁盘已满,先快速定位是哪个目录占空间,缩小find排查范围。

完整命令

du -sh * | sort -hr

字段拆解:

•du:统计文件/目录占用磁盘大小
•-s:汇总统计,不展示子文件详情,界面干净不刷屏
•-h:人性化单位展示(G/M/K),不用自己换算字节
•*:统计当前目录下所有文件、文件夹
•sort:排序
•-hr:按容量从大到小倒序排列,一眼看到最大目录

实战逻辑:先靠这条命令锁定大目录,再cd进去用find找具体文件,排查效率翻倍。

三、tail -f 实时盯日志(排障第一入口)

对应现场场景:复现报错、抓实时异常、接口报错快速定位。

高频命令

tail -n 500 -f app.log

字段拆解:

•tail:查看文件末尾内容(日志都是末尾更新)
•-n 500:只加载最后500行,避免日志太大直接卡死终端
•-f:实时监听刷新,新日志自动弹出
•app.log:指定日志文件名

过滤报错升级版拆解

tail -n 500 -f app.log | grep -E "Exception|超时|Duplicate"
•|:管道,把前一条命令的结果传给后一条
•grep:关键字过滤
•-E:支持多关键字匹配,同时监听多种报错

现场铁律:所有线上问题,必须先开实时日志再复现,杜绝盲猜、盲重启。

四、grep 检索历史报错(取证复盘必备)

对应现场场景:偶发报错、历史故障、间歇性bug,实时抓不到,检索日志取证。

核心命令

grep -C 20"Duplicate entry" app.log

字段拆解:

•grep:文本关键字检索
•-C 20:核心保命参数!展示报错行+前后20行上下文
•"Duplicate entry":要检索的报错关键字(可替换空指针、超时等)
•app.log:检索目标日志文件

实战价值:单独一行报错没说服力,上下文才能看到入参、操作场景,精准甩锅不背锅。

五、ps -ef | grep 核查进程状态

对应现场场景:服务启动没反应、假启动、多进程冲突、服务莫名下线。

命令

ps -ef | grep java

字段拆解:

•ps:查看系统进程
•-e:展示系统所有进程
•-f:展示完整格式(PID、父进程、启动命令、用户)
•grep java:过滤出Java进程,精准定位项目服务

现场判断逻辑:无进程=启动失败;多进程=重复启动;有进程不通=服务卡死。

六、ss / netstat 端口排查(适配所有服务器,含无ss兼容方案)

对应现场场景:连接拒绝、端口不通、服务连不上中间件、端口占用排查,适配新老所有Linux服务器。

重点说明:部分老旧CentOS6、极简装机、精简系统没有自带ss命令,专属兼容方案+安装教程全部配齐,杜绝命令不存在报错。

命令

# 【新服务器首选】ss命令(高效快速)ss -an | grep 8080# 【老旧服务器/无ss必用】netstat兼容替代(100%适配所有系统)netstat -an | grep 8080# 无ss命令一键安装(临时补装,装完直接能用)yum install iproute -y

字段拆解(两条命令通用):

•ss / netstat:Linux两大网络端口查询工具,ss新版更快,netstat全版本兼容
•-a:展示所有连接、监听端口,不漏查状态
•-n:纯数字端口展示,不解析域名主机,查询速度翻倍、不卡顿
•grep 8080:精准过滤目标业务端口、中间件端口
•ss:比netstat更快的套接字查询命令,生产首选
•-a:展示所有连接、监听端口
•-n:纯数字展示,不解析域名、主机名,速度更快
•grep 8080:过滤指定端口,查看是否正常监听

实战结论(通用所有服务器):无端口监听=服务未启动/启动报错;有端口监听=网络、防火墙、配置问题。

现场避坑:遇到ss: 未找到命令,直接放弃ss,用netstat替代,不用折腾安装,现场排查优先保证能用。

七、kill -15 / kill -9 进程终止命令

对应现场场景:进程卡死、端口占用、重启失效、假死服务清理。

命令

kill -15 PIDkill -9 PID

字段拆解:

•kill:终止进程命令
•-15:温柔终止(默认),通知程序收尾事务、保存数据、释放端口,生产首选
•-9:强制杀死,暴力终止进程,不做任何收尾,仅卡死时使用
•PID:对应进程ID(通过ps命令查询)

现场避坑:新人别上来就-9,极易造成数据丢失、文件损坏、事务回滚失败。

八、top 查看服务器负载

对应现场场景:接口卡顿、批量超时、页面加载慢,区分是服务器问题还是代码问题。

命令+拆解

top

解释:

top是系统动态监控面板,无需复杂参数,直接看三个核心点:

•CPU满载 → 代码死循环、慢SQL、并发过高
•内存满载 → 内存泄漏、缓存堆积
•负载正常服务卡 → 纯代码bug,和服务器无关

九、dmesg -T 排查进程莫名消失

对应现场场景:服务突然闪退、日志无报错、自动宕机、重启就好。

命令

dmesg -T | grep -i kill

字段拆解:

•dmesg:查看系统内核日志(业务日志查不到的内核级问题全在这)
•-T:把时间戳转为正常时间,方便对标故障时间
•grep -i kill:模糊检索内核杀死进程记录,-i忽略大小写

实战神逻辑:服务莫名消失90%是OOM内存溢出,系统主动杀进程,业务日志完全不记录,只有这条命令能查到。

十、curl 自测接口划分责任

对应现场场景:前后端扯皮、外网不通、接口报错,快速界定问题边界。

命令

curl http://127.0.0.1:8080/xxx/query

拆解:

•curl:服务器本地发起请求,不依赖浏览器、前端、外网
•127.0.0.1:本地回环地址,不走外网、不走防火墙

甩锅铁律:

本地通前端不通 → 前端/域名/外网问题;本地不通 → 后端服务/配置问题。

十一、lsof | grep deleted 排查磁盘假满故障(生产隐形坑王)

对应现场场景:df查看磁盘100%爆满,du、find排查无大文件,磁盘空间莫名被占、日志删了空间不释放、服务卡顿卡死。

新人致命误区:磁盘满了删日志,删完发现空间一点没少,越修越崩,最后背锅人为事故。

完整实战命令

# 查询已删除但未释放的僵尸文件(磁盘假满专属排查)lsof | grep deleted

字段拆解:

•lsof:list open files,查询系统所有进程正在占用的文件
•|:管道符,传递查询结果
•grep deleted:精准过滤已被删除、但被进程占用、未释放空间的僵尸文件

生产核心原理(必懂)

Linux机制:文件被正在运行的进程占用时,哪怕你用rm删除了文件,磁盘空间不会立刻释放。文件只是消失了入口,进程还在持有文件句柄,导致磁盘假满、无大文件但空间爆满。

这是线上最高频、最隐蔽的磁盘故障,du和find完全查不出来,只能靠lsof排查。

现场落地解决方案

# 方案1:安全清空僵尸日志文件(生产首选,不重启服务)echo "" > 被占用的日志文件名# 方案2:服务维护期,重启对应进程/服务,彻底释放空间kill -15 占用文件的PID

现场避坑铁律

磁盘爆满优先执行:先查deleted僵尸文件,再删日志!禁止直接rm删除正在写入的业务日志、运行日志,90%的磁盘假满事故都是新人乱删文件导致。

一线实施专属:命令+原理极简口诀(建议截图)

•find:目录粗查用du,精准找文件用find,+size筛大文件
•du:-sh看汇总,sort排序,快速锁定爆盘目录
•tail:-f实时监听,-n限定行数,过滤关键字抓报错
•grep:-C带上下文,排查报错不缺证据
•ps:-ef看完整进程,排查假启动、多进程冲突
•ss/netstat:-an查端口监听,新旧服务器双适配,专治连接拒绝
•kill:15温柔停服务,9强制杀卡死进程
•top:看负载定责任,区分环境问题和代码问题
•dmesg:查内核日志,专治服务莫名消失
•curl:本地自测接口,终结前后端扯皮
•lsof deleted:专治磁盘假满、删文件不释放空间的隐形故障

老唐最后唠叨两句

为什么别人排障快、不背锅?不是运气好,是懂命令原理,不是死记硬背。

只会复制粘贴,换个参数、换个场景就废;弄懂每一段参数的含义,现场不管什么奇葩问题,都能灵活改命令、精准定位。

这11条命令+参数拆解,搭配前面五大生产报错,已经覆盖实施岗99%的线上救火场景。吃透这套,你从“只会重启的新人”直接升级为“三分钟定根因、划责任的老员工”。

干货有用,欢迎点赞、在看、转发,关注老唐,持续解锁实施进阶实战技巧!

最新文章

随机文章