Ubuntu 24.04 离线部署 Ollama 及模型导入实战指南
随着本地大语言模型(LLM)的兴起,Ollama 成为了在本地运行和管理 LLM(如 Llama 3、Qwen3、Deepseek 等)的热门工具。然而,Ollama 官方的 Linux 安装方法仅提供在线一键安装脚本:
curl -fsSL https://ollama.com/install.sh | sh
这种方式在无网络环境或网络受限/速度极慢的服务器上使用非常不便,尤其是在国内访问时下载速度常常只有几 KB/s,甚至超时失败。
本文将详细介绍如何在 Ubuntu 24.04 系统上离线安装最新版 Ollama 并导入 Windows 下载的模型,同时提供加速下载思路,帮助你在内网、隔离环境或低带宽场景下顺利完成部署。
一、问题背景
1. 官方安装方式的局限性
- 依赖
curl和外部网络。 - 下载源位于海外,国内访问速度极慢。
- 无法在离线服务器、内网环境或安全审计严格的系统中使用。
2. 目标环境
- 操作系统:Ubuntu 24.04 LTS
- 网络状态:完全离线(无互联网连接)
- 目标软件:Ollama 最新版(
ollama-linux-amd64)
二、解决方案思路
- 在有网络的机器上通过第三方工具加速下载 Ollama 二进制包。
- 将下载的压缩包通过 U 盘、光盘或内网传输到目标 Ubuntu 服务器。
- 手动解压并配置为系统服务(systemd),实现开机自启。
三、详细操作步骤
步骤 1:获取 Ollama 离线安装包
从 Ollama 官方下载页面获取直接链接:
https://ollama.com/download/ollama-linux-amd64.tgz
⚠️ 注意:该链接始终指向最新版本的 Linux AMD64 架构二进制包。
步骤 2:使用下载工具加速
由于官方链接直连速度可能较慢,建议使用支持多线程下载的工具(如迅雷)进行加速:
- 打开下载客户端。
- 新建下载任务,粘贴上述链接。
- 下载完成后,文件名为
ollama-linux-amd64.tgz。
步骤 3:将安装包传输到目标服务器
使用 U 盘、光盘或内网文件共享等方式,将 ollama-linux-amd64.tgz 文件拷贝到目标 Ubuntu 24.04 服务器的 /opt 目录下:
cd /opt
ls -l
# 输出应类似:
# -rw-r--r-- 1 root root 123456789 Jan 1 00:00 ollama-linux-amd64.tgz
步骤 4:解压并安装 Ollama
将 Ollama 二进制文件解压到 /usr 目录(标准系统路径):
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
验证是否安装成功:
/usr/bin/ollama -v
# 正常输出类似:ollama version is 0.11.4
此时你已经可以运行 ollama 命令,但建议配置为系统服务以便后台运行和开机自启。
步骤 5:创建 Ollama 用户和用户组
为安全起见,Ollama 应以专用用户身份运行,避免使用 root。
# 创建 ollama 用户和组
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
# 将当前用户加入 ollama 组(便于后续调用)
sudo usermod -a -G ollama $(whoami)
📌 说明:
-r:创建系统用户-s /bin/false:禁止登录-U -m -d /usr/share/ollama:创建同名组并设置家目录
步骤 6:配置 systemd 服务
创建服务文件:
sudo nano /etc/systemd/system/ollama.service
粘贴以下内容:
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=$PATH"
[Install]
WantedBy=multi-user.target
✅ 关键参数说明:
ExecStart:启动命令User/Group:以 ollama 用户运行Restart=always:崩溃后自动重启After=network-online.target:确保网络就绪后再启动
步骤 7:启动并启用 Ollama 服务
# 重载 systemd 配置
sudo systemctl daemon-reload
# 启用开机自启
sudo systemctl enable ollama
# 启动服务
sudo systemctl start ollama
# 查看服务状态
sudo systemctl status ollama
正常输出应包含:
● ollama.service - Ollama Service
Loaded: loaded (/etc/systemd/system/ollama.service; enabled; vendor preset: enabled)
Active: active (running) since ...
步骤 8:验证 Ollama 是否正常运行
# 查看日志
sudo journalctl -u ollama -f
如果看到 ollama serve 启动成功日志,说明安装完成。
四、常见问题与解决方案
Q1:systemctl start ollama 失败,提示权限错误?
- 检查:
/usr/bin/ollama是否有执行权限
修复:
sudo chmod a+x /usr/bin/ollama
Q2:日志中出现 cannot create directory /usr/share/ollama/.ollama?
- 原因:ollama 用户家目录权限问题
修复:
sudo chown -R ollama:ollama /usr/share/ollama
sudo chmod 755 /usr/share/ollama
Q3:离线环境如何下载模型?
可在有网机器使用 ollama pull model-name 下载模型,导出模型的 modelfile 文件。
通过离线介质把模型和 modelfile 文件传输到 ubuntu 服务器同一个目录下后,使用命令把文件重命名为 .gguf 格式(示例):
mv sha256-e8ad13eff07a78d89926e9e8b882317d082ef5bf9768ad7b50fcdbbcd63748de gemma3-12b.gguf
查看导出的 modelfile 文件,里面有示例模型的路径和文件名称。如笔者在个人 windows 主机下载模型后,使用下面命令:
ollama show gemma3:12b --modelfile >> modelfile
然后使用命令 ollama create gemma3:12b -f modelfile 导入模型。
因为 windows 导出的 modelfile 文件中的路径是与 Linux 有区别,需要修改一下路径部分,确保指向正确的 .gguf 文件位置。
五、总结
本文提供了一套完整的 Ubuntu 24.04 离线安装 Ollama 和导入模型的解决方案,核心要点如下:
- 绕过官方在线脚本限制,实现离线部署
- 使用下载工具加速,解决国内网络慢问题
- 解决了 Windows 与 Linux 之间模型文件的迁移与路径适配问题
该方法适用于所有无法联网的 Linux 服务器环境,特别适合企业内网、科研实验室、边缘计算等场景。
六、后续建议
- 配置防火墙开放
11434端口(Ollama API 端口),便于远程调用。 - 使用
nginx反向代理 + HTTPS 提升安全性。 - 探索
Ollama + Open WebUI搭建本地 AI 助手界面。
参考链接:
