~/ / AI 文章 / 在 VPS 上跑本機 LLM / 在 VPS 上安裝 Ollama 並讓它持續運作:安裝、systemd 服務、設定與更新
在 VPS 上安裝 Ollama 並讓它持續運作:安裝、systemd 服務、設定與更新
只要確認模型放得進 VPS 的記憶體,安裝 Ollama 只需要幾行指令。比較需要費心的是讓它持續運作:開機時自動啟動、設定環境變數、決定大型模型檔案的存放位置,以及日後的更新。本文依照 Ollama 官方的 Linux 文件與 FAQ,一步一步說明。
發布: · 約 6 分鐘讀完 · 已於 2026-10-26 對照 Ollama 官方文件確認。指令與預設值可能會變動,在伺服器上執行任何操作之前,請先確認最新的文件。
先確認記憶體
放不進伺服器記憶體的模型無法順利執行,而且先下載它只會浪費時間與磁碟空間。在安裝任何東西之前,先估算所需的記憶體:模型檔案本身,加上預定使用的上下文長度所需的 KV 快取,再加上留給作業系統的預留空間。
試試看: Local LLM Memory Estimator
估算結果
- 模型權重
- 4.84 GiB
- KV cache
- 0.56 GiB
- 保留量
- 1.00 GiB
- 合計
- 6.41 GiB (6.88 GB)
- 容得下的最小常見記憶體容量
- 8 GiB
這是估算值。其中不包含執行環境的運算緩衝區,並假設每一層的 KV 形狀都相同。在選擇方案之前,請先量測實際執行的情況。
模型資料確認日期:2026-10-26。
資料來源: Ollama library · 模型設定 (config.json) · Ollama FAQ
所有處理都在你的瀏覽器中進行,不會上傳任何內容。
安裝
Ollama 的 Linux 文件提供一行式的安裝指令與手動安裝兩種方式。在重要的伺服器上,請先閱讀腳本內容再以管道交給 shell 執行;腳本就放在指令中的網址。
| 方式 | 指令或步驟 |
|---|---|
| 安裝腳本 | curl -fsSL https://ollama.com/install.sh | sh |
| 手動安裝:升級時移除舊的函式庫 | sudo rm -rf /usr/lib/ollama |
| 手動安裝:下載並解壓縮 | curl -fsSL https://ollama.com/download/ollama-linux-amd64.tar.zst | sudo tar x -C /usr |
| 手動安裝:啟動伺服器 | ollama serve |
| 確認是否正在執行(在另一個終端機中) | ollama -v |
ARM64 伺服器請使用文件中的 ollama-linux-arm64.tar.zst,而不是 amd64 的套件。GPU 驅動程式是選用的:文件列出了 NVIDIA GPU 用的 CUDA 與 AMD GPU 用的 ROCm,而一般的 VPS 兩者都沒有。
以服務方式執行
若要讓 Ollama 在開機時啟動並在失敗後重新啟動,文件說明了 systemd 服務的做法。先建立專用的使用者與群組,再建立單元檔案 /etc/systemd/system/ollama.service。
| 區段 | 文件中單元檔案的內容 |
|---|---|
| [Unit] | 一段說明,以及 After=network-online.target |
| [Service] | ExecStart=/usr/bin/ollama serve |
| [Service] | User=ollama 與 Group=ollama |
| [Service] | Restart=always 與 RestartSec=3 |
| [Service] | Environment="PATH=$PATH" |
| [Install] | WantedBy=multi-user.target |
- 建立使用者與群組:sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama,接著執行 sudo usermod -a -G ollama $(whoami)
- 載入並啟用單元:sudo systemctl daemon-reload,接著執行 sudo systemctl enable ollama
- 啟動並檢查:sudo systemctl start ollama,接著執行 sudo systemctl status ollama
- 查看日誌:journalctl -e -u ollama
文件沒有說明安裝腳本是否會自行設定這個服務。安裝完成後,請用 systemctl status ollama 確認,不要自行假設。
伺服器上重要的設定
環境變數要寫在 systemd 的覆寫設定中。FAQ 的做法是用 systemctl edit ollama.service 編輯服務,在 [Service] 底下加入變數,然後執行 systemctl daemon-reload 與 systemctl restart ollama。例如:Environment="OLLAMA_HOST=0.0.0.0:11434"。
| 變數 | 文件的說明 |
|---|---|
| OLLAMA_HOST | Ollama 預設綁定 127.0.0.1 的 11434 連接埠;這個變數可以變更綁定的位址 |
| OLLAMA_KEEP_ALIVE | 預設情況下,模型會在記憶體中保留 5 分鐘後才卸載;API 請求中的 keep_alive 值會覆寫這項設定 |
| OLLAMA_MAX_LOADED_MODELS | 在記憶體放得下的前提下,可同時載入的模型數量上限;CPU 推論的預設值為 3 |
| OLLAMA_MODELS | 在 Linux 上,模型儲存於 /usr/share/ollama/.ollama/models;若要改用其他目錄,請設定這個變數,並讓 ollama 使用者擁有該目錄的讀寫權限,例如使用 sudo chown -R ollama:ollama <directory> |
模型檔案很大(Qwen3 8B 的下載大小為 5.2 GB,14B 為 9.3 GB),因此在下載多個模型之前,請先確認 VPS 的剩餘磁碟空間。
從外部連線
FAQ 指出,Ollama 執行的是 HTTP 伺服器,可以透過 Nginx 這類代理伺服器對外開放。其範例監聽 80 連接埠、設定 server_name,以 proxy_pass http://localhost:11434 轉送請求,並將 Host 標頭設為 localhost:11434。
我們查閱的 FAQ 頁面沒有說明 Ollama 伺服器的任何驗證機制。以下是我們的建議,並非文件中的說法:保留預設位址,並透過 SSH 通道連線到伺服器;若要在前面放置代理伺服器,請在該處加上驗證與 HTTPS,並在防火牆中將連接埠限制為你使用的位址。
更新、檢查與移除
- 更新的方式是再次執行安裝腳本,或依手動安裝的步驟重新下載 tarball。
- 若要安裝特定版本,請在腳本前面設定 OLLAMA_VERSION,例如 curl -fsSL https://ollama.com/install.sh | OLLAMA_VERSION=0.5.7 sh。版本編號可在 GitHub 的 releases 頁面查到。
- 若要執行模型庫中的模型,請使用該模型頁面上顯示的指令,例如 ollama run qwen3:4b。
- 若要移除服務,請執行 sudo systemctl stop ollama 與 sudo systemctl disable ollama,然後刪除單元檔案。文件還列出了移除函式庫、執行檔,以及 /usr/share/ollama 中的模型、使用者與群組的步驟。
資料來源
接著閱讀
- 在自己的程式中呼叫本機模型:Ollama 的結構化輸出與 OpenAI-compatible API用 JSON Schema 限制本機模型的輸出,並從 OpenAI 風格的用戶端呼叫 Ollama:官方文件怎麼說,以及哪些功能不支援。
- 本機模型能做什麼?Ollama 的 tools、thinking、vision 與 embedding,以及 VPS 跑得動什麼tools、thinking、vision、embedding:Ollama 模型庫中的標籤代表什麼、哪些模型帶有這些標籤,以及下載大小有多大。
- 在 VPS 上跑本機 LLM 需要多少記憶體?模型檔加上 KV cache模型檔加上 KV cache:Ollama 函式庫、Ollama FAQ 與官方模型設定檔,對在 VPS 上跑本機 LLM 所需的記憶體有哪些說明。
- 在自己的 VPS 上跑 AI:該預留多少記憶體,哪些東西不能對外開放打算在 VPS 上跑 Ollama 或 Dify?整理官方文件對記憶體、僅用 CPU 推論以及必須關閉的連接埠的說明。