Ollama 大模型私有化部署与彻底卸载指南(Windows/Linux)

我写这篇笔记的起因很朴素:C 盘被模型文件吃掉快 60G,想清理的时候才发现,"卸载 Ollama"这件事压根没有想象中那么简单。

在设置里点了卸载,回头敲一句 ollama list,模型还在。手动删了模型目录,手一抖又执行了 ollama serve,服务居然还能起来。折腾半天才想明白,Ollama 不是那种"装在一个文件夹里、删了就没"的软件,它在系统里散着好几层东西,任何一层没清干净,你都会怀疑自己是不是卸载失败了。

下面是我自己走了一遍的完整流程,Windows、Linux 都覆盖到了,最后再讲重装以后最该先做的一件事。

一、动手之前,先看清 Ollama 留了几摊东西

很多人卸载翻车,是从第一步就删错了地方。Ollama 的安装实际上分成了四块,弄清楚这四块,后面每一步清理才有意义。

程序本体 。Windows 上是安装包装出来的程序目录,Linux 上是 /usr/local/bin/ollama 这么一个二进制文件。它是真正跑推理的服务端,启动后在本机监听 127.0.0.1:11434。

命令行工具和 PATH 。Windows 安装包会顺手把 Ollama 的路径写进环境变量。程序本体即使删了,PATH 里那条指向还在,你在终端敲 ollama 照样有反应,只不过是个报错的"死命令"。不了解这一层的人,常常误以为卸载失败。

后台服务。Windows 靠托盘程序和开机启动项,Linux 走 systemd。服务没停,进程就在,文件句柄还被占着。

模型仓库和缓存。这是占空间的大头,默认位置有两个:

  • Windows:C:\Users<你的用户名>.ollama\models
  • Linux 用官方脚本安装时:/usr/share/ollama/.ollama/models

这个目录下面分 blobs 和 manifests 两层。blobs 里是哈希命名的分片文件,模型的实际数据都在这里;manifests 存的是索引信息,体积很小。所以千万别跑到 blobs 里按模型名找文件,磁盘上根本看不出对应关系,很容易误删别的模型。

如果你之前用环境变量 OLLAMA_MODELS 把模型挪过位置,那上面的默认路径就不作数了,得按你设过的路径来。顺手看一眼当前到底用了哪个目录,不亏。

二、各平台彻底卸载

原则是先停服务、再删模型、然后卸程序、最后清残留,顺序别颠倒。

Windows

先退掉托盘里的 Ollama,再用任务管理器确认没有 ollama.exe 残留进程。剩下的步骤:

  1. 在"设置 → 应用 → 已安装的应用"里找到 Ollama,点卸载;用 winget 装的也可以直接 winget uninstall Ollama.Ollama。
  2. 删掉模型目录:C:\Users<你的用户名>.ollama。顺手看一眼 %LOCALAPPDATA%\Ollama,有些版本会把日志和运行时文件放这儿,程序本体默认装在 %LOCALAPPDATA%\Programs\Ollama,卸载器失效时应手动检查,一并清掉。
  3. 打开"环境变量"窗口,检查有没有 Ollama 相关的条目(比如你之前加过的 OLLAMA_MODELS、OLLAMA_HOST),不需要就删掉,免得下次重装读到旧配置。
  4. 新开一个终端敲 ollama --version,提示命令不存在,才算清干净。

Linux

用官方脚本安装的情况,按顺序执行:

bash 复制代码
# 停服务并取消开机自启
sudo systemctl stop ollama
sudo systemctl disable ollama
​
# 删除服务定义文件
sudo rm /etc/systemd/system/ollama.service
sudo systemctl daemon-reload
​
# 删除二进制文件(位置可能是 /usr/local/bin 或 /usr/bin)
sudo rm $(which ollama)
​
# 删除模型和 Ollama 专用用户、用户组
sudo rm -r /usr/share/ollama
sudo userdel ollama
sudo groupdel ollama
​
# 如果你不是用官方脚本安装,而是以普通用户身份直接运行 Ollama,模型可能在 ~/.ollama/models
rm -rf ~/.ollama

Docker

如果你是通过容器跑的,就简单得多:

bash 复制代码
docker stop ollama
docker rm ollama
docker image rm ollama/ollama
# 如果建过命名卷,一并删掉
docker volume rm ollama

三、重新部署

环境清干净了,接着装。装之前先算一笔硬件的账,免得模型一下载就卡在"能不能跑得动"上。

装之前先看清硬件

模型大小和你的内存、显存直接挂钩。往大了选不是勇气,是折磨:

模型规模 大致文件大小 建议配置 适合的场景
1B~2B 1~2 GB 8 GB 内存,无独显也能跑 验证安装、轻量问答
7B~8B 4~5 GB 16 GB 内存,有 8 GB 显存更顺 日常问答、文档处理、写代码
13B~14B 8~9 GB 12~16 GB 及以上显存 复杂推理、长文本生成
30B~70B 17~40 GB(随规模与量化等级浮动) 专业显卡 + 32 GB 以上内存 少数高精度场景

普通笔记本上先拿 7B 级别的中文模型练手,跑顺了再往上加。

安装(Windows / Linux)

  • Windows :官网下 OllamaSetup.exe,双击一路 Install,装完托盘会出现小羊驼图标。也可以在 PowerShell 里跑 irm https://ollama.com/install.ps1 | iex。
  • Linux:一行脚本搞定,它会自动注册 systemd 服务:
arduino 复制代码
curl -fsSL https://ollama.com/install.sh | sh

装完在终端执行 ollama --version,能打印出版本号就说明服务已经就位。

yaml 复制代码
ollama --version
ollama version is 0.5.4
​
systemctl status ollama
​
● ollama.service - Ollama Service
   Loaded: loaded (/etc/systemd/system/ollama.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2026-10-31 14:01:29 CST; 31min ago
 Main PID: 1551 (ollama)
    Tasks: 9
   Memory: 4.4G
   CGroup: /system.slice/ollama.service
           └─1551 /usr/local/bin/ollama serve
​
Oct 31 14:05:54 dockerRegistry ollama[1551]: llm_load_print_meta: FIM REP token    = 151663 '<|repo_name|>'
Oct 31 14:05:54 dockerRegistry ollama[1551]: llm_load_print_meta: FIM SEP token    = 151664 '<|file_sep|>'
........

重装后的第一件事:先把模型位置钉死

这一步很多人跳过,然后过两周又被 C 盘塞满。Ollama 的模型路径完全由环境变量 OLLAMA_MODELS 决定,服务启动那一刻读一次。所以别再等下载完才想着迁移,装完立刻设。

先建一个不含中文和空格的目录,比如 D:\ollama\models,然后:

  • Windows:在"环境变量"里新建 OLLAMA_MODELS,值填目标目录;之后彻底退出 Ollama 再启动,甚至注销重登一次,确保后台进程读到新值。
  • Linux:在 ~/.zshrc 或 ~/.bashrc 里加 export OLLAMA_MODELS=~/ollama/models。如果你用的是 systemd 服务,光在 shell 里 export 没用,得改服务配置里的 Environment 项:
bash 复制代码
sudo systemctl edit ollama.service
# 在 [Service] 段落下加一行:
# Environment="OLLAMA_MODELS=/mnt/data/ollama/models"
​
sudo systemctl daemon-reload    # 非必需
sudo systemctl restart ollama

想确认改成了没,敲 ollama list 看模型列表,路径改对后 ollama list 应该是空的,这是正常的,重新 pull 即可;若仍能看到旧模型,说明服务还在用旧路径。或者直接去目标目录看有没有生成 blobs、manifests 两层结构。

拉第一个模型

选个轻快的起步,比如:

arduino 复制代码
ollama run deepseek-r1:7b
​
# 量机型可换 deepseek-r1:1.5b

第一次执行会自动下载,下完直接进对话界面。只想下载不想马上聊,用 ollama pull deepseek-r1:7b。想退出对话,输入 /exit。

想验证接口通不通,可以用一条 curl:

swift 复制代码
curl http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1:7b",
  "prompt": "用一句话解释什么是递归",
  "stream": false
}'
​
{"model":"deepseek-r1:7b","created_at":"2026-10-31T07:32:42.178431852Z","response":"<think>嗯,我现在要理解一下什么是递归。首先,我看到"递归"这个词由"递"和"归"组成。字面意思可能是指逐步回来的意思吧?那在编程里面,递归应该是什么样的呢?......<think>\n\n递归是程序中一种函数或过程调用自身的方式,用于解决可分解为相似子问题的问题。它通过将问题逐步缩小规模,直到达到基本情况(终止条件),再逐步返回结果,从而避免重复计算并提高代码的可读性。","done":true,"done_reason":"stop","context":[151644,....,1773],"total_duration":157202417280,"load_duration":3168462007,"prompt_eval_count":9,"prompt_eval_duration":1761000000,"eval_count":586,"eval_duration":152237000000}
​
# 注意 response 里 <think> 段是 R1 这类推理模型的思考过程,属于正常输出,最终答案在它之后。

能正常返回 JSON,就说明本地服务完全可用,接下来各类支持 OpenAI 兼容接口的客户端、编辑器插件都能接上来了。

四、几个值得提前知道的环境变量

Ollama 没有独立的配置文件,所有关键设置都走环境变量,改完重启服务才生效。除了 OLLAMA_MODELS,还有几个会经常用到:

  • OLLAMA_HOST:监听地址,默认只对本机开放。想让局域网其他设备调用,设成 0.0.0.0:11434;想换端口,也在这里带上,比如 0.0.0.0:8080。
  • OLLAMA_ORIGINS:浏览器端跨域调用时用来放开来源,测试阶段可以设成 *。
  • OLLAMA_KEEP_ALIVE:模型加载后驻留内存的时间,默认 5 分钟。频繁用的话调大些,比如 24h,能省掉反复加载的等待。
  • OLLAMA_MAX_LOADED_MODELS 和 OLLAMA_NUM_PARALLEL:同时加载的模型数、并发请求数,机器内存充足时可以适当放开。

五、几个常见的坑

  • 改完变量没生效。基本都是忘了重启服务。环境变量在进程启动时读一次,之后改系统变量不影响已经跑着的进程。
  • 下载模型卡住或者超时 。先确认服务在运行、网络通;实在慢的话,换个时间段,或通过 HTTPS_PROXY 走代理加速(注意不要设 HTTP_PROXY,官方 FAQ 明确提示它可能中断客户端连接)。Ollama 没有"镜像加速变量"这类东西,别去找不存在的开关。
  • Linux 上 export 了变量但服务还是用旧路径 。因为服务不是从你的 shell 启动的,必须在 systemd 的 Environment 里改。
  • 删了模型空间没回来。检查是不是有两份模型目录------旧路径和新路径各存了一份,迁移时复制完忘了删旧的。

整个流程走下来,其实就两件事:卸载时记住 Ollama 有四层残留,别只删程序;重装时先把模型位置定好,别等 C 盘报警才想起迁移。环境干净了,后面不管是接本地知识库、写 Agent,还是纯离线聊天,都会省心很多。

相关推荐
清如许.1 小时前
如何评估 AI 智能体(AI Agent)?指标、方法与最佳实践
人工智能
猪八宅百炼成仙1 小时前
让 AI 帮你清理电脑而不翻车:一个 Windows 体检调优 Skill 的工程化设计
人工智能·windows
宋艳_AI应用开发1 小时前
五个阶段跑完,它交了一份日期错两年的投资报告——深思熟虑的Agent最危险的地方,是想得太像
人工智能
用户1357153998191 小时前
凌晨三点,第 4 个反编译窗口
人工智能
Flynn Liang1 小时前
RAG 答非所问/幻觉怎么破?Spring AI QuestionAnswerAdvisor 召回优化实战(TopK/重排/混合检索)
人工智能·算法·spring·rag·幻觉·springai
海海不掉头发1 小时前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
财迅通Ai2 小时前
远信储能(9621.HK)招股开启,AI+储能跑出新范式
大数据·人工智能·远信储能
老金带你玩AI2 小时前
一人公司,单月收入近10万,我做了这三门生意(OPC系列-3)
人工智能
水如烟2 小时前
孤能子视角:AI不是“东西”,是认知库重整理交互系统——从李飞飞“不知道AGI和AI的区别在哪里”说起:知识增量与应用增量是两个判据层
人工智能