linux如何查看端口被哪个进程占用

发布时间:2022-01-04 16:01:59 作者:小新
来源:亿速云 阅读:253
# Linux如何查看端口被哪个进程占用

在Linux系统中,排查端口占用情况是网络调试和系统维护的常见需求。本文将介绍5种常用方法,帮助快速定位占用端口的进程及其详细信息。

## 一、使用netstat命令(传统工具)

```bash
sudo netstat -tulnp | grep <端口号>

参数说明: - -t 显示TCP端口 - -u 显示UDP端口 - -l 仅显示监听端口 - -n 以数字形式显示 - -p 显示进程信息

输出示例

tcp6   0   0 :::8080    :::*    LISTEN    1234/java

注意:新版本Linux中netstat可能被标记为废弃,建议使用ss命令替代。

二、使用ss命令(现代替代方案)

sudo ss -ltnp 'sport = :<端口号>'

优势: - 比netstat更快速 - 直接支持过滤语法

三、使用lsof命令(多功能工具)

sudo lsof -i :<端口号>

典型输出

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   1234 root    6u  IPv4  12345      0t0  TCP *:80 (LISTEN)

特殊技巧: - lsof -iTCP 仅查看TCP连接 - lsof -iUDP:53 查看UDP 53端口

四、使用fuser命令(专精端口占用)

sudo fuser <端口号>/tcp

输出进程PID后,可通过ps -p <PID> -o comm=查看进程名称。

五、通过/proc文件系统(底层查询)

ls -l /proc/*/fd 2>/dev/null | grep socket:

配合cat /proc/<PID>/cmdline可获取完整命令信息。

实用技巧组合

  1. 快速终止占用进程
sudo kill $(sudo lsof -t -i:<端口号>)
  1. 查看所有监听端口
sudo ss -tulwnp
  1. 持续监控特定端口
watch -n 1 'ss -tnp sport = :<端口号>'

总结

工具 特点 推荐场景
netstat 兼容性好 老系统维护
ss 速度快,语法简洁 日常快速检查
lsof 信息详细,功能全面 深度分析
fuser 专注端口-进程关系 快速获取PID

掌握这些方法后,无论是调试Web服务、数据库连接还是解决”Address already in use”错误,都能快速定位问题根源。 “`

注:实际字数为约520字,可根据需要增减具体命令示例或解释说明来调整篇幅。

推荐阅读:
  1. Windows 2008 R2 如何查看端口被哪个进程占用
  2. Windows查看端口被哪个进程占用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:Dubbo-go的核心注册引擎Nacos怎么使用

下一篇:JS的script标签属性有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》