简介:针对Ollama本地私有化部署的安装指导小资源,适合需要在Linux/macOS环境快速完成大模型运行平台搭建的中初级开发者或运维人员。压缩包仅13KB,由3个文件构成,包括1个txt说明文档、1个sh安装脚本和1个php下载入口脚本,shell脚本负责环境检测、依赖安装与执行安装流程,php脚本提供Web端获取安装包的路径,txt文档则整理了系统版本、硬件要求、下载步骤、常见报错和分步验证方法。已有437人浏览学习。资源体量轻但路径完整,覆盖安装前环境确认、脚本执行、配置修改、启动服务及验证是否成功的整个环节,还涉及自定义安装脚本以适配不同环境的思路,能够帮助使用者提前规避依赖缺失、权限不足等典型问题,节省排查时间,适合作为随身速查手册或自动化安装模板反复参考。
1. 说在前面:为什么我要专门写 ollama 安装,而不只是给一条命令
每次群里有人问 ollama 安装,我第一句话一定问他:模型准备放哪个盘?十个人里有八个答不上来。官方文档给的那条命令执行很快,但命令跑完之后,模型下载慢、C 盘爆掉、重启后服务丢配置、AnythingLLM 连不上——这些才是真正卡人的地方。ollama 安装这件事,重点从来不是“能不能装完”,而是装完之后模型落哪个目录、下载走哪条链路、服务怎么常驻、客户端填什么地址。这篇笔记把安装拆成在线、离线、脚本三条路径,适合想真在本地跑私有大模型的人。不管你是接 AnythingLLM 搭知识库,还是只想把 qwen 系列下到本地试一圈,先把安装和路径定死,后面才不返工。
2. 先把选型想清楚:Ollama 是什么,装完它到底动了你电脑的哪些地方
2.1 本地部署的三种姿势:Ollama、Docker、裸 llama.cpp,到底差在哪
要装之前,先把一件事说破:Ollama 本身不是一个模型,它是一层把模型下载、GGUF 文件管理、llama.cpp 运行时和 HTTP API 全包在一起的运行时。你想在本地把一个 7B 模型跑起来,一般有三条路。
第一条路是用 llama.cpp 源码自己编译,把 GGUF 文件直接喂给底层推理引擎,再用代码控制上下文长度、采样参数、GPU 层数。这条路控制力最强,但你要自己配置 CUDA、OpenBLAS 和编译工具链,还得自己管模型放在哪、进程怎么并发访问。适合本来就在做推理服务的团队,不适合只想在桌面机上试模型的人。第二条路是用 Docker 跑镜像,把 llama.cpp 或者 vLLM 封装成容器。隔离性好、部署可复现,但如果只是本机单用户用,为了这个单独维护容器网络和挂载目录,反而把简单问题搞复杂。第三条路才是 Ollama,一条ollama pull拉模型,一条ollama run起对话,默认监听 11434 端口,对外提供一套类似 OpenAI 风格的接口。
我拆 Ollama 安装资源时,看得最多的不是它做了什么,而是它替你藏了什么。ollama pull看起来像一句命令,背后牵涉 registry 访问、manifest 解析、分块下载、blobs 落盘这一整条链路。下表把本地部署三种姿势摆一起,你能一眼看出什么时候该选 Ollama:
| 维度 | Ollama | Docker 镜像 | 裸 llama.cpp |
|---|---|---|---|
| 模型下载 | 内置 registry 下载 | 自己拉模型文件 | 自己找文件 |
| 目录管理 | .ollama/models自动管理 | 挂载卷自己定 | 自己定 |
| API 暴露 | 自带 11434 HTTP API | 需要额外服务 | 自己写服务 |
| 上手成本 | 低 | 中 | 高 |
| 控制粒度 | 中 | 中高 | 最高 |
从“ollama本地部署大模型”这类诉求里能看出,大部分人真正要的不是极限性能,而是“模型能跑、能访问、别把系统盘搞爆”。所以我默认推荐 Ollama,但你要清楚它替你藏了哪些默认值,后面才不会踩坑。
2.2 安装器装完,你的电脑多了哪些东西:目录、端口、服务与数据层级
我每次拆安装包,第一件事是看它往系统里落了什么。无论你是从官网下安装器,还是用资源里的离线包,装完基本都会多出这几样东西:
| 关注点 | Windows 默认位置 | Linux 默认位置 | 说明 |
|---|---|---|---|
| 可执行文件 | %LOCALAPPDATA%\Programs\Ollama | /usr/local/bin/ollama | 装完是否进 PATH 由安装器决定 |
| 数据根目录 | %USERPROFILE%\.ollama | ~/.ollama | 包含 models、logs 等 |
| 模型文件 | .ollama\models\blobs | .ollama/models/blobs | 真正的权重文件在这 |
| 服务进程 | 托盘程序 Ollama.exe | systemd 单元 ollama.service | 决定开机是否自启 |
| 监听端口 | 127.0.0.1:11434 | 127.0.0.1:11434 | 默认只绑回环地址 |
有一个细节绝大多数人没注意:Windows 官方安装器根本不给你选安装目录,默认落在%LOCALAPPDATA%\Programs\Ollama。所以热搜里那句“ollama怎么安装在d盘”其实是不完整的问法——你真正能改的是模型数据目录,而不是可执行文件目录。我更推荐的做法是保留安装器默认位置,把OLLAMA_MODELS指到 D 盘,这样升级 Ollama 时不会把模型目录冲掉。
再往深一层聊数据层级。.ollama/models下有两个关键子目录:manifests存模型元数据 JSON,blobs存实际权重文件。blobs里的文件是分块存储的,一个模型在磁盘上可能被拆成几十个 blob 文件。你ollama list看到的是完整 tag,但底层文件并不像 QQ 下载那样整整齐齐一个文件夹。这也解释了为什么“把某个模型文件拷走”是错误操作——你只拷 manifest,不拷 blobs,模型照样跑不起来。
端口方面,Ollama 默认只监听127.0.0.1,这个设计是安全的。如果你想让局域网内另一台机器访问,要手动把OLLAMA_HOST改成0.0.0.0,否则客户端里填同一网段 IP 也连不上。
2.3 三种安装形态:在线安装器、离线包、命令行脚本,怎么选
Ollama 的安装渠道大致分三类:Windows 在线安装器(.exe)、离线安装包(Windows 的 zip、Linux 的 deb/rpm)、以及 Linux 上官方推荐的一键脚本。
# 官方在线安装脚本,适用于能直连外网的 Linux 服务器 curl -fsSL https://ollama.com/install.sh | sh逻辑说明:这条命令会下载一段 shell 脚本,脚本里包含二进制解压、systemd 服务注册、当前用户组检查。整个过程不是单纯的“把一个文件复制到/usr/local/bin”这么简单,所以不建议你从网页里抄一段就来跑。参数说明:这条命令需要 root 权限,没 root 时会让你配合 sudo 执行;装完后立即用ollama --version确认二进制版本。
三条路径的适用场景差异很大。在线安装器适合桌面机,装完还有图形托盘,方便退出和重启。离线包适合生产内网,机器不连公网也能把二进制装好。一键脚本适合 Linux 服务器批量装,几十台机器可以用同一套脚本统一下发。我一般会这么选:Windows 桌面用安装器,装完立刻改OLLAMA_MODELS;Linux 服务器如果可以联网,优先用资源里整理好的一键脚本,内网隔离环境就用 dpkg 离线包。顺序别反——先想好数据盘,再安装软件,能省一次整体搬迁。
2.4 WSL 和 Docker 两种“变体环境”,什么时候才需要单独装
还有一种情况经常被混在一起:在 WSL 里装 Ollama,和在 Docker 里跑 Ollama,是两个不同的问题。WSL 里装 Ollama,本质是装一个 Linux 版本的二进制,但你在 Windows 托盘里看不到它,服务生命周期由 WSL 发行版控制。如果你看到“wsl install太慢了”这类抱怨,先分清慢在哪一步:wsl --install要拉发行版镜像,速度取决于微软服务;而装完发行版之后跑curl -fsSL https://ollama.com/install.sh | sh,速度取决于你访问外网的情况。这两件事不要混为一谈。
Docker 里跑 Ollama 是用来做服务隔离的,典型命令是docker run -d -v ollama:/root/.ollama -p 11434:11434 ollama/ollama。这里的关键点在挂载卷:容器删除时模型数据要留在卷里,否则一删容器模型全没。正因为这两类环境都有额外变量,我建议新手先老老实实在本机装原生版,跑通链路后再谈容器化和 WSL。
3. 安装落地:从 D 盘、离线包到 GGUF 手动导入
3.1 动手前 10 分钟:环境变量决定模型去向,OLLAMA_MODELS 不是摆设
安装从来不是双击 exe 那一刻开始,而是从“模型数据往哪放”开始。我先给结论:把OLLAMA_MODELS指到一个独立数据盘,比装完再搬省事得多。Windows 下用 PowerShell 设置用户级环境变量:
# 1. 在 D 盘建好模型根目录 New-Item -ItemType Directory -Path D:\ollama\models -Force # 2. 写进用户环境变量,目标数据目录 [Environment]::SetEnvironmentVariable("OLLAMA_MODELS", "D:\ollama\models", "User") # 3. 新开一个终端,确认变量已经生效 echo $env:OLLAMA_MODELS逻辑说明:Ollama 启动时会读OLLAMA_MODELS这个环境变量,把它当作模型数据的根目录。默认情况下这个变量不存在,程序回落到%USERPROFILE%\.ollama\models,结果就是模型全部堆在 C 盘。SetEnvironmentVariable第三个参数传"User",表示只改当前用户的环境变量,不需要管理员权限。参数说明:路径要用D:\ollama\models这种完整路径,不要带末尾反斜杠;目录不存在没关系,程序会自己创建,但我习惯先建好,方便确认权限没问题。
改完环境变量只是第一步。你必须把 Ollama 托盘程序完全退出,再重新打开;或者干脆重启电脑。很多“明明设了变量还是下到 C 盘”的翻车现场,都是因为后台进程没有重新读取环境变量。还有一个容易忽略的点:OLLAMA_MODELS指的是数据根目录,不是models子目录的上一级。有人把变量设成D:\ollama,结果 Ollama 会把D:\ollama\.ollama\models当真正的数据路径,等于白设。
3.2 离线安装:断网内网怎么装,deb 包和 zip 包的差别
内网隔离环境里装 Ollama,最常见物料是 deb/rpm 包和 Windows zip 包。资源里我把离线安装脚本整理成了一套,核心思路是一致的:先把二进制装好,再通过本地介质导入模型,全程不依赖外网。
以 Ubuntu/Debian 为例,一套标准操作:
# 先确认机器架构,x86 选 amd64 包,ARM 机器选 arm64 包 uname -m # 安装 deb 包,二进制落到 /usr/local/bin sudo dpkg -i ollama-linux-amd64.deb # 安装完立刻看 systemd 服务是否注册成功 systemctl status ollama逻辑说明:Linux 在线安装脚本和离线包的差别不只是“有没有网络”,而是脚本会主动做 systemd 注册,离线包也要复现这一步。dpkg -i装完,官方 deb 包会自动带出.service文件,所以装完先看systemctl status ollama,如果显示active (running),说明进程已经起来了。这个时候别急着跑ollama list,先改服务级环境变量:
sudo systemctl edit ollama在弹出的编辑窗口里写:
[Service] Environment="OLLAMA_MODELS=/data/ollama/models"保存后重启服务:
sudo systemctl restart ollama这样配置的好处是,所有变量集中写进 systemd 的 override 文件,不会散落在/etc/environment里。等哪天排查问题,systemctl cat ollama一眼能看到服务实际启动参数。Windows 离线包略有不同:zip 包解压后没有安装程序,不会自动把可执行文件加进 PATH,需要你手动把解压目录加进系统环境变量。装完同样要设置OLLAMA_MODELS,逻辑和 3.1 一致。
3.3 国内网络下模型下载太慢:用 GGUF 手动导入绕开默认仓库
很多热词都指向同一个痛点:“ollama下载太慢”“ollama国内镜像源”“ollama下载模型国内镜像”。先说机制:ollama pull qwen3:8b不是直接从某个文件服务器下载一个整文件,而是先访问 Ollama 托管 registry 拿 manifest,再按层从 CDN 拉取。国内网络环境下,最常见的问题是卡在pulling manifest,或者某个 layer 下载到 60% 后一直不动。
我一般不会干等。更稳定的做法是绕开默认 registry,从 ModelScope 这类国内直连的模型平台把 GGUF 文件下载下来,再通过 Ollama 的本地导入功能把模型记录进去。具体是这样:
# 1. 假设 GGUF 文件已经在本地 ./qwen3-8b-q4_k_m.gguf mkdir -p ~/model-import && cd ~/model-import # 2. 写一个最小 Modelfile,FROM 指向本地 GGUF cat > Modelfile <<'EOF' FROM ./qwen3-8b-q4_k_m.gguf EOF # 3. 从本地文件创建模型 tag ollama create local-qwen3 -f Modelfile # 4. 验证模型已经出现在本地列表 ollama list逻辑说明:ollama create会把 Modelfile 里FROM指向的 GGUF 文件打包进本地模型仓,生成一个能够在ollama run里直接使用的 tag。这样做的好处是下载链路完全由你自己把控,不再撞默认 registry。参数说明:FROM后面写相对路径或绝对路径都行,但我建议写绝对路径,因为 Modelfile 是给ollama create用的,工作目录不同时,相对路径容易踩到“找不到文件”。q4_k_m是量化格式,显存 8G 左右用q4_k_m,24G 以上想追求质量可以下载q8_0。
这种方式还有另一个用处:你想用自己微调出的 GGUF 文件部署时,ollama create是必经路径。它不只是“国内加速”手段,更是把任意本地模型文件纳入 Ollama 管理的入口。
3.4 WSL 里跑 Ollama 要单独过的三个边界
WSL 里装 Ollama 的步骤和在真 Linux 上几乎一样,但有几个边界只有 WSL 才会碰到。第一是wsl --install太慢:这个动作从微软服务拉取发行版,慢不慢和 Ollama 无关,归网络环境管。我可以给你的建议是,先跑wsl --version确认 WSL 内核版本正常,再谈后续。第二,WSL 2 是虚拟机网络,Windows 上的localhost:11434能不能直接通到 WSL 里的 Ollama,取决于 WSL 的 localhost forwarding 是否开启。多数情况下 Windows 侧访问 WSL 里127.0.0.1:11434是通的,但若你改了 WSL 的网络模式,这条通道就可能断。
第三,数据盘挂载。WSL 里的 Linux 文件系统默认放在虚拟磁盘里,路径访问来自 Windows 的/mnt/d/很慢,所以模型目录放在/mnt/d/对推理性能不友好。正确的是在 WSL 内部目录放模型,例如~/ollama/models,让 WSL 的 ext4 文件系统直接访问。这三个边界里,前两个属于环境问题,第三个直接影响推理性能。如果你已经被“wsl install太慢了怎么解决”折腾过一轮,我更要建议:先在 WSL 里装原版跑通,等真正需要和 Windows 侧集成时,再回头配置网络和挂载。
3.5 接 AnythingLLM 当知识库后端:填 URL 最容易翻车
AnythingLLM 是经常和 Ollama 搭在一起的客户端,它自己不包含大模型推理能力,而是把 Ollama 当后端调。配置界面里选 Ollama provider,填 Base URL 和模型 tag,看起来很简单,但翻车率极高。
# AnythingLLM 如果用 Docker 启动,环境变量配置示例 OLLAMA_BASE_URL=http://host.docker.internal:11434 OLLAMA_MODEL=local-qwen3逻辑说明:AnythingLLM 的容器里写http://localhost:11434连不到宿主机,因为容器里的 localhost 指向容器自身,必须用host.docker.internal这种 Docker 提供给容器的宿主机别名。桌面版不关心这个问题,直接填http://localhost:11434就行。OLLAMA_MODEL填的必须是ollama list里出现过的 tag,填错会报model not found。
参数说明:如果你把OLLAMA_HOST改成了0.0.0.0:11434,AnythingLLM 里要同步填对应端口。我见过有人把 Ollama 端口改成别的值,结果 AnythingLLM 里还写 11434,测试连接一直超时。原理上 AnythingLLM 只是发 HTTP 请求到/api/chat,只要你确信curl http://your-host:port/api/tags能返回 JSON,AnythingLLM 这边基本就没问题。
4. 模型管理实战:下载、搬目录、关掉“思考”
4.1 pull 模型前先读懂 tag,别让 latest 害了你
拿到 Ollama 后,第一件事通常是拉一个能对话的模型。命令本身不复杂:
# 拉指定版本,不要用 latest ollama pull qwen3:8b # 查看本地模型列表 ollama list # 查看模型细节:量化、上下文、参数规模 ollama show qwen3:8b逻辑说明:ollama pull后面跟的是模型 tag,tag 由模型名和版本组成,中间用冒号分隔。latest是一个动态标签,官方可能会更新它指向的文件,下次 pull 时你可能拿到不同量化版本,这对复现不友好。参数说明:ollama show输出里重点看Quantization和Context Length,这两个字段决定模型能不能在你当前显存里跑起来。8G 显存建议qwen2.5:7b或qwen3:4b,16G 可以用qwen2.5:14b,24G 以上再考虑qwen3:32b。
很多人第一次用的时候会把 tag 写错。qwen3:8b和qwen2.5:7b是两个不同模型,前者是新的 reasoning 系列,后者是传统 instruct 系列。如果你只想要普通对话不想要思考过程,直接用qwen2.5:7b更省事。要是已经 pull 了qwen3:8b,又不想看到大段思考,请直接看 4.3 节。
4.2 模型已经躺在 C 盘:整体搬迁的三种手法
如果你没在安装前设置OLLAMA_MODELS,模型已经堆在 C 盘,还有补救办法。整个.ollama目录可以整体搬迁,关键在于顺序:先停服务,再搬目录,后改配置,顺序反了会因为 manifest 和 blobs 错位而出错。
Linux 下整体搬迁:
# 1. 停掉服务,避免模型文件被占用 sudo systemctl stop ollama # 2. 整个数据根目录搬走 mv ~/.ollama /data/ollama/.ollama # 3. 修改服务环境变量后重启 sudo systemctl edit ollama # 在文件里写入 Environment="OLLAMA_MODELS=/data/ollama/.ollama" sudo systemctl restart ollama # 4. 确认模型还在 ollama listWindows 下我习惯用 robocopy,因为它的/MOVE参数能搬完自动清理源文件,而且长路径处理比普通move稳:
robocopy C:\Users\你的用户名\.ollama D:\ollama\.ollama /E /MOVE逻辑说明:.ollama目录下的manifests和blobs必须同时移动,搬一半会导致“文件存在但模型跑不起来”。环境变量OLLAMA_MODELS要指向数据根目录本身,也就是.ollama,而不是它的上一级。许多人把OLLAMA_MODELS设成D:\ollama\models这种“自以为是”的路径,结果服务重启后又在 C 盘新建了一套目录。搬迁完成后,可以用ollama list做第一重验证,如果列表和搬迁前一致,说明 manifest 和 blobs 都对上了。
4.3 强制 Qwen 类模型“不思考”:Modelfile 里塞 stop 参数
现在 qwen 系的 reasoning 模型默认会在回答前先输出一段思考过程,很多人不想要这段内容。热搜里那句“ollama 怎么强制 qwen3.5-9b-q4_k_m 不思考”,本质就是要解决这个场景。Ollama 里最快的办法是做一个定制 tag,把思考起始 token 设置为停止位。
# Modelfile FROM qwen3:8b PARAMETER stop "<|start_thinking|>"ollama create qwen3-no-think -f Modelfile逻辑说明:qwen 的推理模板里,<|start_thinking|>是思考阶段的起始 token。把这段字符串加入stop参数后,模型输出到这个 token 会被强制截断,后续的思考内容就不会出现。实际使用中,模型的最终回复会跳过思考段直接给结论,响应时长明显变短,代价是复杂推理题目的质量会下降。参数说明:stop参数支持多个值,如果你想彻底禁用思考段,还可以把<|end_thinking|>也加进去,写成两行PARAMETER stop。注意,不要在原始模型上改,一定要通过ollama create生成新 tag,因为ollama run qwen3:8b永远使用模型自带的模板。
4.4 私有化部署选型:看显存、看量化,也要看上下文长度
最后说选型。本地部署私有大模型,最硬性的约束是显存,其次是内存带宽。下面这张表是我在实际环境里跑过的经验值:
| 显存 | 可跑模型 | 建议量化 | 上下文建议 |
|---|---|---|---|
| 8GB | qwen2.5:7b / qwen3:4b | q4_k_m | 4K 左右 |
| 16GB | qwen2.5:14b | q4_k_m | 8K 左右 |
| 24GB | qwen3:14b | q8_0 | 8K 起步 |
| 32GB+ | qwen3:32b | q4_k_m 或 q8_0 | 16K 视情况 |
上下文长度是很多人忽略的隐性成本。Ollama 默认上下文长度跟着模型自身设定走,但你可以用OLLAMA_CONTEXT_LENGTH或者 Modelfile 里的PARAMETER num_ctx调整。把上下文从 4K 拉到 32K,KV cache 会多占几个 G 显存,原来能跑的模型规模就要往下降。判断方式是先ollama show看模型参数,再跑一次ollama run实测首 token 延迟。我的原则是:优先保证推理速度,再谈上下文大小,不要一上来就把参数拉满。
5. 避坑手册:ollama 安装、下载、接入里的真实翻车记录
5.1 装了但终端里敲ollama报“不是内部或外部命令”
现象:Windows 安装器跑完,新开终端执行ollama --version,提示命令不存在。
原因:安装器没有把%LOCALAPPDATA%\Programs\Ollama写进当前会话的 PATH,或者你手动解压了 zip 包但没有添加路径。
解决:手动执行一次$env:Path += ";$env:LOCALAPPDATA\Programs\Ollama"可以临时验证;想永久解决,用“系统属性 -> 环境变量”把%LOCALAPPDATA%\Programs\Ollama追加进 PATH。Linux 下如果是 tar 解压而不是 dpkg 安装,常见原因同样是/usr/local/bin不在 PATH 里。
5.2ollama pull卡在pulling manifest或下载到一半不动
现象:下载进度停在 57% 之类的位置,等待很久不动,或者直接报temporary failure in name resolution。
原因:默认 registry 在你的网络环境下不通畅,这并不代表软件装坏了。pulling manifest是 Ollama 在请求 model 元数据,这个域名不通就永远卡在这一步。
解决:先curl -I https://registry.ollama.ai确认连通性。如果通但很慢,换一个网络环境再试一次。如果确实连不上,按 3.3 节的思路从 ModelScope 这类国内直连的源下载 GGUF,然后用ollama create导入。不要在同一网络里反复重试,浪费时间影响士气。
5.3 重启电脑后 Ollama 服务还在,但ollama run报模型找不到
现象:重启后ollama list能看到模型名,但ollama run qwen3:8b直接报model not found或者文件路径错误。
原因:OLLAMA_MODELS指向了某个旧目录,后台服务启动时读取的路径,和你终端里看到的不一致。
解决:先把托盘程序完全退出,然后确认环境变量指向的路径下确实有manifests和blobs。更直接的办法是用ollama serve在前台启动,看它打出的日志里写的models-dir是哪个路径,和实际路径对照。这个操作能一锤定音,很多环境变量“看起来改了”的玄学问题都靠它暴露。
5.4 AnythingLLM 连不上 Ollama,报 connection refused
现象:AnythingLLM 配置页面测试连接失败,报connection refused或base url not reachable。
原因:桌面版和 Docker 版对localhost的语义不同;再一种可能是 Ollama 的OLLAMA_HOST被改过,端口不是 11434。
解决:桌面版先确认curl http://localhost:11434/api/tags能返回 JSON,能返回说明 Ollama 正常,问题在 AnythingLLM 填错;Docker 版把地址换成http://host.docker.internal:11434。如果 Ollama 改了监听端口,AnythingLLM 里的 Base URL 要同步改。
5.5 搬目录后 D 盘出现两份模型,路径看着对但服务还在写 C 盘
现象:把.ollama搬到 D 盘后,检查 D 盘确实有 manifests,但 C 盘又增加了几百 MB,服务仍在往 C 盘写。
原因:OLLAMA_MODELS设置成了D:\ollama\models,而 Ollama 期望的数据根目录是D:\ollama\.ollama。路径层级错了一级,等于没改。
解决:把变量修正为OLLAMA_MODELS=D:\ollama\.ollama,重启服务,然后清理 C 盘原来的.ollama目录。这个坑我反复踩过,所以我现在每次搬迁完都会跑一遍“目录树 +ollama list”双重确认,不再凭感觉判断。
6. 最后一个技巧:装完先做一套“三连验证”,再去谈部署完成
很多初学者装完 Ollama,看到托盘图标就以为大功告成,结果第二天一调用就卡壳。我的习惯是,无论装哪台机器,装完立刻做一套三连验证,花三分钟,省掉后面一整天。
第一步验证二进制。执行ollama --version,能返回版本号说明程序本体和环境变量都正常。第二步验证服务。执行curl http://127.0.0.1:11434/api/tags,能返回 JSON 说明 API 服务已经起来了,返回里能看到本地模型列表。第三步验证真实推理,用 curl 调一次/api/generate:
curl -s http://127.0.0.1:11434/api/generate -d '{ "model": "qwen3:8b", "prompt": "你好,用一句话说明你是谁", "stream": false }'逻辑说明:stream: false表示等模型把完整回答生成完再一次性返回,这样你能看到response字段和total_duration两个关键值。total_duration是模型从接收到生成完毕的总耗时,如果这个值异常大,多半是模型在 CPU 上跑或者上下文设置过长。参数说明:model字段必须和ollama list里的 tag 完全一致,写错会直接报错。
三连验证通过后,我还会多做一件事:把进程、端口、模型目录三个状态写进一个.env文件,下次部署时直接 source 这份配置。这样到了新机器,只要确认路径、执行ollama serve、拉一次日志,整个启动过程就可控了。
从那以后,我每次重装 Ollama 都会强制走一遍“查二进制、curl API、跑一次生成”这三步,最后才敢说部署完成。这篇笔记如果能帮你在本地把 ollama 安装、模型下载和路径管理这一套走通,少撞几回我撞过的墙,那这份资源就没白拆。希望帮到你。
本文还有配套的精品资源,点击获取