下面给你整理一份 《Linux 上 Ollama 服务配置及常用环境变量设置指南》,方便你在服务器或本地 Linux 系统上运行 Ollama 服务。
一、Ollama 服务启动模式
Ollama 在 Linux 上通常有两种运行方式:
- 命令行交互模式(REPL)
ollama run deepseek-r1:7b
- 直接在终端交互
- 用于调试和测试
- 后台服务模式(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_REQUESTS和TIMEOUT
5. 模型参数优化(可选)
export OLLAMA_MAX_TOKENS=2048 # 模型上下文窗口
export OLLAMA_TEMPERATURE=0.7 # 生成随机性
export OLLAMA_TOP_P=0.9 # top-p 采样
- 适用于生成式文本控制
- 与 Python / REST 调用中
messages配合使用
三、永久生效方式
- 临时生效(当前终端有效):
export OLLAMA_MODEL_DIR=/opt/ollama/models
- 永久生效(每次开机自动加载):
# 编辑 ~/.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
- 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 | 排查问题 |
总结
- Ollama Linux 本地部署建议使用 环境变量统一配置,便于维护与调优
- 常用环境变量包括 模型路径、缓存路径、CPU/GPU 配置、日志级别、服务端口
- 结合 systemd / 后台运行 可长期稳定提供 REST API 服务
- 性能优化重点:线程数、GPU 层数、模型大小、上下文窗口
发表回复