Proxmox VE — бесплатная платформа виртуализации на базе Debian. Она управляет виртуальными машинами KVM и контейнерами LXC через веб-интерфейс, умеет кластер, живую миграцию, ZFS, Ceph и резервное копирование. Платить нужно только за подписку с enterprise-репозиторием и поддержкой, сама система полностью рабочая без неё.
Актуальная ветка на октябрь 2026 года — Proxmox VE 9.x на Debian 13 (trixie), последний выпуск 9.2. Ветка 8.x на Debian 12 (bookworm) закончила поддержку 31 августа 2026 года: новые серверы на ней не ставим, существующие обновляем до 9.x.
Самый простой путь — установка с официального ISO: за 10–15 минут вы получаете готовый гипервизор с LVM-thin или ZFS. Если у сервера нет консоли или провайдер даёт только свой образ Debian, ставим Proxmox поверх чистого Debian 13. После установки в обоих случаях нужно переключить репозиторий на бесплатный no-subscription, иначе apt update будет падать с ошибкой 401.
Что нужно до установки
- 64-битный процессор Intel или AMD с аппаратной виртуализацией (Intel VT-x или AMD-V), включённой в BIOS/UEFI.
- Память: минимум 2 ГБ для самой системы плюс память для гостей. С ZFS закладывайте ещё память под ARC-кеш.
- Диски: для ZFS нужен HBA или контроллер в режиме IT/JBOD, а не аппаратный RAID. С аппаратным RAID используйте ext4 или XFS.
- Статический IP-адрес, шлюз, DNS и полное имя хоста (FQDN), например
pve1.example.lan.
Проверить поддержку виртуализации на уже работающем Linux можно так:
grep -cE 'vmx|svm' /proc/cpuinfo
lscpu | grep -i virtualization
Если первая команда вернула 0 — виртуализация выключена в BIOS или вы внутри виртуальной машины без вложенной виртуализации. Контейнеры LXC при этом работать будут, а KVM — нет.
Если сервер ещё только выбираете, посмотрите заметку о выборе выделенного сервера: процессор, диски и память — для гипервизора те же критерии, только память и диски нужны с запасом.
Способ 1. Установка с ISO
Шаг 1. Скачать образ и записать на флешку
Образ берите только с официальной страницы загрузок proxmox.com/en/downloads. Рядом лежит контрольная сумма SHA256 — сверьте её. На Linux флешку можно записать через dd:
sha256sum proxmox-ve_9.*.iso
lsblk # найдите флешку, например /dev/sdX
dd if=proxmox-ve_9.*.iso of=/dev/sdX bs=4M conv=fsync status=progress
Внимательно проверьте имя устройства: dd без вопросов перезапишет любой диск. На Windows подойдут Rufus в режиме DD или balenaEtcher. На серверах с IPMI/iDRAC/iLO образ проще подключить как виртуальный CD.
Шаг 2. Пройти установщик
Загрузитесь с флешки и выберите графическую установку или установку в текстовом режиме (Terminal UI) — по шагам они одинаковые.
- Target Harddisk. Кнопка Options открывает выбор файловой системы: ext4, XFS, ZFS (RAID0/1/10/RAIDZ) или Btrfs. Для одного диска или аппаратного RAID — ext4. Для двух и более дисков на HBA — ZFS RAID1 или RAID10.
- Страна, часовой пояс, раскладка.
- Пароль root и e-mail. На этот адрес будут приходить уведомления о бэкапах и сбоях дисков.
- Сеть. Выберите интерфейс управления, укажите FQDN, IP в формате CIDR, шлюз и DNS. Установщик создаст мост
vmbr0поверх этого интерфейса.
После перезагрузки в консоли появится адрес веб-интерфейса вида https://192.168.1.10:8006.
Что получится на ext4/XFS: хранилище local (каталог /var/lib/vz для ISO, шаблонов и бэкапов) и local-lvm (LVM-thin для дисков ВМ и контейнеров). На ZFS вместо local-lvm будет local-zfs.
Способ 2. Установка поверх Debian 13
Этот путь нужен, когда нет доступа к консоли сервера, нужна особая разметка дисков или провайдер ставит только свой образ Debian. Ставим чистый Debian 13 amd64: в tasksel оставляем только «SSH server» и «standard system utilities», без графического окружения.
Шаг 1. Имя хоста и /etc/hosts
Имя сервера должно разрешаться в его реальный IP, а не в 127.0.1.1. Это частая причина того, что после установки не стартует pve-cluster и не открывается веб-интерфейс. Приведите /etc/hosts к такому виду (адрес и имя свои):
127.0.0.1 localhost
192.168.1.10 pve1.example.lan pve1
::1 localhost ip6-localhost ip6-loopback
Проверка:
hostname --ip-address
# должно быть: 192.168.1.10
Шаг 2. Ключ и репозиторий Proxmox
В Proxmox VE 9 репозитории описываются в формате deb822 (файлы .sources). Скачиваем ключ архива и сверяем контрольную сумму с той, что опубликована в официальной инструкции на pve.proxmox.com:
wget https://enterprise.proxmox.com/debian/proxmox-archive-keyring-trixie.gpg \
-O /usr/share/keyrings/proxmox-archive-keyring.gpg
sha256sum /usr/share/keyrings/proxmox-archive-keyring.gpg
Создаём файл /etc/apt/sources.list.d/pve-install-repo.sources:
cat > /etc/apt/sources.list.d/pve-install-repo.sources <<'END'
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
END
apt update && apt full-upgrade
Шаг 3. Ядро Proxmox
Сначала ставим ядро Proxmox и перезагружаемся в него:
apt install proxmox-default-kernel
systemctl reboot
После перезагрузки проверьте, что работает нужное ядро — в имени будет pve:
uname -r
# примерно так: 6.x.y-z-pve
Шаг 4. Пакеты Proxmox VE
apt install proxmox-ve postfix open-iscsi chrony
Установщик Postfix задаст вопросы. Если в сети есть почтовый relay — выберите «Satellite system» и укажите его. Если нет — «Local only», а уведомления потом настроите в разделе Datacenter → Notifications.
Шаг 5. Убрать ядро Debian и os-prober
apt remove linux-image-amd64 'linux-image-6.12*'
update-grub
apt remove os-prober
Ядро Debian больше не нужно, а при обновлениях оно может снова стать ядром по умолчанию. Пакет os-prober при обновлении GRUB сканирует все разделы и может принять диски виртуальных машин за другие ОС и добавить их в меню загрузки.
Шаг 6. Сетевой мост vmbr0
При установке поверх Debian мост не создаётся автоматически. Без него ВМ не получат доступ в сеть. Мост удобнее создать в веб-интерфейсе: узел → System → Network → Create → Linux Bridge, указать адрес и порт (физический интерфейс), затем Apply Configuration. Вручную это делается в /etc/network/interfaces:
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.1.10/24
gateway 192.168.1.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
Имя интерфейса (eno1) смотрите в выводе ip -br link. Применить настройки — ifreload -a (Proxmox использует ifupdown2). Делайте это, имея доступ к консоли: ошибка в файле отрежет сервер от сети.
Репозитории: enterprise и no-subscription
После установки с ISO включён enterprise-репозиторий. Без ключа подписки он отвечает ошибкой 401, и обновления не ставятся. Для работы без подписки подключаем бесплатный pve-no-subscription. Пакеты в нём те же, но попадают туда раньше и проходят меньше проверок. Для домашней лаборатории и небольших продакшен-установок это нормальный выбор. Если сервер критичный — подписка того стоит.
Удобнее всего через веб-интерфейс: узел → Updates → Repositories. Там выключите (Disable) pve-enterprise и enterprise-репозиторий Ceph, нажмите Add и выберите No-Subscription. Из консоли то же самое выглядит так. Файлы лежат в /etc/apt/sources.list.d/:
# выключаем enterprise: добавляем строку Enabled: no
echo 'Enabled: no' >> /etc/apt/sources.list.d/pve-enterprise.sources
# добавляем no-subscription
cat > /etc/apt/sources.list.d/proxmox.sources <<'END'
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
END
apt update
Если в /etc/apt/sources.list.d/ceph.sources указан enterprise-репозиторий Ceph, а Ceph вы не используете, выключите его тем же способом. При установке поверх Debian enterprise-файлов нет. У вас уже есть свой pve-install-repo.sources, второй файл с тем же репозиторием не нужен.
Обновлять Proxmox нужно только через apt full-upgrade (или кнопку Upgrade в интерфейсе). Простой apt upgrade не ставит новые зависимости и может оставить систему в несогласованном состоянии.
Окно «No valid subscription» при входе для бесплатной версии нормально. Советы из интернета «пропатчить» JavaScript-файл интерфейса, чтобы его убрать, лучше не применять. Патч слетает при каждом обновлении пакета proxmox-widget-toolkit, а кривая правка может сломать интерфейс.
Проверка установки
pveversion
# примерно так: pve-manager/9.2.x/... (running kernel: 6.x.y-z-pve)
systemctl status pve-cluster pvedaemon pveproxy pvestatd --no-pager
ss -tlnp | grep 8006
Откройте https://IP-сервера:8006, логин root, realm «Linux PAM standard authentication». Сертификат самоподписанный — браузер предупредит, это ожидаемо. Нормальный сертификат можно выпустить через встроенный ACME-клиент: узел → System → Certificates.
Первые шаги после установки
Закрыть доступ к панели
Порт 8006 даёт полный контроль над всеми виртуальными машинами. Открывать его в интернет без ограничений нельзя: это то же самое, что выставить наружу root-консоль. Минимум мер:
- доступ к 8006 и 22 — только из VPN или с доверенных адресов (встроенный firewall: Datacenter → Firewall, либо внешний фильтр у провайдера);
- двухфакторная аутентификация (TOTP или WebAuthn) для root и администраторов: Datacenter → Permissions → Two Factor;
- отдельные учётные записи с минимальными правами вместо общей учётки root.
Включая firewall на уровне Datacenter, сначала добавьте разрешающие правила для своего адреса на 8006 и 22. Иначе потеряете доступ.
Загрузить ISO и создать первую ВМ
ISO-образы загружаются через хранилище local → ISO Images → Upload или Download from URL. На диске они лежат в /var/lib/vz/template/iso/. Дальше кнопка Create VM: для Linux-гостей выбирайте контроллер VirtIO SCSI single, сетевую карту VirtIO и тип процессора по умолчанию (x86-64-v2-AES или новее, если все узлы кластера его поддерживают). Для Windows понадобятся драйверы VirtIO — подробно в статье об ускорении Windows в KVM и Proxmox.
Из консоли ВМ создаётся командой qm, например:
qm create 100 --name deb13 --memory 2048 --cores 2 \
--net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-single \
--scsi0 local-lvm:32 --cdrom local:iso/debian-13-netinst.iso \
--ostype l26
qm start 100
Если вы переносите готовые диски с другого гипервизора, их можно импортировать командой qm disk import. Про форматы qcow2, raw и vmdk и конвертацию между ними — в статье об образах дисков QEMU-KVM, Xen и VMDK.
Время и бэкапы
Proxmox ставит chrony. Точное время критично для кластера и для гостей. Как синхронизировать часы внутри ВМ, разобрано в статье о синхронизации времени в виртуальных машинах. Резервные копии настраиваются в Datacenter → Backup (утилита vzdump). Храните их не на том же диске, что и ВМ: подойдёт NFS-хранилище или отдельный Proxmox Backup Server с дедупликацией.
LXC вместо OpenVZ
Если вы пришли со старых статей про OpenVZ на CentOS 5/6 — коротко о том, что изменилось. Раньше контейнеры на Linux означали патченное ядро OpenVZ, ручную правку sysctl.conf и отдельную веб-панель (OpenVZ Web Panel) на Ruby. Ядро OpenVZ так и не попало в основную ветку Linux. Проект фактически ушёл в коммерческий Virtuozzo, а базовые для него CentOS 6 и 7 давно без поддержки. Ставить OpenVZ на новый сервер сегодня не нужно.
Нишу заняли контейнеры LXC, которые работают на стандартном ядре через namespaces и cgroups. Proxmox сам перешёл с OpenVZ на LXC ещё в версии 4.0 в 2015 году. Сейчас контейнер в Proxmox делает то же, что VE в OpenVZ: общий с хостом kernel, минимальные накладные расходы, создание за секунды. Плюс веб-интерфейс, бэкапы, снапшоты и миграция — без отдельной панели.
Создание контейнера из консоли:
pveam update
pveam available --section system | grep debian
pveam download local debian-13-standard_13.X-Y_amd64.tar.zst # точное имя из вывода выше
pct create 101 local:vztmpl/debian-13-standard_13.X-Y_amd64.tar.zst \
--hostname ct101 --memory 1024 --cores 1 \
--rootfs local-lvm:8 \
--net0 name=eth0,bridge=vmbr0,ip=dhcp \
--unprivileged 1 --password
pct start 101
pct enter 101
По умолчанию создавайте непривилегированные контейнеры (--unprivileged 1): root внутри контейнера не равен root на хосте. Привилегированный контейнер нужен редко, например для монтирования NFS изнутри. Чаще ту же задачу решает точка монтирования с хоста (mp0).
LXC или виртуальная машина
| Критерий | Контейнер LXC | ВМ KVM |
|---|---|---|
| Ядро | Общее с хостом | Своё, любое |
| Гостевые ОС | Только Linux | Linux, Windows, BSD и другие |
| Накладные расходы | Минимальные | Небольшие, с VirtIO почти незаметные |
| Изоляция | Слабее: общее ядро | Сильнее: аппаратная виртуализация |
| Модули ядра, Docker внутри | Ограниченно, с оговорками | Без ограничений |
| Типичное применение | Веб-сервисы, DNS, базы, внутренние утилиты | Windows, чужие ядра, недоверенные клиенты, Docker/Kubernetes |
Docker официально рекомендуется запускать в виртуальной машине, а не в LXC-контейнере.
ISO или Debian: что выбрать
| Установка с ISO | Поверх Debian 13 | |
|---|---|---|
| Нужна консоль сервера | Да (физически или через IPMI/KVM-over-IP) | Нет, хватит SSH |
| ZFS на корневом разделе | Из коробки | Сложно, вручную |
| Разметка дисков | Типовая (LVM-thin или ZFS) | Любая своя |
| Мост vmbr0 | Создаётся автоматически | Нужно создать вручную |
| Время установки | 10–15 минут | 30–40 минут |
Типичные проблемы
| Симптом | Причина | Решение |
|---|---|---|
apt update: 401 Unauthorized от enterprise.proxmox.com | Включён enterprise-репозиторий без подписки | Выключить pve-enterprise и enterprise Ceph, подключить no-subscription |
Не открывается :8006, pve-cluster не стартует | Имя хоста разрешается в 127.0.1.1 | Исправить /etc/hosts, проверить hostname --ip-address, перезапустить pve-cluster |
| «KVM virtualisation configured, but not available» | VT-x/AMD-V выключены в BIOS или нет вложенной виртуализации | Включить в BIOS; для теста — снять галочку KVM hardware virtualization в Options ВМ (будет очень медленно) |
| После перезагрузки пропала сеть | Ошибка в /etc/network/interfaces или неверное имя интерфейса в bridge-ports | Зайти через консоль, сверить с ip -br link, выполнить ifreload -a |
| ВМ без сети | Нет моста или ВМ подключена не к тому мосту | Создать vmbr0, проверить net0 в Hardware ВМ |
| Контейнер не монтирует NFS/CIFS | Непривилегированный контейнер | Смонтировать на хосте и пробросить через точку монтирования mp0 |
Обновление с Proxmox VE 8
Если у вас работает 8.x на Debian 12, ветка уже без поддержки. Перед переходом на 9.x обновитесь до последней 8.4 и запустите встроенную проверку pve8to9 --full. Она покажет, что нужно исправить до смены репозиториев. Порядок действий описан в официальной инструкции Upgrade from 8 to 9. Перед обновлением обязательно сделайте бэкапы всех гостей и проверьте, что их можно восстановить.
Частые вопросы
Proxmox VE действительно бесплатный?
Да. Код открыт под AGPLv3, все функции доступны без оплаты, включая кластер, ZFS, Ceph и бэкапы. Подписка даёт доступ к enterprise-репозиторию с более проверенными обновлениями и техподдержку. Без неё вы пользуетесь репозиторием no-subscription и видите окно-напоминание при входе.
Можно ли поставить Proxmox на Ubuntu или AlmaLinux?
Нет. Proxmox VE поддерживается только на Debian той версии, на которой собран выпуск: для 9.x это Debian 13. На Ubuntu, AlmaLinux или Rocky Linux его не поставить. Если нужна виртуализация на RHEL-системе, смотрите на libvirt с Cockpit или на OpenNebula.
Сколько нужно памяти?
Самой системе хватает 2 ГБ, остальное считается по гостям: сумма памяти всех ВМ и контейнеров плюс запас. С ZFS прибавьте память под кеш ARC — в Proxmox 9 при установке с ISO его размер по умолчанию ограничивается, но на нагруженных хранилищах лучше настроить лимит под свою задачу. Для небольшого домашнего сервера разумный минимум — 16 ГБ.
Можно ли убрать окно «No valid subscription»?
Можно правкой JavaScript-файла, но делать этого не стоит. Правка пропадает при каждом обновлении интерфейса, а ошибка в ней ломает вход в панель. Окно ни на что не влияет: достаточно нажать OK.
Как перенести контейнеры со старого OpenVZ?
Прямой конвертации из OpenVZ на CentOS 6 в LXC на Proxmox 9 нет. Надёжнее создать новый LXC-контейнер из актуального шаблона и перенести в него данные и конфигурацию сервисов через rsync. Заодно уйдёте со старой ОС внутри контейнера.
Можно ли открыть порт 8006 в интернет?
Нежелательно даже с двухфакторной аутентификацией. Панель даёт полный контроль над всеми гостями, а ошибки в веб-сервисах находят регулярно. Правильный вариант — доступ через VPN (WireGuard, OpenVPN) или белый список адресов в firewall.