下面给你整理一份 《Linux 上 Ollama 服务配置及常用环境变量设置指南》,方便你在服务器或本地 Linux 系统上运行 Ollama 服务。


一、Ollama 服务启动模式

Ollama 在 Linux 上通常有两种运行方式:

  1. 命令行交互模式(REPL)
ollama run deepseek-r1:7b

  • 直接在终端交互
  • 用于调试和测试
  1. 后台服务模式(REST API / Daemon)
ollama serve

  • 启动 HTTP REST 服务
  • 默认端口通常为 11434
  • 可供其他应用或脚本调用

建议在服务器上使用 ollama serve 并结合 systemd / Docker 后台管理。


二、常用环境变量配置

在 Linux 系统上,可以通过 export 或在 .bashrc / .zshrc 中设置 Ollama 常用环境变量,以控制运行参数、路径和资源分配。

1. 模型路径 / 本地缓存

export OLLAMA_MODEL_DIR=/opt/ollama/models
export OLLAMA_CACHE_DIR=/opt/ollama/cache

  • OLLAMA_MODEL_DIR:存放已下载模型的路径
  • OLLAMA_CACHE_DIR:运行中产生的临时缓存

建议使用 SSD 路径以提升加载和推理速度


2. GPU / 线程控制

export OLLAMA_NUM_THREADS=16       # CPU 核心数
export OLLAMA_NUM_GPU=1            # 使用 GPU 数量
export OLLAMA_GPU_LAYERS=30        # GPU 加速的层数(量化模型可调)

  • CPU 推理时 OLLAMA_NUM_THREADS 决定并行度
  • GPU 推理可通过 OLLAMA_NUM_GPU 指定使用的 GPU
  • 对大模型,可使用 OLLAMA_GPU_LAYERS 只用 GPU 推理部分层,节省显存

3. 日志与调试

export OLLAMA_LOG_LEVEL=info       # debug / info / warn / error
export OLLAMA_LOG_FILE=/var/log/ollama.log

  • OLLAMA_LOG_LEVEL:控制日志详细度
  • OLLAMA_LOG_FILE:指定日志输出路径

4. REST 服务配置

export OLLAMA_HOST=0.0.0.0         # 监听地址
export OLLAMA_PORT=11434           # 服务端口
export OLLAMA_MAX_REQUESTS=1000    # 并发请求限制
export OLLAMA_TIMEOUT=300          # 请求超时(秒)

  • 用于后台 API 服务,可结合 nginx / reverse proxy
  • 建议生产环境设置合理的 MAX_REQUESTSTIMEOUT

5. 模型参数优化(可选)

export OLLAMA_MAX_TOKENS=2048      # 模型上下文窗口
export OLLAMA_TEMPERATURE=0.7      # 生成随机性
export OLLAMA_TOP_P=0.9             # top-p 采样

  • 适用于生成式文本控制
  • 与 Python / REST 调用中 messages 配合使用

三、永久生效方式

  1. 临时生效(当前终端有效):
export OLLAMA_MODEL_DIR=/opt/ollama/models

  1. 永久生效(每次开机自动加载):
# 编辑 ~/.bashrc 或 ~/.zshrc
nano ~/.bashrc

# 添加如下行
export OLLAMA_MODEL_DIR=/opt/ollama/models
export OLLAMA_NUM_THREADS=16
export OLLAMA_HOST=0.0.0.0
export OLLAMA_PORT=11434

# 保存并执行
source ~/.bashrc

  1. systemd 服务管理(生产环境推荐):
# /etc/systemd/system/ollama.service
[Unit]
Description=Ollama LLM Service
After=network.target

[Service]
Type=simple
User=ollama
Environment="OLLAMA_MODEL_DIR=/opt/ollama/models"
Environment="OLLAMA_NUM_THREADS=16"
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_PORT=11434"
ExecStart=/usr/local/bin/ollama serve
Restart=always

[Install]
WantedBy=multi-user.target

sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama
sudo systemctl status ollama

这样 Ollama 将随系统启动,并运行在后台,便于长期服务部署。


四、调用示例(Linux 下测试 REST API)

curl http://localhost:11434/api/chat -d '{
  "model":"deepseek-r1:7b",
  "messages":[{"role":"user","content":"Explain AI in simple terms"}],
  "stream":false
}'

  • 输出 JSON,包括模型生成内容
  • 可配合 Python、Node.js 等脚本调用

五、常用组合建议

场景环境变量组合说明
CPU 小模型调试OLLAMA_NUM_THREADS=8小内存 / 无 GPU
GPU 推理 7B 模型OLLAMA_NUM_GPU=1 + OLLAMA_GPU_LAYERS=24单卡 RTX 3090 足够
多用户 API 服务OLLAMA_MAX_REQUESTS=500 + systemd限制并发,避免 OOM
日志调试OLLAMA_LOG_LEVEL=debug + OLLAMA_LOG_FILE=/var/log/ollama.log排查问题

总结

  1. Ollama Linux 本地部署建议使用 环境变量统一配置,便于维护与调优
  2. 常用环境变量包括 模型路径、缓存路径、CPU/GPU 配置、日志级别、服务端口
  3. 结合 systemd / 后台运行 可长期稳定提供 REST API 服务
  4. 性能优化重点:线程数、GPU 层数、模型大小、上下文窗口