Как отключить нежелательную попытку загрузки iPXE в Libvirt / qemu-kvm?

Каким-то образом после обновления до 12.04 мои виртуальные машины всегда загружаются при первой попытке загрузки из сети. См. Это:

virt-manager screenshot

, в то время как у меня нет набора конфигурации PXE:

PXE boot configuration

Я попытался:

  • отключить SPICE, изменив emulator на /usr/bin/kvm с /usr/bin/kvm-spice, отредактировав XML.
  • Ctrl + B для настройки iPXE, но это не позволяет отключить это как параметр загрузки.
  • установка другого типа NIC - не вариант, мне нужно virtio по соображениям производительности. Однако e1000e тоже не работает.
  • Удаление NIC: работает. Однако мне нужна сеть.
  • Погуглил. Жесткий. Многое о неудачных настройках загрузки PXE.

Не большая проблема, но она увеличивает время загрузки здесь на 50-100% (загрузка с SSD), так что это относительно долго и раздражает меня.

Как я могу отключить это и загрузить напрямую с виртуального жесткого диска?

12
задан 20 September 2012 в 17:39

5 ответов

Мне удалось предотвратить это с помощью «-net none»:

# qemu-system-i386 -net none
0
ответ дан 20 September 2012 в 17:39

Мои эксперименты по той же проблеме дали мне несколько советов:

Пакет kvm-ipxe устанавливает несколько дополнительных ПЗУ PXE в /usr/share/qemu/:

pxe-e1000.rom
pxe-ne2k_isa.rom
pxe-pcnet32.rom
pxe-rtl8139.rom
pxe-virtio.rom

Каким-то образом они автоматически обнаруживаются и используется seabios при загрузке с одного из этих сетевых адаптеров. Когда я делаю chmod a= pxe*.rom для этих файлов и запускаю виртуальную машину, я получаю сообщение об ошибке

kvm: pci_add_option_rom: failed to find romfile "pxe-rtl8139.rom"

, но она загружается чисто и без PXE.

0
ответ дан 20 September 2012 в 17:39

Мне удалось обойти это в Ubuntu 12.04, передав следующие опции qemu-kvm в командной строке (установка пустого romfile - хитрость):

-netdev user,id=hostnet0 -device virtio-net-pci,romfile=,netdev=hostnet0
0
ответ дан 20 September 2012 в 17:39

Из ваших снимков видно, что, скорее всего, это связано с BIOS BIOS. Конфигурация виртуальной машины не должна перезаписывать настройки SeaBIOS, что должно вызывать первую загрузку виртуальной машины с PXE.

Для первого возможного решения попробуйте посмотреть, можете ли вы войти в BIOS виртуальной машины и отредактировать имеющиеся там параметры.

ПРИМЕЧАНИЕ: Будет продолжать обновлять ответ, пока мое исследование раскрывает больше возможных решений или причин.

[EDIT # 1]: Информацию о том, как настроить порядок загрузки в SeaBIOS , можно найти здесь . Это должно решить проблему.

0
ответ дан 20 September 2012 в 17:39

Краткий ответ

Обновление до libvirt 0.9.10+ (доступно в Quantal) и добавление опции <rom bar='off'/> в конфигурацию интерфейса определения XML машины.

Длинный ответ

Теперь, когда я на самом деле использую опцию загрузки iPXE, я вижу, что задержка, возникающая на экране SeaBIOS, не является реальной попыткой загрузки. Он просто загружает дополнительное сетевое ПЗУ Virtio, и это занимает несколько раздражающих секунд, то есть еще не предпринимается попытка загрузки iPXE . Это заставило меня снова прочитать документацию по libvirt, и я сделал интересное открытие.

Насколько я мог найти, начиная с libvirt 0.9.7, поведение изменилось для загрузки дополнительных ПЗУ интерфейса по умолчанию. Ubuntu 11.10 поставляется с 0.9.2, Ubuntu 12.04 поставляется с 0.9.8. Это определенно имеет смысл, почему я вижу, что это происходит после обновления до 12.04.

Более того, это стало настраиваемым в libvirt версии 0.9.10 с опцией <rom bar='off'/> в XML! (см. здесь ). Однако эта версия libvirt недоступна в Ubuntu 12.04, и мне придется обновить ее до 12.10 или перенести ее обратно. Это заставляет Ubuntu 12.04 проваливаться между двумя стульями.

Другие обходные пути - удаление файлов дополнительного ПЗУ, как указано @ A.H. ' и изменение «файловой системы» SeaBIOS, как указано @NlightNFotis. Тем не менее, оба способа в основном полностью отключают iPXE, и он не настраивается (только при использовании virtio сетевых устройств). Поскольку у меня смешанная настройка компьютеров iPXE и ​​компьютеров, отличных от PXE, мне действительно нужно, чтобы это можно было настраивать.

0
ответ дан 20 September 2012 в 17:39

Другие вопросы по тегам:

Похожие вопросы: