После установки Proxmox VE обычно делают три вещи:
- настраивают корректные репозитории;
- обновляют систему;
- при необходимости включают PCI passthrough.
Ниже только шаги, соответствующие официальной документации.
1. Проверить версию и релиз
Перед настройкой репозиториев проверь версию Proxmox VE и codename Debian:
pveversion -v
cat /etc/os-release
Строки репозиториев зависят от версии PVE и Debian.
2. Репозитории Proxmox
Отключить enterprise-репозиторий (без подписки)
В PVE 8 это обычно файл:
/etc/apt/sources.list.d/pve-enterprise.list
Закомментировать строку:
# deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
В PVE 9 используется deb822-формат, например /etc/apt/sources.list.d/pve-enterprise.sources.
Добавить no-subscription репозиторий
Для PVE 8 (Debian bookworm):
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
Для PVE 9 (Debian trixie) официальный формат обычно deb822:
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Для другого релиза — codename из официальной таблицы репозиториев.
Ceph-репозиторий
Нужен только если реально используется Ceph. Версия Ceph должна соответствовать версии Proxmox VE.
3. Обновить систему
apt update
apt full-upgrade
reboot
4. Сообщение "No valid subscription"
Информационное уведомление при использовании pve-no-subscription. Официально поддерживаемого способа убрать баннер без подписки нет. Для production — подписка и enterprise-репозиторий.
5. PCI Passthrough
Предусловия
- CPU/плата поддерживают VT-d (Intel) или AMD-Vi/IOMMU (AMD);
- включено в BIOS/UEFI;
- устройство в отдельной IOMMU-группе.
Включить IOMMU в kernel cmdline (GRUB)
Файл:
/etc/default/grub
На старых kernel для Intel:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"
На AMD и новых kernel IOMMU часто включается автоматически, но явный параметр остаётся рабочим вариантом:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
Применить:
update-grub
reboot
Если используется не GRUB, — соответствующая процедура из wiki Proxmox.
Подгрузить VFIO-модули
cat >/etc/modules-load.d/vfio.conf <<'EOF'
vfio
vfio_iommu_type1
vfio_pci
EOF
update-initramfs -u -k all
reboot
Проверка IOMMU
dmesg | grep -E "DMAR|IOMMU"
Проверка IOMMU-групп
find /sys/kernel/iommu_groups/ -type l
Привязка устройства к vfio-pci
- Узнать PCI IDs:
lspci -nn
- Добавить IDs в конфиг:
echo "options vfio-pci ids=10de:1b80,10de:10f0" >/etc/modprobe.d/vfio.conf
update-initramfs -u -k all
reboot
Замени IDs на свои.
Назначить устройство ВМ
qm set <VMID> -hostpci0 0000:01:00,pcie=1
Для диска по /dev/disk/by-id:
qm set <VMID> -scsi1 /dev/disk/by-id/<DISK-ID>