CentOS查看某个端口被谁占用

CentOS查看某个端口被谁占用

在CentOS服务器管理中,确定特定端口被哪个进程占用是常见需求。端口冲突可能导致服务无法启动或网络连接问题。CentOS提供多种命令行工具实现这一目标。

netstat命令查询端口

sudo netstat -tulnp | grep :端口号

执行此命令输出包含三列关键信息:协议类型、PID(进程ID)和进程名称。-tulnp 参数含义:

  • -t:显示TCP端口
  • -u:显示UDP端口
  • -l:仅显示监听套接字
  • -n:禁用域名解析
  • -p:显示进程信息

示例:查找80端口占用情况 sudo netstat -tulnp | grep :80

ss命令快速检测

现代Linux系统推荐使用ss替代netstat,执行效率更高:

sudo ss -ltnpu | grep 端口号

命令参数说明:

  • -l:显示监听状态套接字
  • -t/-u:指定TCP或UDP协议
  • -n:以数字格式输出
  • -p:显示进程信息

lsof命令精准定位

lsof可直接关联端口和进程:

sudo lsof -i :端口号

输出结果包含进程名、PID、用户及协议类型。若未安装lsof,使用 yum install lsof 安装。

fuser命令检查占用

sudo fuser 端口号/tcp
sudo fuser 端口号/udp

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

操作注意事项

  • 使用管理员权限执行命令
  • ss和lsof适用于新版本CentOS
  • 端口号替换为实际查询的端口值
  • 无输出表示端口未被占用

通过这些工具组合,可快速诊断端口冲突问题。系统管理员应熟悉至少两种方法以便在不同环境中灵活使用。

寰宇互联服务器4核4G云服务器1元/月,网络稳定、抗DDos、国际BGP、性能强劲,十年服务经验QQ:97295700 微信:huanidc

阅读剩余
THE END