用 ss 命令查端口占用:三招定位抢端口的进程

举报
yd_211833921 发表于 2026/11/11 07:19:38 2026/11/11
【摘要】 部署服务时,最让人头疼的报错之一就是端口被占用。服务起不来,日志里只说地址已被使用,到底是谁占了端口?用 ss 命令,三招就能定位。第一招,先看监听清单。执行 ss 命令加上监听参数,就能列出本机所有正在监听的端口和对应的进程。输出里每一行包含协议、监听地址、端口号和进程信息,一眼就能看到目标端口有没有被占,以及占用者是谁。如果目标端口已经在列表里,就不用再猜了,直接记下进程编号。第二招,按...

部署服务时,最让人头疼的报错之一就是端口被占用。服务起不来,日志里只说地址已被使用,到底是谁占了端口?用 ss 命令,三招就能定位。

第一招,先看监听清单。执行 ss 命令加上监听参数,就能列出本机所有正在监听的端口和对应的进程。输出里每一行包含协议、监听地址、端口号和进程信息,一眼就能看到目标端口有没有被占,以及占用者是谁。如果目标端口已经在列表里,就不用再猜了,直接记下进程编号。

第二招,按端口精确过滤。端口很多时,逐行翻找太慢,可以在 ss 命令后面加上端口过滤条件,只显示目标端口的连接和监听状态。这样输出只有一两行,结果非常直观。顺带看一眼连接状态,能区分是监听中还是已有连接在占用。

第三招,顺藤摸瓜找到进程。知道了占用端口的进程编号,再用进程查看命令按编号查询,就能看到完整的启动命令和所属用户。很多时候占用者是之前没退干净的旧进程,或者是误启动的测试服务,确认无用后就可以安全地结束它,释放端口。

日常使用还有几个小习惯。先查再启动,部署前花十秒看一眼端口清单,能省下半小时排障时间。记录常用端口,团队内部约定好各服务的端口范围,避免撞车。结束进程前先确认,先看进程的启动命令和归属,确认不是关键服务再动手,免得误杀生产进程。

端口冲突看着吓人,本质上就是一张占用清单。掌握 ss 命令的监听查看、按端口过滤和进程追踪这三招,下次再遇到服务起不来,就能在一分钟内找到占用者,把端口抢回来。

顺手记一份检查清单,留着下次照着做:先列出监听端口,找到目标端口的占用进程编号,再看进程的启动命令确认身份,最后决定结束还是保留。清单贴在手边,排障就不用从头想步骤。养成先查后动的习惯,端口冲突就从拦路虎变成几分钟就能解决的小事,多查几次,这套流程自然就熟了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。