Команды Ollama: run, pull, ps, stop, create, переменные службы и REST API
Справочник по CLI Ollama на Linux-сервере: все команды и полезные флаги, что значат колонки ollama ps, Modelfile, переменные окружения через systemd override и HTTP-эквиваленты каждой команды.

Справочник по утилите ollama на Linux-сервере: все команды, флаги, которые реально нужны, переменные окружения фоновой службы и вызовы REST API, делающие то же по HTTP. Проверено по исходникам и документации релиза v0.40.14.
Локальные модели упираются в память: на tanaka.host тариф можно расширить без переустановки, а пробовать удобно на сервере с оплатой по дням.
Если Ollama ещё не стоит — сначала Ollama на VPS без видеокарты. В примерах маленькая gemma3:1b, подставьте любое имя из каталога.
Все команды
| Команда | Что делает |
|---|---|
ollama serve |
Запустить сервер на переднем плане (алиас ollama start) |
ollama run MODEL [PROMPT] |
Чат с моделью или один ответ и выход |
ollama pull MODEL |
Скачать модель или обновить до последней версии |
ollama push MODEL |
Выложить свою модель на ollama.com |
ollama list / ollama ls |
Модели на диске |
ollama ps |
Модели, загруженные в память |
ollama stop MODEL |
Выгрузить модель из памяти |
ollama show MODEL |
Детали модели, параметры, шаблон, лицензия |
ollama create NAME -f Modelfile |
Собрать свою модель из Modelfile |
ollama cp SOURCE DESTINATION |
Скопировать модель под новым именем |
ollama rm MODEL [MODEL...] |
Удалить модели с диска |
ollama signin / ollama signout |
Привязать/отвязать сервер от аккаунта ollama.com (алиасы login, logout) |
ollama launch |
Настроить Claude Code, Codex или OpenCode на работу с Ollama |
ollama -v |
Версия клиента и сервера |
У каждой команды есть --help. CLI — клиент: всё, кроме serve, ходит к серверу на 127.0.0.1:11434, поэтому служба ollama должна работать.
ollama run
Интерактивный чат; модель докачается, если её нет на диске:
ollama run gemma3:1b
Промпт аргументом — один ответ и возврат в shell, подходит для скриптов и cron:
ollama run gemma3:1b "Summarize the benefits of NVMe storage in two sentences."
Текст из пайпа добавляется к промпту — удобно для логов и документов:
cat /var/log/nginx/error.log | tail -n 50 | ollama run gemma3:1b "Explain these errors briefly:"
Флаги, полезные на сервере:
| Флаг | Эффект |
|---|---|
--verbose |
После ответа — тайминги: загрузка, скорость обработки промпта и генерации в токенах/с |
--format json |
Ответ строго валидным JSON |
--keepalive 30m |
Держать модель в памяти столько после последнего запроса вместо значения сервера |
--nowordwrap |
Не переносить длинные строки, когда вывод идёт в файл |
--think / --think=false |
Включить/выключить рассуждения у моделей с их поддержкой (high, medium, low — на некоторых) |
--hidethinking |
Рассуждать, но печатать только финальный ответ |
--insecure |
Разрешить pull из реестра без валидного TLS |
--verbose — самый быстрый бенчмарк: строка eval rate показывает, сколько токенов в секунду генерирует модель на вашем CPU:
ollama run gemma3:1b --verbose "Write a haiku about servers."
JSON для скриптов:
ollama run gemma3:1b --format json "List three Linux distributions as a JSON array named distros."
Команды внутри чата
В приглашении >>>:
| Команда | Эффект |
|---|---|
/? или /help |
Список команд |
/set parameter num_ctx 8192 |
Параметр на эту сессию, здесь длина контекста |
/set system "You are a terse assistant." |
Системное сообщение |
/set verbose |
Тайминги после каждого ответа |
/show info |
Детали модели |
/clear |
Очистить контекст разговора |
/save NAME |
Сохранить текущую сессию как новую модель |
/load NAME |
Переключиться на другую модель |
/bye |
Выход |
Многострочный промпт — оберните текст в """.
ollama pull, list, cp и rm
ollama pull gemma3:1b
Повторный pull уже скачанной модели обновляет её, качаются только изменившиеся слои.
ollama list
Четыре колонки: NAME (модель и тег), ID (первые 12 символов digest), SIZE (место на диске), MODIFIED (когда скачана или создана).
Копия под другим именем — данные не дублируются, оба имени указывают на одни файлы:
ollama cp gemma3:1b my-assistant
Удаление; можно несколько имён, загруженная модель сначала останавливается:
ollama rm my-assistant gemma3:1b
ollama ps
Показывает модели, которые прямо сейчас в памяти; лежащая только на диске модель здесь не появится. На CPU-сервере вывод такой:
NAME ID SIZE PROCESSOR CONTEXT RUNNER UNTIL
gemma3:1b 97558784bdc9 1.9 GB 100% CPU 4096 ggml 4 minutes from now
| Колонка | Значение |
|---|---|
NAME |
Загруженная модель и тег |
ID |
Короткий digest, как в ollama list |
SIZE |
Память загруженной модели вместе с кешем контекста — обычно больше размера на диске |
PROCESSOR |
100% CPU — целиком в RAM, 100% GPU — в видеопамяти, 48%/52% CPU/GPU — разделена |
CONTEXT |
Длина контекста в токенах, с которой модель загружена |
RUNNER |
Движок инференса, например ggml или llamacpp |
UNTIL |
Когда модель выгрузится без новых запросов. Forever — никогда, Stopping... — выгружается |
Старые версии печатают только NAME, ID, SIZE, PROCESSOR и UNTIL. Одну модель — по части имени: ollama ps gemma3. На VPS без GPU PROCESSOR всегда 100% CPU — это не ошибка.
ollama stop
Выгрузить модель сразу и освободить память; файлы остаются на диске:
ollama stop gemma3:1b
Следующий запрос загрузит её снова — на CPU это несколько секунд.
ollama show
Сводка: архитектура, число параметров, контекст, квантование, возможности, параметры по умолчанию.
ollama show gemma3:1b
| Флаг | Печатает |
|---|---|
--modelfile |
Полный Modelfile — хорошая заготовка для своей модели |
--parameters |
Параметры по умолчанию: temperature, top_k, стоп-токены |
--template |
Шаблон промпта |
--system |
Встроенное системное сообщение, если есть |
--license |
Текст лицензии |
-v, --verbose |
Подробные метаданные файла модели |
ollama create и Modelfile
Modelfile описывает новую модель поверх существующей: фиксированный системный промпт, другие дефолты, длиннее контекст.
mkdir -p ~/models/support-bot && cd ~/models/support-bot
nano Modelfile
FROM gemma3:1b
PARAMETER temperature 0.3
PARAMETER num_ctx 8192
SYSTEM """
You answer customer questions about web hosting. Keep answers short and polite.
"""
ollama create support-bot -f Modelfile
ollama run support-bot
| Инструкция | Назначение |
|---|---|
FROM |
Базовая модель или путь к GGUF/Safetensors |
PARAMETER |
Параметр по умолчанию: temperature, num_ctx, top_p, stop |
SYSTEM |
Системное сообщение для каждого чата |
TEMPLATE |
Шаблон промпта, нужен только импортированным моделям |
ADAPTER |
LoRA-адаптер поверх базовой модели |
MESSAGE |
Пример диалога для затравки |
LICENSE |
Текст лицензии, хранится с моделью |
Новая модель делит слои с базовой и почти не занимает диск. ollama create -q квантует модель при импорте из Safetensors.
ollama push, signin и launch
Чтобы опубликовать модель на ollama.com: аккаунт, ollama signin на сервере и ссылка из вывода. Потом копия в своё пространство имён и push:
ollama cp support-bot YOUR_USERNAME/support-bot
ollama push YOUR_USERNAME/support-bot
ollama signout отвязывает сервер. ollama launch настраивает кодовых ассистентов (Claude Code, Codex, OpenCode, Droid) на ваши модели — ориентирован на десктоп, на сервере редко нужен.
ollama serve и настройки сервера
С официальным установщиком сервер уже крутится как служба systemd ollama, ollama serve руками не нужен. На переднем плане — только для отладки, остановив службу:
systemctl stop ollama
OLLAMA_DEBUG=1 ollama serve
Сервер настраивается переменными окружения. Важные на VPS:
| Переменная | По умолчанию | Что контролирует |
|---|---|---|
OLLAMA_HOST |
127.0.0.1:11434 |
Адрес и порт API |
OLLAMA_KEEP_ALIVE |
5m |
Сколько простаивающая модель живёт в памяти. 0 — выгружать сразу, отрицательное (-1) — держать всегда |
OLLAMA_MODELS |
/usr/share/ollama/.ollama/models |
Каталог моделей |
OLLAMA_NUM_PARALLEL |
1 |
Сколько запросов одна модель обрабатывает параллельно |
OLLAMA_MAX_LOADED_MODELS |
3 без GPU |
Сколько разных моделей могут быть в памяти одновременно |
OLLAMA_MAX_QUEUE |
512 |
Сколько запросов ждут в очереди до HTTP 503 |
OLLAMA_CONTEXT_LENGTH |
4096 без GPU |
Контекст по умолчанию, если запрос его не задал |
OLLAMA_ORIGINS |
локальные origin | Дополнительные браузерные origin для API |
OLLAMA_DEBUG |
выкл | Подробные логи, 1 |
ollama serve --help — полный список для вашей версии.
Переменные через systemd override
Юнит, созданный установщиком, не правьте — обновление его перезапишет. Override:
systemctl edit ollama.service
[Service]
Environment="OLLAMA_KEEP_ALIVE=30m"
Environment="OLLAMA_MAX_LOADED_MODELS=1"
Environment="OLLAMA_NUM_PARALLEL=1"
systemctl daemon-reload
systemctl restart ollama
systemctl show ollama --property=Environment
Переносите модели через OLLAMA_MODELS — новый каталог должен принадлежать пользователю ollama: chown -R ollama:ollama /data/ollama.
REST API
Всё, что делает CLI, идёт через HTTP на порту 11434.
| CLI | API |
|---|---|
ollama run (один промпт) |
POST /api/generate |
ollama run (чат) |
POST /api/chat |
ollama list |
GET /api/tags |
ollama ps |
GET /api/ps |
ollama show |
POST /api/show |
ollama pull |
POST /api/pull |
ollama cp |
POST /api/copy |
ollama rm |
DELETE /api/delete |
ollama stop |
POST /api/generate с "keep_alive": 0 |
ollama -v |
GET /api/version |
Один ответ; "stream": false возвращает один JSON вместо потока чанков:
curl http://localhost:11434/api/generate -d '{
"model": "gemma3:1b",
"prompt": "Name three uses of a VPS.",
"stream": false
}'
Чат с историей и системным сообщением:
curl http://localhost:11434/api/chat -d '{
"model": "gemma3:1b",
"messages": [
{ "role": "system", "content": "Answer in one sentence." },
{ "role": "user", "content": "What is KVM virtualization?" }
],
"stream": false,
"options": { "temperature": 0.2, "num_ctx": 4096 }
}'
Скачанные и загруженные модели:
curl http://localhost:11434/api/tags
curl http://localhost:11434/api/ps
/api/ps отдаёт то же, что ollama ps, в JSON: size — память в байтах, size_vram — часть в видеопамяти (на CPU всегда 0), context_length и expires_at — колонки CONTEXT и UNTIL.
Загрузить модель заранее или выгрузить — запрос без промпта:
curl http://localhost:11434/api/generate -d '{"model": "gemma3:1b", "keep_alive": -1}'
curl http://localhost:11434/api/generate -d '{"model": "gemma3:1b", "keep_alive": 0}'
Первый держит модель до перезапуска службы, второй выгружает сразу.
Память на маленьком VPS
На сервере без GPU модели живут в той же RAM, что система и остальные программы.
- Сравнивайте
SIZEсо свободной памятью.ollama psрядом сfree -h. Модель должна влезать с запасом на систему. - Следите за контекстом. Больше
CONTEXT— большеSIZE. Память под контекст растёт и сOLLAMA_NUM_PARALLEL, у каждого слота свой кеш. На 4–8 ГБ держите параллелизм1. - Одна модель за раз. С дефолтными тремя загруженными запрос ко второй модели может вытолкнуть первую в swap или привести к OOM-kill.
OLLAMA_MAX_LOADED_MODELS=1заставит выгрузить старую перед загрузкой новой. - Выгружайте, когда закончили.
ollama stop MODELосвобождает память сразу. Редко используемой модели — короткийOLLAMA_KEEP_ALIVEвроде2m; постоянно используемой — длинный, чтобы не ждать загрузки на каждом запросе. - Логи при сбое загрузки.
journalctl -u ollama -n 100покажет ошибки памяти и время загрузки.
Ориентир: 1B–4B — 4–8 ГБ, 12B–14B — 16 ГБ. Таблица с размерами — в Ollama на CPU, если памяти впритык — swap.
Никогда не выставляйте порт 11434 в интернет. У API нет аутентификации: кто дотянется, тот гоняет ваши модели, качает новые до заполнения диска и удаляет ваши. Держите
OLLAMA_HOSTна127.0.0.1, а наружу — SSH-туннель или reverse proxy с паролем, как в статье про установку. Если всё же переключили на0.0.0.0— закройте порт брандмауэром.
Официальная документация API — github.com/ollama/ollama/blob/main/docs/api.md.