Linux 查看端口命令
Linux 运维、服务调试中,端口查询、端口冲突排查是高频操作。本文极简整理 ss、netstat、lsof、fuser 四大常用命令,只留实用干货,可直接收藏复用。
一、核心排查场景
日常端口排查仅需解决3类问题:
- 查询本机所有监听端口(服务是否正常启动)
- 查询指定端口占用进程(解决端口冲突)
- 查看已建立的网络连接(排查异常访问)
二、ss 命令(首选,系统自带)
ss 是 netstat 升级版,无需安装、性能更强,为主流系统默认推荐工具。
常用命令
查看所有监听端口(最常用)
ss -tulnp
参数释义:-tTCP、-uUDP、-l监听端口、-n数字显示、-p显示进程信息
过滤指定端口(示例:22端口)
ss -tulnp | grep :22
查看所有已建立连接
ss -ant
三、netstat 命令(兼容老系统)
老牌端口查询命令,新版Linux默认无,需手动安装 net-tools。
安装命令
CentOS:yum install net-tools -y
Ubuntu:apt install net-tools -y
常用命令
# 查看所有监听端口
netstat -tulnp
# 查看指定端口占用
netstat -tulnp | grep 80
# 查看所有网络连接
netstat -ant
四、lsof 命令(精准查端口占用)
精准查询端口对应的进程、用户,主打端口冲突排查。
安装命令
CentOS:yum install lsof -y
Ubuntu:apt install lsof -y
常用命令
# 查看指定端口占用
lsof -i:80
# 查看所有监听端口
lsof -i -P -n | grep LISTEN
五、fuser 命令(一键释放端口)
快速定位并强制结束端口占用进程,解决端口占用卡死问题。
常用命令
# 查看端口对应进程
fuser -n tcp 80
# 强制杀掉端口占用进程
fuser -k 80/tcp
六、端口冲突极简排查流程
适用场景:启动服务提示 Address already in use
# 1. 查询端口占用PID
ss -tulnp | grep :8080
# 2. 查看进程详情
ps -ef | grep 进程ID
# 3. 强制结束进程,释放端口
kill -9 进程ID
七、命令选型总结
- 日常查询首选 :
ss -tulnp(高效、免安装) - 精准排查端口占用 :
lsof -i:端口 - 快速释放端口 :
fuser -k 端口/tcp - 老设备/旧脚本兼容 :
netstat -tulnp
熟练掌握以上命令,可解决绝大多数Linux端口监听、端口冲突、服务异常排查问题,是运维与开发必备基础技能。