ollama pull 很慢时,不要先找某个模型的 blob 直链。模型 manifest、分层文件和对象存储地址会变化,复制旧链接既不稳定,也可能绕过 Ollama 自己的完整性检查。
更可靠的做法是先判断慢在哪一层:Ollama 服务、DNS、HTTPS 代理、证书、对象存储链路、磁盘,还是已经损坏的未完成下载。
先记录版本和错误
|
|
不要只记录“很慢”。至少保留错误原文、发生时间、模型名、系统和 Ollama 版本。常见现象对应的方向不同:
| 现象 | 优先检查 |
|---|---|
TLS handshake timeout |
DNS、代理、证书、网络丢包 |
unexpected EOF |
连接中断、代理重置、磁盘或缓存 |
context deadline exceeded |
服务端连接、代理超时、网络质量 |
no space left on device |
模型目录所在磁盘 |
| 一直停在 resolving manifest | DNS、registry 访问或代理 |
| 下载完成后重新拉取 | 缓存目录权限、文件损坏、模型目录变化 |
确认 Ollama 服务正常
先测试本地 API,而不是直接把所有问题归因于公网:
|
|
如果本地 API 都无法访问,应先重启 Ollama 并查看服务日志。Windows 日志目录:
|
|
模型和配置通常位于:
|
|
Linux 标准安装查看日志:
|
|
Docker:
|
|
打开调试日志
Windows 先从托盘完全退出 Ollama,再从 PowerShell 启动调试模式:
|
|
若当前安装路径无法直接找到 ollama app.exe,在 %LOCALAPPDATA%\Programs\Ollama 中确认实际文件名和位置。复现一次下载后,查看 server.log 中的目标主机、状态码和重试信息。
Linux systemd 可添加临时 override:
|
|
写入:
|
|
然后执行:
|
|
检查 DNS 与 HTTPS
Windows:
|
|
Linux:
|
|
返回 401 Unauthorized 不一定是故障,它至少说明 DNS、TCP 和 TLS 已经走通;真正需要关注的是解析失败、连接超时、证书验证失败或被代理返回 HTML 错误页。
如果只有某一网络环境失败,可以用手机热点做一次对照。热点成功、原网络失败,说明问题更可能位于本地网关、DNS、代理或运营商链路,而不是模型本身。
正确配置代理
Ollama 官方建议模型下载使用 HTTPS_PROXY。不要随意设置 HTTP_PROXY,因为 Ollama 本地 API 本身使用 HTTP,错误设置可能干扰客户端连接。
当前 PowerShell 会话测试:
|
|
确认有效后,再把 HTTPS_PROXY 写入 Windows 用户环境变量,并完全退出、重新启动 Ollama。桌面程序不会自动继承启动后才修改的环境变量。
Linux systemd:
|
|
Docker:
|
|
TLS 证书错误怎么处理
公司代理可能重新签发 HTTPS 证书。看到 certificate signed by unknown authority 时,应把公司 CA 安装进系统或容器信任库,而不是关闭证书验证。
容器示例:
|
|
不要从不可信网站下载所谓“通用证书”,也不要把 API Key、代理密码或完整日志公开上传。
检查模型目录和磁盘
官方默认模型位置:
- Windows:
%USERPROFILE%\.ollama\models - macOS:
~/.ollama/models - Linux 标准服务:
/usr/share/ollama/.ollama/models
Windows 检查空间:
|
|
Linux:
|
|
若用 OLLAMA_MODELS 改过位置,要确认运行 Ollama 的账号有读写权限。Linux 标准服务通常由 ollama 用户运行:
|
|
中断后如何恢复
先直接重试同一个模型:
|
|
Ollama 会根据已有内容继续处理。不要在服务运行时批量删除 blobs,也不要把网上找到的 blob 文件直接塞进缓存。
如果同一层反复校验失败:
- 停止 Ollama。
- 备份模型目录清单。
- 从日志确定失败的是哪一个 digest。
- 只移走对应的未完成或损坏文件。
- 重新启动并再次执行
ollama pull。
不确定目标时,宁可把可疑文件移动到临时目录,也不要直接删除整个模型库。
验收下载结果
|
|
同时检查日志中不再循环出现重试、校验失败或写盘错误。下载速度瞬时变快不代表问题解决;能完成拉取、重启后仍能加载,才算通过。
仍然很慢时应收集什么
- Ollama 版本与操作系统。
- 模型名和大致大小。
- 错误发生时间与完整错误文本。
- 是否使用代理、VPN、Docker 或公司证书。
registry.ollama.ai:443的连通结果。- 脱敏后的服务日志片段。
- 模型目录剩余空间。
这些信息足以区分客户端问题、网络链路问题和上游服务问题,也比分享会过期的下载直链更容易复现。
参考资料: