公司内网服务器、隔离网段的测试机、不出外网的工控机——这些机器上装 Ollama,会卡在两道门外:安装器要连官网下载,模型要从 registry.ollama.ai 拉取,断了外网两条路都走不通。这篇给出完整的离线方案:联网机备料、传输、离线安装,再用 Modelfile 把本地 GGUF 文件收编成 Ollama 模型,全程目标机不访问任何外部地址。
解决什么问题
Ollama 的默认工作流处处依赖网络:安装时下载安装器,使用时 ollama pull 从官方模型库拉权重。离线环境需要把这些依赖一次性解开:
- 程序离线装:在联网机下载安装包,U 盘或内网通道传到目标机安装;
- 模型离线导:把 GGUF 权重文件传进去,用 Modelfile 的 FROM 指向本地文件执行导入;
- 批量迁移:如果联网机上已有一台装满模型的 Ollama,可以直接打包模型目录整体搬运,不必逐个重新导入。
模型在磁盘上到底存在哪、目录里都有什么,Ollama 模型存在哪:路径查看与迁移有完整说明。这里只借用结论:模型本体是 blobs 目录里按内容哈希命名的文件,模型名到文件的指向关系存在 manifests 里——理解这一点,迁移时才知道哪些东西一个都不能少。
环境与版本
- 联网机:任意能访问 ollama.com、Hugging Face 或 ModelScope 的电脑,系统不限;
- 目标机:Windows 10/11 64 位、macOS 或主流 Linux 发行版;内存 8GB 起步(跑 7B 级模型的安全线),磁盘按模型体积留足——7B 的 Q4 量化模型权重约 4.5GB,14B 约 9GB,再留一倍余量给上下文缓存;
- 传输介质:8GB 以上的 U 盘或移动硬盘。注意 FAT32 有单文件 4GB 上限,而 7B 级模型就有 4.5GB 左右,建议 exFAT 或 NTFS;内网可达时用 scp 或共享目录更省事;
- Ollama 安装包与 GGUF 文件的具体版本与体积【待补:联网机实际下载的版本号与文件大小】。
分步骤
第一步:联网机备齐安装包
按目标机系统从 Ollama 官网下载对应安装包:Windows 是安装程序(exe),macOS 是官网提供的压缩包,Linux 是 GitHub 发布页提供的 tgz 压缩包。全部放进同一目录,顺手记录文件大小。
如果目标机以后还要重装或升级,安装包归档保留——这正是Ollama 安装部署教程:全平台安装与国内加速里”下载一次、到处安装”的思路,离线场景只是把它做到极致。
# 联网机:下载后校验完整性(可选但建议,尤其文件要经多手传输时)
# Linux / macOS
sha256sum OllamaSetup.exe
# Windows(PowerShell)
Get-FileHash .\OllamaSetup.exe -Algorithm SHA256
第二步:传输并离线安装
把安装包拷到目标机执行安装。Windows 双击安装程序即可,装完任务栏出现羊驼图标;macOS 解压后把 App 拖进应用程序目录。安装过程本身不需要联网。
Linux 稍麻烦一点,tgz 解压后需要自己配服务(没有安装脚本代劳):
# 目标机(Linux):解压官方 tgz 到系统目录
sudo tar -xzf ollama-linux-*.tgz -C /usr/local
# 【待补:以压缩包内实际目录结构为准,必要时调整解压层级】
ollama --version # 能打印版本号即安装成功
# 先前台跑通再配服务
ollama serve
# 验证通过后建 systemd 服务(/etc/systemd/system/ollama.service,精简版)
# [Unit]
# Description=Ollama Service
# After=network-online.target
# [Service]
# ExecStart=/usr/local/bin/ollama serve
# Restart=always
# [Install]
# WantedBy=default.target
sudo systemctl daemon-reload && sudo systemctl enable --now ollama
第三步:联网机下载 GGUF 模型文件
GGUF 是 llama.cpp 生态的模型格式,Ollama 底层跑的就是它。常见来源两个:Hugging Face 模型页的 GGUF 文件(部分仓库有专门的 GGUF 分支),以及对国内直连更友好的 ModelScope。下载时盯三个信息:
- 参数量:决定内存/显存需求,8GB 内存机器选 7B~8B 档;
- 量化档位:Q4_K_M 是 Ollama 官方库的默认档,体积与质量最均衡;
- 完整性:下载完算一次 SHA256,与发布页核对。
# 联网机:校验模型文件
sha256sum qwen3-8b-q4_k_m.gguf
# 【待补:实际下载渠道、文件体积与校验值】
第四步:写 Modelfile 并执行导入(核心步骤)
在目标机上给 GGUF 配一个最小 Modelfile,FROM 直接指向本地文件路径——这就是离线导入的核心机制:不走 registry,直接把本地权重收编为 Ollama 模型。
# Modelfile(与 GGUF 文件放在同一目录)
FROM ./qwen3-8b-q4_k_m.gguf
PARAMETER num_ctx 8192
PARAMETER temperature 0.7
两点说明:不写 TEMPLATE 时,Ollama 会读取 GGUF 内置的对话模板元数据,主流模型开箱即用,如果对话格式错乱再从模型发布页补模板;上下文长度默认值不大,长文本场景像上面这样显式写 num_ctx,原理见Ollama 上下文长度设置:num_ctx 调优。想加系统提示词、调采样参数,看Ollama Modelfile 自定义模型。
# 目标机:执行导入(-f 指向 Modelfile,末尾是起的模型名)
ollama create qwen3-8b-offline -f Modelfile
# 导入完成后验证
ollama list
ollama show qwen3-8b-offline
ollama run qwen3-8b-offline "用一句话自我介绍"
ollama create 会把 GGUF 收进 blobs 目录并生成对应的 manifest,之后这个模型与在线拉取的模型待遇完全一致:能 ollama run、能出 API、能被 Open WebUI 之类的前端调用。
第五步(可选):整目录迁移,批量搬全部模型
如果联网机上本来就有一台装满模型的 Ollama,可以跳过逐个导入,直接打包模型目录:
# 联网机(Linux 示例):打包整个模型库
tar -czf ollama-models.tgz -C ~/.ollama models
# 目标机:还原到对应位置,重启 Ollama
tar -xzf ollama-models.tgz -C ~/.ollama
sudo systemctl restart ollama # Windows/macOS 重启托盘程序或 App
ollama list # 模型名应原样出现
关键在于 blobs 与 manifests 两个目录必须成对搬运:manifests 记录模型名到 blobs 的指向,少了它文件都在但 ollama list 是空的。Windows 上的目录在 C:\Users\<用户名>\.ollama\models,路径细节与迁移注意事项见Ollama 模型存在哪:路径查看与迁移。
常见坑
坑一:FROM 路径写错,导入失败。 FROM 支持相对路径(相对执行命令时所在的目录)和绝对路径,但路径里带中文、空格或写错盘符都会失败。建议把 GGUF 和 Modelfile 放进同一个纯英文目录,用 ./文件名.gguf 的写法,先 cd 进去再执行 ollama create。
坑二:U 盘 FAT32 装不下大文件。 FAT32 单文件上限 4GB,拷 4.5GB 的模型会报”文件过大”。换 exFAT/NTFS 格式化,或用分卷压缩传输,目标机解压后校验 SHA256 确认无损。
坑三:GGUF 架构不受支持。 GGUF 文件头记录了模型架构,Ollama 只支持其中一部分(llama、qwen、gemma 等主流家族都有支持,冷门架构不一定)。新架构模型配老版本 Ollama 会导入报错,遇到时先升级 Ollama 再试【待补:实际遇到的报错原文】。
坑四:整目录迁移丢了 manifests。 只拷 blobs 不拷 manifests,ollama list 显示为空,模型”文件在但名不在”。同理,只拷 manifests 不拷 blobs 则直接报文件缺失。两个目录永远成对出现、成对搬运。
最终效果
目标机全程无外网:ollama list 能看到导入的模型,ollama run 正常对话,断网重启后照常可用,对外 API 行为与在线安装的机器毫无差别。以 7B 级 Q4 模型为例,8GB 内存的机器可以流畅运行,导入一次永久有效。

之后加新模型就重复第三、四步;换机器或整机报废,第五步整目录打包一次带走。模型库逐渐变大后,磁盘占用怎么查、哪些能删,Ollama 模型存在哪:路径查看与迁移里同样有答案。
相关阅读
- Ollama 安装部署教程:全平台安装与国内加速——在线安装与镜像加速的完整方案
- Ollama 模型存在哪:路径查看与迁移——blobs、manifests 与跨盘迁移
- Ollama Modelfile 自定义模型——FROM 之外的参数、模板与系统提示词
- Ollama 下载慢:国内镜像与代理加速——有网但拉取慢的场景看这篇