При создании виртуальной машины в Proxmox VE параметр Machine по умолчанию предлагает i440fx, и именно здесь многие администраторы впервые сталкиваются с проблемой: проброшенная видеокарта не стартует, Windows 11 отказывается устанавливаться, а PCI-устройство видится гостевой системой с ошибкой. Причина почти всегда кроется в выбранном типе чипсета виртуальной машины — i440fx или q35 эмулируют разные аппаратные платформы, и этот выбор напрямую влияет на проброс устройств, поддержку UEFI и совместимость с современными ОС.

Разница между этими типами машин не косметическая. i440fx воспроизводит старый чипсет Intel 440FX образца 1996 года с шиной PCI, тогда как q35 эмулирует более современный чипсет Intel Q35 с полноценной поддержкой PCIe. От этого зависят адресация устройств, работа IOMMU-групп и сама возможность корректного PCIe passthrough. В этой статье разберём, чем отличаются варианты, когда какой выбирать и как безопасно сменить тип машины на уже работающей ВМ.

Что такое тип машины (machine type) в Proxmox

Тип машины в Proxmox VE определяет, какое виртуальное «железо» увидит гостевая операционная система: чипсет, контроллеры шин, мосты PCI/PCIe и базовую топологию устройств. Параметр задаётся при создании ВМ на вкладке System в поле Machine и хранится в конфигурационном файле /etc/pve/qemu-server/<VMID>.conf в строке вида machine: q35.

Фактически это настройка гипервизора QEMU/KVM, который лежит в основе Proxmox. QEMU умеет эмулировать несколько аппаратных платформ, но в практической работе используются две:

  • 🖥️ i440fx — классическая платформа с шиной PCI, исторический вариант по умолчанию;
  • q35 — современная платформа с нативной поддержкой PCIe и более гибкой топологией устройств;
  • 🔧 pc — просто алиас на актуальную версию i440fx, отдельным типом не является;
  • 📌 версии с суффиксом (например, pc-q35-8.1) — закреплённая версия машины для стабильности при миграции.

Выбор типа машины не влияет на производительность процессора или дисков напрямую — гостевая система в обоих случаях работает через аппаратную виртуализацию KVM. Различия проявляются в том, как устройства подключаются к виртуальной шине и какие возможности доступны гостю.

i440fx: классический чипсет с шиной PCI

Платформа i440fx эмулирует чипсет Intel 440FX — реальное «железо» середины 1990-х годов. Все устройства в такой ВМ подключаются к классической шине PCI (не PCIe), а топология фиксирована и предсказуема. Именно эта простота десятилетиями делала i440fx вариантом по умолчанию в QEMU.

Для гостевой системы это выглядит как старый, но максимально совместимый компьютер. Практически любая ОС — от древних Windows до современных Linux-дистрибутивов — без проблем определяет такое оборудование, потому что драйверы для шины PCI существуют во всех системах.

Ограничения проявляются при пробросе устройств. Шина PCI имеет ограниченное адресное пространство и не поддерживает современные механизмы изоляции устройств так, как это делает PCIe. При пробросе видеокарты в ВМ на i440fx устройство оказывается на виртуальной PCI-шине, что для части гостевых систем и драйверов становится проблемой — особенно в связке с UEFI (OVMF).

💡

i440fx — это максимальная совместимость со старыми ОС и простая топология, но без нативного PCIe и с ограничениями при пробросе устройств.

q35: современная платформа с PCIe

Тип машины q35 эмулирует чипсет Intel Q35 — платформу конца 2000-х годов с полноценной шиной PCI Express. Виртуальные устройства здесь подключаются через корневые порты PCIe, что соответствует архитектуре любого современного физического компьютера.

Это даёт несколько практических преимуществ. Во-первых, проброшенные PCI-устройства (видеокарты, сетевые адаптеры, HBA-контроллеры) оказываются на нативной PCIe-шине, что критично для корректной работы многих драйверов. Во-вторых, q35 лучше сочетается с OVMF (UEFI) — связка q35 + OVMF фактически стала стандартом для современных ВМ с пробросом оборудования.

Дополнительно q35 предоставляет больше слотов для устройств и более гибкую топологию: при необходимости можно добавлять отдельные PCIe root ports. Для сложных конфигураций с несколькими проброшенными устройствами это заметно упрощает жизнь.

📊 Какой тип машины вы используете в Proxmox чаще всего?
i440fx — по умолчанию, не меняю
q35 — для всех новых ВМ
Зависит от задачи
Не знал(а) о разнице до этой статьи

Сравнение i440fx и q35: таблица

Сведём ключевые различия в одну таблицу, чтобы выбор был наглядным.

Критерийi440fxq35
Шина устройствPCI (классическая)PCI Express
Проброс GPU/PCI-устройствРаботает, но с ограничениямиРекомендуемый вариант
Совместимость с OVMF (UEFI)Есть, но связка менее типичнаПолная, стандартная связка
Поддержка старых ОСМаксимальнаяОграниченная (очень старые ОС могут не иметь драйверов PCIe)
Топология устройствПростая, фиксированнаяГибкая, дополнительные root ports

Из таблицы виден общий принцип: i440fx выигрывает в совместимости с легаси, q35 — во всём, что связано с современным оборудованием и пробросом. Разницы в скорости работы процессора или дисковой подсистемы между ними нет — обе платформы используют одни и те же virtio-драйверы.

Когда выбирать i440fx

Несмотря на «возраст» платформы, сценарии, где i440fx остаётся оправданным выбором, существуют. Вам стоит оставить или выбрать этот тип машины в следующих случаях:

  • 📦 Гостевая ОС — старая система (Windows XP, старые дистрибутивы Linux, унаследованный софт), где важна максимальная совместимость с классической PCI-шиной;
  • 🔄 ВМ мигрирована из другой среды (например, импортирована с VMware или старого QEMU), и менять тип машины рискованно из-за переустановки драйверов в госте;
  • 🧩 ВМ простая, без проброса устройств, и уже стабильно работает на i440fx — менять платформу без необходимости не имеет смысла;
  • 🛠️ Требуется воспроизвести окружение, идентичное старому физическому серверу, для тестирования.

Для обычных серверных Linux-ВМ без проброса оборудования выбор между платформами вообще малозаметен — nginx или база данных не почувствуют разницы между PCI и PCIe. Поэтому если у вас парк ВМ на i440fx работает годами, массовая миграция на q35 не даст никакого выигрыша.

⚠️ Внимание: смена типа машины на существующей ВМ меняет виртуальную топологию устройств. Windows может воспринять это как замену материнской платы — вплоть до переустановки драйверов, потери активации или синего экрана при загрузке. Перед изменением обязательно сделайте снапшот или полный бэкап ВМ.

Когда выбирать q35

Для новых виртуальных машин в большинстве современных сценариев разумным выбором будет q35. Прежде всего это касается случаев, когда планируется PCI passthrough — проброс видеокарты для виртуального рабочего места, HBA-контроллера в NAS на TrueNAS или сетевой карты в виртуальный маршрутизатор.

Вторая весомая причина — UEFI. Если гостевая система устанавливается с BIOS типа OVMF (UEFI) — а это обязательное условие для Windows 11 с её требованиями к TPM 2.0 и Secure Boot, — то q35 обеспечивает наиболее предсказуемую работу. Связка q35 + OVMF + TPM 2.0 является фактическим стандартом для виртуальных машин с Windows 11 в Proxmox.

Также q35 предпочтителен, если вы заранее не знаете, понадобится ли проброс устройств в будущем. Сменить тип машины потом можно, но это рискованная операция для гостевой ОС — проще сразу заложить современную платформу.

💡

Создавая новую ВМ, выберите q35 сразу на этапе мастера создания — на вкладке System в поле Machine. Это бесплатная «страховка» на случай будущего проброса оборудования.

Как проверить и сменить тип машины

Узнать текущий тип машины можно в веб-интерфейсе Proxmox: выберите ВМ, откройте раздел Hardware — строка Machine покажет значение вроде pc-i440fx-8.1 или q35. Через консоль хоста та же информация доступна командой:

qm config <VMID> | grep machine

Изменить тип можно либо в веб-интерфейсе (Hardware → Machine → Edit, при выключенной ВМ), либо командой:

qm set <VMID> --machine q35

☑️ Безопасная смена типа машины на q35

Выполнено: 0 / 6

Здесь стоит кратко пояснить каждый шаг. Снапшот нужен потому, что откат типа машины обратно не всегда возвращает систему в исходное состояние — Windows могла уже перенастроить драйверы. Выключение обязательно: тип машины нельзя изменить на лету, QEMU формирует топологию устройств при старте ВМ. После первой загрузки на новой платформе дайте гостевой ОС несколько минут на обнаружение «нового» оборудования.

⚠️ Внимание: если ВМ использует проброс GPU с монитором, подключённым напрямую к видеокарте, после смены типа машины проверьте, что устройство осталось привязано к ВМ и его PCI-адрес не конфликтует с новой топологией. В отдельных случаях может потребоваться перенастройка параметра hostpci0 в конфигурации.

Влияние на проброс GPU и производительность

Самый частый практический вопрос — почему для проброса видеокарты все руководства рекомендуют именно q35. Дело в том, что современные видеокарты и их драйверы проектируются под шину PCIe. Когда карта проброшена в ВМ на i440fx, она оказывается за PCI-мостом, и часть драйверов работает в такой конфигурации некорректно или нестабильно. На q35 устройство получает нативное PCIe-подключение, что соответствует ожиданиям драйвера.

Влияния на «сырую» производительность процессора, памяти и virtio-дисков между платформами нет — эти компоненты работают через паравиртуализированные драйверы, которым безразлична эмулируемая шина. Разница проявляется только в подключении физических устройств и в совместимости с гостевыми системами.

Техническая деталь

IOMMU-группы и тип машины:IOMMU-группы определяются физическим оборудованием хоста, а не типом машины ВМ — q35 не влияет на разбиение устройств в группы на хосте. Однако внутри гостя q35 позволяет размещать проброшенные устройства на отдельных PCIe root ports, что упрощает топологию при пробросе нескольких устройств и улучшает совместимость с драйверами, чувствительными к структуре шины.

Для типовой ВМ с проброшенной видеокартой рекомендуемый набор настроек выглядит так: machine: q35, bios: ovmf, добавленный EFI-диск, а для Windows 11 — ещё и TPM 2.0. Такая конфигурация максимально приближает виртуальную машину к реальному современному ПК.

💡

Для новых ВМ с пробросом оборудования, UEFI или Windows 11 выбирайте q35. i440fx оставляйте для старых систем и уже работающих машин, где смена платформы ничего не даст.

Частые вопросы

Влияет ли выбор i440fx или q35 на производительность ВМ?

Нет, на производительность процессора, памяти и virtio-устройств тип машины не влияет. Различия касаются топологии шины (PCI против PCIe), совместимости с пробросом оборудования и работы с UEFI. Дисковая и сетевая подсистемы на virtio работают одинаково на обеих платформах.

Можно ли сменить i440fx на q35 на работающей ВМ без потери данных?

Технически — да, но только на выключенной ВМ и обязательно после создания снапшота или бэкапа. Гостевая ОС увидит «новое железо»: Linux обычно переносит это безболезненно, а Windows может потребовать переустановки драйверов и в отдельных случаях теряет активацию. Гарантировать беспроблемный переход нельзя, поэтому резервная копия обязательна.

Что выбрать для Windows 11 в Proxmox?

Рекомендуемая конфигурация: тип машины q35, BIOS OVMF (UEFI), добавленный EFI-диск и виртуальный TPM 2.0. Такая связка удовлетворяет системным требованиям Windows 11 и обеспечивает корректную работу Secure Boot.

Что означают версии вроде pc-q35-8.1 в настройках?

Это «закреплённая» версия типа машины, соответствующая конкретному релизу QEMU. Она фиксирует поведение виртуальной платформы, что важно при миграции ВМ между хостами с разными версиями Proxmox. Для одиночного хоста можно использовать просто q35, для кластера с живой миграцией версионированные типы безопаснее.

Нужно ли менять тип машины на q35, если проброс устройств не планируется?

Нет, необходимости нет. Обычная серверная ВМ на Linux без passthrough не получит никаких преимуществ от смены платформы. Если машина стабильно работает на i440fx, разумнее оставить всё как есть и не рисковать работоспособностью гостевой системы.