安装Ollama(Linux平台)
快速安装
官方提供了安装脚本:
通过官方安装脚本在本地安装
curl -fsSL https://ollama.com/install.sh | sh
手工安装
手工安装其实也非常简单,因为Ollama是一个 Go 程序,所以直接下载二进制软件包,解压缩后复制到执行目录就可以使用了:
手工本地安装
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
AMD GPU安装
要支持AMD GPU的版本再附加安装:
手工本地安装AMD GPU版本
curl -L https://ollama.com/download/ollama-linux-amd64-rocm.tgz -o ollama-linux-amd64-rocm.tgz
sudo tar -C /usr -xzf ollama-linux-amd64-rocm.tgz
ARM64安装
ARM版本安装
手工本地安装ARM版本
curl -L https://ollama.com/download/ollama-linux-arm64.tgz -o ollama-linux-arm64.tgz
sudo tar -C /usr -xzf ollama-linux-arm64.tgz
配置Ollama服务(建议)
添加一个Ollama用户和组:
添加一个Ollama用户和组
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
创建服务配置
/etc/systemd/system/ollama.service
:
添加ollama服务
[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=default.target
设置服务:
启动ollama服务
sudo systemctl daemon-reload
sudo systemctl enable ollama
安装CUDA驱动(可选)
安装NVIDIA Linux驱动 可以使用GPU作为硬件加速推理,如果使用 Debian / Ubuntu Linux / RedHat Linux 可以使用NVIDIA官方仓库进行在线安装。例如 QEMU运行GPU passthrough的虚拟机安装NVIDIA CUDA
安装AMD ROCm驱动(可选)
待实践
启动Ollama
启动服务:
启动服务
sudo systemctl start ollama
sudo systemctl status ollama
配置Ollama模型文件存储位置
默认 Ollama
将模型文件自动下载存储到用户目录下的 ~/.ollama/models
,但是往往用户目录不一定足够空间。此时,可以设置用户的环境变量 OLLAMA_MODELS
来指定位置:
~/.bashrc
配置环境变量 OLLAMA_MODELS
export OLLAMA_MODELS=/huggingface.co/ollama
刚开始时候,我没有考虑清楚 Systemd环境变量 设置,所以导致 Ollama
在下载大模型文件还是存放到了默认的 /usr/share/ollama/.ollama
目录下,我的主机 /
目录空间不足,所以我还将这个目录移动到 /huggingface.co/
下建立软链接:
建立下载目录软链接
sudo systemctl stop ollama
# 这个 /usr/share/ollama/.ollama 是ollama服务启动时建立的
# 里面有些设置好的文件和目录以及对应ollma账号的权限,所以还是通过停服务移动目录完成
sudo mv /usr/share/ollama/.ollama /huggingface.co/ollama
sudo ln -s /huggingface.co/ollama /usr/share/ollama/.ollama
sudo systemctl start ollama
注意,上述方法是命令行直接运行时的设置,对于启动时候使用 Systemd进程管理器 来运行服务,则需要在 Systemd环境变量 中传递这个环境变量:
/etc/systemd/system/ollama.service
设置 ollama
服务运行环境变量[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"
Environment="OLLAMA_MODELS=/huggingface.co/ollama/models"
Environment="CUDA_VISIBLE_DEVICES=GPU-794d1de5-b8c7-9b49-6fe3-f96f8fd98a19"
[Install]
WantedBy=default.target