Не удается запустить виртуальную машину KVM из-за отсутствия BIOS

11

Всякий раз, когда я пытаюсь запустить виртуальную машину KVM в Ubuntu 14.04 с помощью команды "kvm", я получаю следующую ошибку:

qemu: could not load PC BIOS 'bios-256k.bin'

Я искал этот файл и обнаружил, что он существует в каталоге / usr / share / qemu как символическая ссылка на "../seabios/bios-256k.bin". Когда я пытаюсь просмотреть содержимое этого каталога с помощью ls, система говорит, что такого файла или каталога нет. Тем не менее, я могу перейти в этот каталог и просмотреть файл BIOS. Когда я набираю «ls ..» из каталога qemu, единственным возвращаемым элементом является «qemu». Я вошел в систему как пользователь root, поэтому я должен видеть все папки в / usr / share. Кто-нибудь знает, что здесь происходит?

Эрик
источник
Может, попробовать переустановить? launchpad.net/ubuntu/+source/seabios
mikeserv
Я apt-get purge'd и переустановил все пакеты, и я все еще получаю ту же ошибку. Я думаю, что это может быть ошибка разрешений? Я не знаю, как это возможно, хотя я root.
Эрик
2
Я думаю, я мог бы это исправить! Однако решение действительно странное. Я удалил старую символическую ссылку и создал новую с абсолютным, а не относительным путем. Я должен был сделать это для нескольких других файлов.
Эрик
Ну, это хорошо - и плохо. Поиграйте с этим ls -lв этой области. Если ваши цвета настроены как мои, плохие ссылки будут выделяться красным.
mikeserv
Я бы использовал virshи остановил / запустил ваши экземпляры KVM с этим.
SLM

Ответы:

6
yum install seabios

работал на меня

user177555
источник
2
На CentOS это "yum install seabios-bin" для той же проблемы. По какой - то причине QEMU пакеты делают символические ссылки на файлы , устанавливаемые seabios приемниками RPM, но не объявлять зависимость
Akom
4

Включение -L /path/to/biosв аргументы (как указано ниже. Однако вам не понадобится первый шаг) заставит Qemu искать в указанном каталоге биос.

Так и будет: qemu-system-x86_64 -L /usr/share/qemu/вместе с остальными аргументами. Это означает, что вам не нужно менять символическую ссылку.

Источник

MrFregg
источник
0

Для Centos 7 сам файл отсутствовал (со сломанными символическими ссылками) из seabios. Я обнаружил , что при xen-runtimeусловии , bios-256k.binс yum whatprovides '*/bios-256k.bin' тем не менее пакет был конфликтующие файлы с (несущественных) файлы QEMU. Это следующие шаги, которые мне понадобились, чтобы заставить работать qemu:

yum install --downloadonly xen-runtime --downloaddir=.
rpm -i --replacefiles xen-hypervisor* xen-runtime*
qemu-system-x86_64 -L /usr/share/qemu-xen/qemu <your args>
Брайс Гуинта
источник
-1
sudo ln -sf /usr/share/qemu/bios.bin /usr/share/qemu/bios-256k.bin

и использовать

-L /usr/share/qemu/

в qemuкомандной строке, если это необходимо.

Нил МакГилл
источник