Ollama在Linux安装后常见问题包括服务未启用、环境变量未生效、模型拉取失败等;需手动启动systemd用户服务、通过override文件配置OLLAMA_MODELS路径、设置镜像源或手动导入模型。

ollama 在 Linux 上安装本身不难,但装完不能用、模型拉不动、服务连不上、GPU 不加速才是真实痛点。官方脚本能跑通不代表你本地环境就 ready —— 尤其是没配好路径、没开权限、没调端口时,ollama run llama3 很可能卡在 “pulling...” 或直接报 connection refused。
为什么 curl -fsSL https://ollama.com/install.sh | sh 跑完还是 command not found
常见原因是 shell 配置没生效,或用户级 systemd 服务未启用。官方脚本默认注册的是 systemctl --user 服务(非系统级),而很多终端会话不自动加载用户级 service 环境。
- 执行完脚本后,先检查
~/.ollama目录是否已创建:ls -la ~/.ollama - 手动启动服务并设为开机自启:
systemctl --user enable ollama && systemctl --user start ollama - 确认当前 session 支持 user services:
loginctl show-user $USER | grep -i "state\|service";若显示Service=none,需退出重登或改用sudo systemctl方式(见下一条) - 某些最小化安装的 Ubuntu/CentOS 缺少
dbus-user-session,会导致--user模式失败,此时应改用 root 级服务(需sudo systemctl edit ollama并补全[Service]块)
OLLAMA_MODELS 路径没生效,模型仍往 ~/.ollama/models 写
环境变量必须在 ollama 进程启动前就加载。systemd 用户服务默认不读取 ~/.bashrc,所以仅改 shell 配置无效。
- 正确做法是通过 systemd override 文件注入:
systemctl --user edit ollama,然后写入:[Service] Environment="OLLAMA_MODELS=/data/ollama/models"
- 若用 root 级服务(
sudo systemctl edit ollama),同样加Environment=...,但路径需确保ollama用户有读写权限:sudo chown -R ollama:ollama /data/ollama/models - 验证是否生效:
systemctl --user show ollama | grep OLLAMA_MODELS(用户级)或sudo systemctl show ollama | grep OLLAMA_MODELS(系统级) - 改完务必 reload 并重启:
systemctl --user daemon-reload && systemctl --user restart ollama
拉模型慢、超时或 failed to pull,但网络明明正常
根本原因常是 DNS 解析失败或国内访问 GitHub Release 限速 —— ollama pull 底层依赖 GitHub 的二进制分发,不是走 Docker Hub。
- 临时提速:加
--insecure跳过证书校验(仅调试用):ollama pull llama3 --insecure - 长期方案:配置镜像源(Ollama v0.4.12+ 支持):
export OLLAMA_HOST=https://xuanyuan.cloud/zh/r/ollama/ollama,再运行ollama pull(注意该地址需与你用的中文镜像站一致) - 手动下载模型文件(GGUF 格式)后,用
ollama create导入:ollama create my-llama3 -f - <<EOF FROM ./llama3.Q4_K_M.gguf EOF
- 别忽略磁盘空间:
df -h /和df -h ~/.ollama双查,模型解压后体积通常是下载包的 2–3 倍
ollama serve 能跑,但 curl http://localhost:11434/api/tags 返回空或 404
说明服务起来了,但 API 层没响应 —— 多数情况是 OLLAMA_HOST 配置冲突或进程被重复启动。
- 先停所有 ollama 进程:
pkill -f ollama,再只用 systemd 启动(避免前台ollama serve和后台服务共存) - 检查监听地址:
ss -tuln | grep :11434,正常应看到127.0.0.1:11434或*:11434;若只有127.0.0.1却想局域网访问,必须设OLLAMA_HOST=0.0.0.0:11434 - Ubuntu 24.04 默认开启 ufw,记得放行:
sudo ufw allow 11434 - API 路径大小写敏感:
/api/tags✅,/API/TAGS❌;且 v0.4.12+ 已弃用/v1前缀,OpenAI 兼容接口走/v1/chat/completions,原生接口走/api/chat
真正卡住的点,往往不在“怎么装”,而在“谁在管这个进程”“变量在哪生效”“路径归谁所有”。systemctl --user 和 sudo systemctl 混用、~/.bashrc 和 systemd 环境变量打架、模型目录权限没同步给 ollama 用户——这些细节一漏,就从 5 分钟部署变成 5 小时排查。


















