Вы купили DGX или Spark, ожидая безраздельной власти над мощным железом для своих локальных LLM, а получили... коробку, которая настойчиво хочет «позвонить домой» в NVIDIA. Система, которая без Wi-Fi порой отказывается работать, забитая службами, которые только и делают, что собирают данные о вас. Знакомо? Тогда добро пожаловать в клуб.
Зачем вообще это делать? Потому что DGX OS — это тюрьма
DGX OS, основанная на Ubuntu, — это не просто операционная система. Это платформа управления, контроля и... сбора данных. NVIDIA обожает знать, как вы используете их железо. Для корпоративных кластеров, где всё работает через их экосистему (NGC, Base Command) — может, это и оправдано. Но для человека, который хочет запустить Llama 3.1 на 70 миллиардах параметров у себя в гараже в оффлайне — это ад.
Что конкретно не так: Фоновые службы телеметрии, привязка к аккаунту NVIDIA, ограниченный доступ к низкоуровневым настройкам железа, обновления, которые могут сломать вашу тонкую настройку. А ещё этот раздражающий экран приветствия, если система не видит интернет.
Чистый Ubuntu даёт вам контроль. Полный, тотальный, без компромиссов. Вы сами решаете, какие драйверы ставить, как настраивать питание GPU, какие ядра компилировать. Это разница между арендой квартиры и владением домом. В первом случае нельзя сносить стены.
Подготовка: не наступайте на эти грабли
Прежде чем браться за отвертку (виртуальную), запомните три вещи, которые спасут ваши данные и нервы.
- Резервная копия всего. Не надейтесь на «авось». Весь ваш код, модели, датасеты — на внешний накопитель или в сеть. Перепрошивка системы — это точка невозврата.
- Скачайте всё заранее. Драйверы NVIDIA, установочный образ Ubuntu Server (22.04 LTS или 24.04 LTS), firmware для вашей материнской платы. Представьте, что интернет пропадёт на неделю.
- Запишите текущие сетевые настройки. IP-адреса, имена хостов, ключи SSH. После переустановки восстановить доступ к машине — задача номер один.
Шаг за шагом: выжигание DGX OS и посадка Ubuntu
1 Создаем загрузочный носитель и входим в BIOS/UEFI
Используйте dd или BalenaEtcher. Образ — Ubuntu Server. Без графического интерфейса. Он нам не нужен, только тратит ресурсы. Перезагружаемся, заходим в настройки BIOS/UEFI (обычно Delete или F2).
# Пример создания загрузочной флешки в Linux
dd if=ubuntu-24.04-live-server-amd64.iso of=/dev/sdX bs=4M status=progress oflag=sync
В BIOS критически важно отключить Secure Boot. С драйверами NVIDIA из проприетарного репозитория он не дружит на этапе установки. Позже можно будет включить обратно, но это отдельная история с подписыванием модулей.
2 Установка Ubuntu Server: минимализм как искусство
Загружаемся с флешки. Выбираем язык. На этапе выбора ПО — ставим только SSH server
Ошибка новичка: Установить всё подряд «на всякий случай». В результате получаем кучу ненужных демонов, которые жрут память и создают точки отказа. Особенно избегайте snapd на сервере — это отдельная боль с производительностью ввода-вывода. Разметка диска. Если у вас несколько накопителей (а на DGX/Spark они обычно есть), сделайте так: После установки и перезагрузки подключаемся по SSH. Первым делом — обновляем список пакетов и ставим необходимое. Теперь нужно поставить проприетарные драйверы NVIDIA. Не используйте драйверы из репозитория Ubuntu (nvidia-driver-535). Они часто отстают. Добавляем репозиторий NVIDIA. Перезагружаемся. После ребута команда Теперь, когда система чиста, можно заняться тонкой настройкой. Производительность локальных LLM упирается в две вещи: скорость памяти (VRAM и ОЗУ) и пропускную способность PCIe. По умолчанию драйверы NVIDIA настроены на баланс между производительностью и энергопотреблением. Нам это не нужно. Нам нужна максимальная производительность. Локальные LLM жрут оперативку. Если её не хватает, система начинает использовать swap. Если swap на медленном диске — всё падает. Решение: zram или быстрый NVMe под swap. Также увеличьте лимиты locked memory. Это важно для llama.cpp и подобных инструментов, которые пытаются залочить в памяти гигантские модели. Телеметрии нет, но это не значит, что система должна быть открыта миру. Настройте фаервол (UFW) и откройте только порт SSH. Отключите всё, что может «звонить домой» на уровне сети. Проверьте, нет ли в системе служб типа Система готова. Проверим её на чем-то серьёзном. Установим Ollama — самый простой способ запустить модели. Следите за утилизацией GPU ( Чистая Ubuntu — это холст. Теперь можно разворачивать любую инфраструктуру. Например, полноценную LLM-инфраструктуру с несколькими моделями и API. Или настроить кластеризацию, если у вас есть ещё и Mac Studio для каких-то задач. Можно поставить Docker, и в контейнерах запускать разные фреймворки: vLLM для максимальной скорости, ExLlamaV2 для точного квантования, llama.cpp для универсальности. Главное — теперь вы контролируете каждый процесс, каждый мегабайт памяти, каждый градус температуры. И последний совет, который вы не найдёте в мануалах. После того как всё настроено и работает, создайте образ системы с помощью Clonezilla или даже простого
3
Первое включение и базовая зачистка
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential curl wget htop nvtop tmux neovim git pciutils# Добавляем ключ и репозиторий NVIDIA
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
# Устанавливаем драйвер, CUDA Toolkit и утилиты
sudo apt install -y nvidia-driver-550 nvidia-container-toolkit nvidia-cuda-toolkitnvidia-smi должна показывать все ваши GPU. Если нет — проверьте, что в BIOS включены все PCIe слоты и вышек PCIe Resizable BAR (если поддерживается).Оптимизация железа под LLM: выжимаем каждый процент
Настройка GPU: не дайте им простаивать
# Устанавливаем утилиту управления питанием
sudo apt install -y nvidia-settings
# Включаем режим максимальной производительности для ВСЕХ GPU
sudo nvidia-smi -pm 1
sudo nvidia-smi -pl 300 # Устанавливаем лимит мощности в ваттах (подберите под ваше железо!)
# Для изменения других параметров можно создать конфиг при загрузке
sudo tee /etc/modprobe.d/nvidia-performance.conf << EOF
options nvidia NVreg_RegistryDwords="PowerMizerEnable=0x1; PerfLevelSrc=0x2222; PowerMizerDefaultAC=0x1"
EOF-pl). Сначала узнайте TDP ваших карт. Для карт типа A100 это 300-400W. Установка значения выше штатного может привести к перегреву и троттлингу. Мониторьте температуру командой nvidia-smi -q -d TEMPERATURE.Память и swap: чтобы модели не падали
# Устанавливаем zram-tools
sudo apt install -y zram-tools
# Редактируем конфиг /etc/default/zramswap
# Устанавливаем размер zram в процентах от ОЗУ (например, 50%)
ALGO=lz4
PERCENT=50
# Или создаем swap файл на быстром NVMe
sudo fallocate -l 64G /swapfile # Размер = объём вашей самой большой модели
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# Добавляем в /etc/fstab
/swapfile none swap sw 0 0# Добавляем в /etc/security/limits.conf
* soft memlock unlimited
* hard memlock unlimitedСеть и безопасность: строим крепость
sudo ufw allow ssh
sudo ufw --force enable # Включаем фаервол
# Если планируете веб-интерфейс вроде Ollama или текстовое поколение через API, откройте порты выборочно
# sudo ufw allow 11434/tcp # Ollamaubuntu-advantage или snapd (если всё-таки поставили). Удалите их.Тестирование и запуск первой модели
curl -fsSL https://ollama.com/install.sh | sh
# Запускаем демон
ollama serve &
# Качаем и запускаем модель (например, Llama 3.1 70B в 4-битном квантовании)
ollama pull llama3.1:70b
ollama run llama3.1:70bnvtop) и памяти (htop). Если всё работает — вы победили.Чего ждать и что может пойти не так
Проблема
Причина
Решение
После установки драйверов система не загружается, черный экран
Конфликт с Secure Boot или неподписанный модуль ядра
Загрузиться в recovery mode, отключить Secure Boot в BIOS или подписать модули.
nvidia-smi видит не все GPU
Не хватает линий PCIe или слот отключен в BIOS
Проверить настройки BIOS (Above 4G Decoding, PCIe Bifurcation). Использовать
lspci | grep -i nvidia.
Модель загружается, но генерация очень медленная
Система использует swap на медленном диске или CPU стал бутылочным горлышком
Проверить
vm.swappiness, перенести swap на NVMe. Убедиться, что модель загружена в VRAM, а не в ОЗУ.
Резкие падения производительности через некоторое время
Перегрев GPU или CPU, thermal throttling
Мониторить температуру (
nvidia-smi -q, sensors). Улучшить охлаждение. В критичных случаях — собрать умную систему охлаждения.А что дальше? Экосистема
dd. Запишите его на диск и положите на полку. Это ваша точка сохранения в мире, где обновление драйвера может сломать всё. Счастливого хостинга моделей.