libvirt - может загружаться только с устройств IDE?

libvirt - может загружаться только с устройств IDE?

Я использую Ubuntu 18.04 в качестве хоста и Windows 10 в качестве гостя, использую QEMU/KVM в качестве гипервизора и libvirt в качестве инструмента управления.

У меня есть nvme ssd /dev/nvmewin, который я хочу передать гостевой системе Windows (гостевая система будет загружаться с этого устройства)

Я также использую OVMF для загрузки в режиме UEFI.

В настоящее время это работает только если устройство представлено как устройство IDE. Гость не загрузится, если устройство находится под SCSI, SATA или Virtio (синий экран с кодом ошибки INACCESSIBLE_BOOT_DEVICE)

Я мотивирую использование другой шины тем, что считаю, что она обеспечит лучшую производительность ввода-вывода.

Итак, мой вопрос:

  • Правда ли, что использование другой шины обеспечит лучшую производительность ввода-вывода?
  • Если да, то как мне открыть устройство на другой шине и загрузить его?

Вот часть конфигурации моего домена для этого устройства:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw' cache='none' io='native'/>
  <source dev='/dev/nvmewin'/>
  <target dev='hda' bus='ide'/>
  <address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>

решение1

Правда ли, что использование другой шины обеспечит лучшую производительность ввода-вывода?

Да. Я получил почти родную скорость с шиной virtio с атрибутами cache=none io=nativeHypervisor по умолчанию cacheи ioнастройками, кажется, что она быстрее при тестировании с помощью Crystal Disk Mark, но на самом деле кэш включен, поэтому к результатам теста следует относиться с долей скептицизма.

Если да, то как мне открыть устройство на другой шине и загрузить его?

Нужно просто установить драйверы шины virtio. В ядре Windows их нет, поэтому Windows не сможет найти диски во время загрузки, если драйверы не установлены.

Более подробную информацию можно найтиздесь

Связанный контент