方法一 netstat
Linux查看端口占用一般使用”netstat”命令,有时候”netstat”命令可能没有预装,则需要先进行安装 “yum install net-tools”。
比如用”netstat”命令查看80端口被哪进程占用
其中tcp表示协议,”0.0.0.0:80″表示监听IP,22500表示主进程ID,nginx表示占用80端口的进程名称。
“netstat”命令参数:
-a 参数表示显示所有连接和监听中的套接字,
-n 参数表示使用数字格式显示地址和端口号,
-p 参数表示显示占用连接的进程信息。
grep <端口号> 表示查找过滤。
方法二 lsof
同样如果系统没有预装,则需要自己安装下”yum install lsof”
[root@localhost ~]# lsof -i :80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 22500 root 7u IPv4 194483 0t0 TCP *:http (LISTEN) nginx 22501 www 7u IPv4 194483 0t0 TCP *:http (LISTEN) nginx 22502 www 7u IPv4 194483 0t0 TCP *:http (LISTEN) nginx 22503 www 7u IPv4 194483 0t0 TCP *:http (LISTEN) nginx 22504 www 7u IPv4 194483 0t0 TCP *:http (LISTEN)
同样能一目了然看到进程名称、进程ID以及协议等。
COMMAND 表示占用端口的进程名,PID 表示进程 ID,USER 表示运行该进程的用户,TCP *:http (LISTEN) 表示监听所有 IP 地址的 http端口,http即80端口的意思,如果你查的是非常用端口则会以端口数字号显示。