Ollama Linux 安装与部署
Linux 是 Ollama 最适合长期跑的平台:无桌面环境干扰、systemd 托管、GPU 驱动可控。一条安装脚本就装完,但真正要落地成服务,还有几件事必须做对——建专用用户、写 systemd 单元、配 GPU 驱动。
版本基线 v0.40.12,官方
docs.ollama.com/linux。
一、一条命令安装
curl -fsSL https://ollama.com/install.sh | sh
脚本会自动识别架构、下载对应包、创建 ollama 用户并注册 systemd 服务。装完 ollama -v 能看到版本号。
装指定版本
线上环境常需要锁定版本,用 OLLAMA_VERSION 指定(版本号在 GitHub releases 页查):
## 注意 OLLAMA_VERSION 要放在 sh 前面
curl -fsSL https://ollama.com/install.sh | OLLAMA_VERSION=0.5.7 sh
手动安装
不想用脚本(审计要求、内网环境)就手动解包:
## 如果是从旧版本升级,先清掉旧库文件,否则可能加载到旧版本 so
sudo rm -rf /usr/lib/ollama
## 下载并解压到 /usr
curl -fsSL https://ollama.com/download/ollama-linux-amd64.tar.zst \
| sudo tar x -C /usr
AMD 显卡要额外装 ROCm 包:
curl -fsSL https://ollama.com/download/ollama-linux-amd64-rocm.tar.zst \
| sudo tar x -C /usr
ARM64 服务器(如 Ampere、鲲鹏)用对应架构包:
curl -fsSL https://ollama.com/download/ollama-linux-arm64.tar.zst \
| sudo tar x -C /usr
手动装完用 ollama serve 前台启动,另开终端 ollama -v 验证。
二、注册为 systemd 服务(推荐)
手动装的情况下,需要自己做服务托管。先建专用用户和组:
## 建一个不能登录的系统用户 ollama,家目录放在 /usr/share/ollama
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
## 把你当前的账号加进 ollama 组,这样不用 sudo 也能读模型
sudo usermod -a -G ollama $(whoami)
再写服务单元 /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
Restart=always 配 RestartSec=3 是这套配置的关键——服务挂了 3 秒自动拉起来,不需要人工干预。
启用并启动:
sudo systemctl daemon-reload
sudo systemctl enable ollama # 开机自启
sudo systemctl start ollama
sudo systemctl status ollama # 确认 active (running)
用安装脚本装的机器上,这一步已经自动完成。
三、GPU 驱动
NVIDIA:装好 CUDA 驱动即可,验证方式是 nvidia-smi 能打印出显卡信息。
nvidia-smi
AMD Radeon:装 ROCm v7。这里有个官方明确提醒——内核自带的 amdgpu 驱动版本偏旧,可能不支持 ROCm 的全部特性,建议从 AMD 官网装最新驱动:
## 验证 ROCm 是否就绪
rocm-smi
装完重启服务,然后一定要用 ollama ps 检查 PROCESSOR 列:显示 100% GPU 才算真的用上了显卡。如果显示的是 CPU 比例,说明驱动或显存有问题,详见 6.1 Ollama 上下文长度 里关于 PROCESSOR 的判读。
四、改配置:systemd 的两种改法
服务方式运行时,环境变量不能靠在 shell 里 export——systemd 不读你的 shell 配置。两种正确改法:
方式一:systemctl edit(推荐)
sudo systemctl edit ollama
它会打开一个 override 文件,在里面写:
[Service]
Environment="OLLAMA_DEBUG=1"
方式二:直接建 override 文件
## 手动创建同名文件,效果完全一样
sudo mkdir -p /etc/systemd/system/ollama.service.d
sudo vi /etc/systemd/system/ollama.service.d/override.conf
改完都要重载并重启:
sudo systemctl daemon-reload
sudo systemctl restart ollama
这种 override 方式的好处是:升级 Ollama 时主服务文件会被覆盖,但 override.conf 保留,你的配置不会丢。不要直接改 /etc/systemd/system/ollama.service,那是升级会被覆盖的地方。
五、看日志
## -e 跳到末尾,-u 只看 ollama 服务
journalctl -e -u ollama
模型加载失败、显存不足、驱动报错,通常第一手信息都在这。加 -f 可以持续跟踪(journalctl -f -u ollama)。
六、升级
## 重跑安装脚本即可,会自动停服务、替换二进制、重启
curl -fsSL https://ollama.com/install.sh | sh
手动安装的机器重复一次解包命令。注意升级前先确认模型是否需要重建——极少数情况下模板或参数格式变动会影响旧的自定义模型。
七、卸载
按顺序清理,避免留下孤儿文件和用户:
## ① 停服务并禁用自启
sudo systemctl stop ollama
sudo systemctl disable ollama
## ② 删除服务单元
sudo rm /etc/systemd/system/ollama.service
## ③ 删除库文件(自动定位到 ollama 所在的 lib 目录)
sudo rm -r $(which ollama | tr 'bin' 'lib')
## ④ 删除二进制
sudo rm $(which ollama)
## ⑤ 删用户、组和模型目录(模型几十 GB,务必确认后再执行)
sudo userdel ollama
sudo groupdel ollama
sudo rm -r /usr/share/ollama
⚠️ 最后一步会连同所有已下载模型一起删除。如果模型目录已经用 OLLAMA_MODELS 改到别的位置,记得去那个目录单独清理。
八、Linux 上的三个常见坑
ollama 命令找不到,但服务能跑。 安装脚本把二进制放在 /usr/bin,一般没问题;手动解压到别处时才会出现。用 which ollama 确认路径,必要时加软链。
模型下载报权限错误。 服务以 ollama 用户运行,如果 OLLAMA_MODELS 指向的目录属主不对,就会写不进去。修复方式是 sudo chown -R ollama:ollama <模型目录>。
服务重启后配置丢失。 直接改了主服务文件、升级时被覆盖。改用第四节的 override 方式。
下一步看各平台差异:7.2 Ollama macOS 安装与部署、7.3 Ollama Windows 安装与部署;容器化部署见 7.4 Ollama Docker 部署。

TRAE-AI编程


更多建议: