温馨提示×

linux进程如何查看端口

小樊
41
2026-07-10 06:09:50
栏目: 智能运维

在 Linux 中,查看进程占用端口端口对应进程,常用以下几种方法:


一、最常用:ss(推荐,替代 netstat)

ss -lntp

示例输出:

LISTEN 0 128 0.0.0.0:80   0.0.0.0:*  users:(("nginx",pid=1234,fd=6))

说明:

  • -l:监听端口
  • -n:不解析服务名
  • -t:TCP
  • -p:显示进程信息

✅ 查看 UDP:

ss -lnup

二、经典命令:netstat(部分系统已废弃)

netstat -lntp

如果未安装:

# Ubuntu / Debian
sudo apt install net-tools

# CentOS / RHEL
sudo yum install net-tools

三、查看指定端口被哪个进程占用

方法 1:ss

ss -lntp | grep :80

方法 2:lsof(非常常用)

sudo lsof -i :80

示例输出:

nginx  1234 root    6u  IPv4  12345  0t0  TCP *:80 (LISTEN)

四、通过进程 PID 查看它占用的端口

sudo ss -lntp | grep 1234

sudo netstat -lntp | grep 1234

五、查看某个进程打开的所有端口

sudo ss -lntp | grep nginx

sudo lsof -i -P -n | grep nginx

六、查看所有监听端口 + 进程(简表)

sudo ss -lntup

七、常见问题排查

端口被占用但不知道是谁

sudo lsof -i :8080

进程存在但端口没监听

  • 检查程序是否真的 bind
  • 查看防火墙
sudo iptables -L

sudo firewall-cmd --list-ports

八、命令对比总结

命令 推荐度 说明
ss ⭐⭐⭐⭐⭐ 现代 Linux 首选
lsof -i ⭐⭐⭐⭐ 精准查端口/进程
netstat ⭐⭐ 老系统可用

如果你愿意,可以告诉我:

  • 你是 CentOS / Ubuntu / Debian / 容器环境
  • 想查 某个端口 还是 某个进程

我可以给你一条最合适的一行命令

0