在 Ubuntu 22.04 上安装了 Ollama 并通过 systemctl 设置为系统服务后,如果你想修改模型的存储目录(默认通常是在 ~/.ollama/models),可以通过以下步骤操作:
✅ 方法:通过环境变量 OLLAMA_MODELS 修改模型目录
Ollama 允许通过环境变量 OLLAMA_MODELS 来指定自定义的模型存储路径。
步骤如下:
停止 Ollama 服务
sudo systemctl stop ollama创建新的模型目录(可选)
sudo mkdir -p /your/custom/model/path sudo chown $(whoami):$(whoami) /your/custom/model/path例如:
sudo mkdir -pdev /data/ollama/models sudo chown $USER:$USER /data/ollama/models编辑 systemd 服务文件
Ollama 的 systemd 服务文件通常位于
/etc/systemd/system/ollama.service或由包管理器安装在/lib/systemd/system/ollama.service。建议使用
systemctl edit命令来覆盖配置(避免直接修改原始文件,便于升级):sudo systemctl edit ollama在打开的编辑器中添加以下内容:
[Service] Environment="OLLAMA_MODELS=/your/custom/model/path"保存并退出(如使用 nano,按
Ctrl+O回车,再Ctrl+X)。重新加载 systemd 配置并启动服务
sudo systemctl daemon-reload sudo systemctl start ollama验证是否生效
查看服务状态和环境变量是否加载成功:
systemctl show ollama --property=Environment应该看到包含
OLLAMA_MODELS=/your/custom/model/path。你也可以 pull 一个模型测试路径是否正确:
ollama pull llama3 ls /your/custom/model/path
🔒 注意事项
- 确保新目录对运行
ollama服务的用户(通常是你的当前用户或root)有读写权限。 - 如果你是用 root 安装的 Ollama 服务,但希望以普通用户身份运行,请确认服务文件中的
User=字段设置正确(默认可能未指定,会以 root 运行)。可通过systemctl edit ollama添加:[Service] User=your_username Environment="OLLAMA_MODELS=/your/custom/model/path" - 如果之前已经下载过模型,默认位置的模型不会自动迁移,你需要手动将
~/.ollama/models下的内容复制到新目录(可选)。
📌 补充:查看当前模型目录
你可以通过以下命令查看 Ollama 当前使用的模型目录(如果已启动):
ps aux | grep ollama
观察启动命令中是否包含 OLLAMA_MODELS 环境变量。
或者进入容器/进程环境(高级):
sudo cat /proc/$(pgrep ollama)/environ | tr '\0' '\n' | grep OLLAMA_MODELS