Ollama 安装与配置记录
Ollama 安装与配置记录(Docker 环境实测,autoDL 中)
本文档记录在 autoDL Ubuntu 22.04 / x86_64 / root、网络访问 GitHub 与部分代理不理想的情况下,最终通过 ModelScope 完成 Ollama 安装的全过程,便于复现与排错。
1. 环境信息
| 项目 | 值 |
|---|---|
| 操作系统 | Ubuntu 22.04.5 LTS(jammy) |
| 架构 | x86_64(Ollama 官方脚本对应 amd64) |
| 用户 | root |
| Shell / 路径 | /root/autodl-tmp(工作目录) |
| GPU(实测) | NVIDIA GeForce RTX 4090,nvidia-smi 可用 |
| 已有 Python 环境 | Miniconda 位于 /root/miniconda3 |
2. 目标
在 直连 ollama.com 或大文件下载易卡住 / 超时 的前提下,选择合适的国内可达源安装 Ollama,并验证服务可用。
3. 安装前遇到的问题
3.1 已存在但不完整的 ollama 二进制
- 现象:执行
ollama version(或等价命令)出现 Segmentation fault。 - 原因:
/usr/local/bin/ollama体积约 2MB,file显示 ELF 不完整,提示 missing section headers,疑似 下载中途截断 或拷贝损坏。 - 处理:安装前删除坏文件及相关目录:
rm -f /usr/local/bin/ollama
rm -rf /usr/local/lib/ollama
systemctl stop ollama 2>/dev/null || true
3.2 官方脚本与 GitHub Release 在本机不可靠
以下为当时 探测性命令(用于判断网络行为,不必逐条在生产环境重复):
# 架构 / 发行版
uname -m
cat /etc/os-release | head -5
# GitHub Latest 最终会 302 到带版本号的资产 URL(示例为当时探测到的跳转)
curl -sI -m 20 -L "https://github.com/ollama/ollama/releases/latest/download/ollama-linux-amd64.tgz" | head -8
本环境实测:
mirror.ghproxy.com:连接超时ghproxy.net:对 Latest 资产请求返回 403- 直连 GitHub:大文件在短时间内 仅能收到少量字节便超时,不适合稳定完成 ~1GB+ 的包体下载
因此 未采用「官方install.sh+ sed 替换下载基址」作为最终方案。
3.3 zstd 与 PATH 的隐患
新版本 Linux 发行包多为 ollama-linux-amd64.tar.zst(zstd 压缩)。本机 /bin/zstd(系统)可用;但默认 PATH 中若 /root/miniconda3/bin 居前,可能出现 conda 自带的 zstd 与其它工具混入解压流程的情况。
处理原则:在安装、解压阶段显式将系统路径前置,例如:
export PATH="/usr/bin:/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin"
4. 最终方案:ModelScope 上的 modelscope/ollama-linux
该模型仓库提供:
ollama-linux-amd64.tar.zst(大归档)ollama-modelscope-install.sh(安装脚本)
来源页面(自行在浏览器确认最新说明):
ModelScope:modelscope/ollama-linux
5. 安装步骤(可复制执行顺序)
5.1 安装 ModelScope CLI(本机使用 Miniconda 的 pip)
系统未提供全局 pip 时,使用已有 Miniconda:
/root/miniconda3/bin/pip install -q modelscope
5.2 下载 Ollama Linux 包到本地目录
mkdir -p /root/autodl-tmp/ollama-linux
/root/miniconda3/bin/modelscope download \
--model=modelscope/ollama-linux \
--local_dir /root/autodl-tmp/ollama-linux
说明:
- 下载体积约 1.66GB(以进度条显示为准),耗时取决于带宽。
- 完成后目录中应包含:
ollama-linux-amd64.tar.zst、ollama-modelscope-install.sh、README.md等。
5.3 执行安装脚本(root)
export PATH="/usr/bin:/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin"
cd /root/autodl-tmp/ollama-linux
chmod +x ./ollama-modelscope-install.sh
sh ./ollama-modelscope-install.sh
脚本主要行为(摘要):
- 将内容安装到
/usr/local体系下(与官方 Linux 安装布局一致思路) - 若存在
ollama-linux-amd64.tar.zst,使用tar -I zstd -xf ...解压展开 - 若系统存在
systemctl,会尝试写入/etc/systemd/system/ollama.service并做用户/组配置(见下文「systemd 限制」)
5.4 验证 GPU 驱动(安装脚本会依赖此结果分支)
nvidia-smi | head -20
本环境在运行安装脚本时 已能 nvidia-smi,因此脚本在 NVIDIA 分支 不会再去装 CUDA 驱动(避免在已有驱动的训练镜像上重复操作)。
6. 安装后配置与运行方式
6.1 版本与可执行文件位置
/usr/local/bin/ollama --version
本环境结果:客户端报告 0.17.5(以 ModelScope 当前同步包为准;通常 低于 GitHub 最新 Release)。
说明:部分文档使用
ollama version子命令;若当前版本不支持,请使用ollama --version。
6.2 systemd 在本环境不可用(容器常见)
systemctl is-system-running
本环境结果:offline(systemd 未作为 PID 1 正常运行)。
影响:
- 不要依赖
systemctl enable/start ollama作为唯一启动方式。 - 需使用 手动前台 或 后台进程 启动服务,例如:
export PATH="/usr/local/bin:/usr/bin:/bin:$PATH"
ollama serve
默认监听(日志中可见):http://127.0.0.1:11434
6.3 API 冒烟测试(可选)
在一个终端启动服务后,另开终端:
curl -sS http://127.0.0.1:11434/api/version
本环境成功示例返回(JSON):{"version":"0.17.5"}
测试结束后如需要结束服务,可按进程管理习惯 pkill 或在前台 Ctrl+C(仅作开发机测试时使用)。
6.4 模型存储位置(默认)
日志中可见环境变量示例:
OLLAMA_MODELS=/root/.ollama/models
拉取模型前请保证磁盘空间充足。
6.5 拉取 / 运行模型(常规用法)
# 需先 ollama serve 在运行
ollama pull <模型名>
ollama run <模型名>
若 pull 仍慢,属于 Registry / 模型仓库 访问问题,与「二进制安装源」是不同层面;需另行配置镜像或代理(此处未展开,以免与本次安装记录混淆)。
7. 问题与对策汇总
| 问题 | 表现 | 对策 |
|---|---|---|
| 官方一键装/VPN 外下载卡住 | install.sh 拉取 ollama.com/download 或跳转 GitHub 资产极慢、超时 |
改用 ModelScope 提供的 ollama-linux 大包 + 安装脚本 |
| ghproxy 类服务不可用 | 连接超时或 403 | 更换其它镜像源或放弃该路径;本机最终未用 ghproxy 成功落盘 |
| 旧二进制损坏 | ollama 段错误 / file 报章节头缺失 |
删除 /usr/local/bin/ollama 与 /usr/local/lib/ollama 后重装 |
zstd/PATH 混入 conda |
解压异常或调用到非预期 zstd |
安装时 export PATH,系统 /usr/bin 与 /bin 置顶 |
| systemd offline | systemctl 无法管理服务 |
手动 ollama serve(或自备进程守护方案) |
8. 文件与命令索引(便于审计)
8.1 关键路径
| 路径 | 说明 |
|---|---|
/root/autodl-tmp/ollama-linux/ |
ModelScope 下载目录 |
/root/autodl-tmp/ollama-linux/ollama-linux-amd64.tar.zst |
安装归档 |
/root/autodl-tmp/ollama-linux/ollama-modelscope-install.sh |
安装脚本 |
/usr/local/bin/ollama |
命令行入口(安装后) |
/usr/local/lib/ollama/ |
运行库文件目录(安装后,cuda_v12/cuda_v13 等子目录可能存在) |
/etc/systemd/system/ollama.service |
安装脚本生成的 unit(若存在;在无 systemd 环境仅作占位,无法靠其启动) |
8.2 本轮使用过的核心命令一览
# 清理损坏的旧安装
rm -f /usr/local/bin/ollama
rm -rf /usr/local/lib/ollama
# ModelScope CLI
/root/miniconda3/bin/pip install -q modelscope
/root/miniconda3/bin/modelscope download --model=modelscope/ollama-linux --local_dir /root/autodl-tmp/ollama-linux
# 安装(注意 PATH)
export PATH="/usr/bin:/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin"
cd /root/autodl-tmp/ollama-linux && chmod +x ./ollama-modelscope-install.sh && sh ./ollama-modelscope-install.sh
# 验证
nvidia-smi | head
/usr/local/bin/ollama --version
systemctl is-system-running # 若为 offline,请用手动 serve
9. 后续可选工作(本文未自动执行)
- 升级版本:关注 ModelScope 仓库是否同步更新包;或使用可稳定访问 GitHub 的环境重新下载 官方
install.sh指定OLLAMA_VERSION的资产。 ollama serve常驻:在无 systemd 场景使用tmux/screen、supervisor、或容器入口脚本自行拉起。- 模型下载加速:单独配置可用的 Registry 镜像 / 代理,与二进制安装文档分离记录更佳。
10. 修订记录
| 日期 | 说明 |
|---|---|
| 2026-05-13 | 在本环境实测安装后整理成文(ModelScope 方案落盘并成功 ollama serve + /api/version) |
11. 边界
Ollama 仅提供后端推理服务(即 API 接口),不具备前端用户界面。如需图形化交互,须额外部署前端框架(如 Open WebUI)。
12. 指定端口启动
通过环境变量 OLLAMA_HOST 可自定义服务监听的 IP 与端口。例如,以下命令将使 Ollama 监听 0.0.0.0:8080:
export OLLAMA_HOST="0.0.0.0:8080"
ollama serve
若需长期生效,建议将该环境变量写入配置文件(如 ~/.bashrc 或 systemd 服务文件)。
更多推荐




所有评论(0)