Windows的cmd命令中,当端口被占用时,如何查询占用进程并将其杀死?一文详解!
例如,我现在在部署ollama服务时遇到报错如下:
C:\Users\Admin>ollama serve Error: listen tcp 0.0.0.0:11434: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
错误分析
这个错误表明端口 11434 已被占用,Ollama 无法绑定到该端口。原因通常是:
- 另一个 Ollama 实例或同一端口的其他服务正在运行。
- 前一次运行的 Ollama 进程未正确关闭,导致端口仍被占用。【经排查,我这里是属于这种原因】
- 系统防火墙或网络配置限制了端口使用。
解决方案
1. 检查并终止占用端口的进程
- 找到占用端口的进程:
- 打开命令提示符(CMD)或 PowerShell,运行:
netstat -aon | findstr :11434
输出示例:
C:\Users\Admin>netstat -aon | findstr :11434 TCP 0.0.0.0:11434 0.0.0.0:0 LISTENING 29080 TCP [::]:11434 [::]:0 LISTENING 29080
这里的 29080 是占用端口的进程 ID (PID)。
2. 终止进程:
- 使用任务管理器或命令行结束该进程:
taskkill /PID 29080 /F
这里的进程号29080,你可以替换成你自己的PID即可, /F 代表 Force强制终止。
C:\Users\Admin>taskkill /PID 29080 /F
成功: 已终止 PID 为 29080 的进程。
重新运行 Ollama:
- 再次尝试:
ollama serve
便可以成功运行了

浙公网安备 33010602011771号