这篇文章主要介绍了如何解决windows系统和linux系统中端口被占用的问题的相关资料,需要的朋友可以参考下 一、在windows操作系统中,查询端口占用和清除端口占用的程序 提升权限后用:netstat -b 或用 1、查询端口占用的进程ID 点击"开始"-->"运行",输入"cmd"后点击确定按钮,进入DOS窗口,接下来分别运行以下命令:
netstat -a -n 各个端口占用
netstat -ano 各个端口占用和进程PID
netstat -aon | findstr "80"
C:\Users\admin>netstat -aon|findstr "80"
TCP 127.0.0.1:9080 0.0.0.0:0 LISTENING 4632 2、查看端口号所对应的应用程序 tasklist | findstr " 4632"
补充: tasklist /fi "pid eq 4632"
GROOVE.EXE 4632 Console 1 84,880 K
很明显,是GROOVE.EXE 占用了80端口,GROOVE.EXE 一个IE的ACTIVEX控件。 3、终止进程 taskkill /pid 4632 /F
或则使用 taskkill /f /t /im GROOVE.exe
再次查询是否成功终止
tasklist | findstr "4632"
如果成功终止此次执行命令后应返回空.,VPS云主机则表示成功,终止 PID 为 4632 的进程。 二、在Linux操作系统中,查询端口占用和清除端口占用的程序 1、查询端口号占用,根据端口查看进程信息 [root@server2 ~]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
httpd 5014 root 3u IPv4 14346 TCP server2:http (LISTEN) 2、根据进程号查看进程对应的可执行程序 ps -f -p 进程号
# ps -f -p 5014
UID PID PPID C STIME TTY TIME CMD
root 5014 1 0 17:26 ? 00:00:00 /usr/local/apache/bin/httpd -k 3、根据可执行程序查看动态链接 ldd 可执行文件名
ldd /usr/local/apache/bin/httpd
linux-vdso.so.1 => (0x00007fff9dc90000)
libaprutil-0.so.0 => /usr/local/apache/lib/libaprutil-0.so.0 (0x00002af026fcd000) 4、根据端口号得到其占用的进程的详细信息 netstat -tlnp|grep 80
tcp 0 0 192.168.33.10:80 0.0.0.0:* LISTEN 5014/httpd
|