Impossible de démarrer la machine virtuelle KVM en raison d'un BIOS manquant

11

Chaque fois que j'essaie de démarrer une machine virtuelle KVM sur Ubuntu 14.04 avec la commande "kvm", j'obtiens l'erreur suivante:

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

J'ai recherché ce fichier et j'ai découvert qu'il existe dans le répertoire / usr / share / qemu en tant que lien symbolique vers "../seabios/bios-256k.bin". Lorsque j'essaie d'afficher le contenu de ce répertoire avec ls, le système dit qu'il n'y a pas de fichier ou de répertoire de ce type. Cependant, je peux accéder à ce répertoire et voir le fichier BIOS. Lorsque je tape "ls .." dans le répertoire qemu, le seul élément renvoyé est "qemu". Je suis connecté en tant que root, donc je devrais pouvoir voir tous les dossiers dans / usr / share. Quelqu'un sait-il ce qui se passe ici?

Eric
la source
Essayez peut-être de réinstaller? launchpad.net/ubuntu/+source/seabios
mikeserv
J'ai apt-get purgé et réinstallé tous les packages et j'obtiens toujours la même erreur. Je pense que cela pourrait être une erreur d'autorisation? Je ne sais pas comment c'est possible car je suis root.
Eric
2
Je pense que j'aurais pu le réparer! Cependant, la solution est vraiment bizarre. Ce que j'ai fait, c'est supprimer l'ancien lien symbolique et en créer un nouveau avec un chemin absolu au lieu d'un chemin relatif. J'ai dû le faire pour quelques autres fichiers également.
Eric
Eh bien, c'est bon - et mauvais. Jouez avec ls -ldans ce domaine. Si vos couleurs sont configurées comme les miennes, les mauvais liens ressortiront en rouge.
mikeserv
Je voudrais utiliser virshet arrêter / démarrer vos instances KVM avec cela.
slm

Réponses:

6
yum install seabios

travaillé pour moi

user177555
la source
2
Sur CentOS, c'est "yum install seabios-bin" pour le même problème. Pour une raison quelconque, les packages qemu créent des liens symboliques vers des fichiers installés par seabios-bin RPM, mais ne déclarent pas de dépendance
Akom
4

L'inclusion -L /path/to/biosdans les arguments (comme indiqué ci-dessous. Cependant, vous n'aurez pas besoin de la première étape) fera Qemu chercher dans le répertoire spécifié pour le bios.

Ce serait donc: qemu-system-x86_64 -L /usr/share/qemu/avec le reste des arguments. Cela signifie que vous n'aurez pas à modifier le lien symbolique.

La source

MrFregg
la source
0

Pour Centos 7, le fichier lui-même manquait (avec des liens symboliques brisés) dans seabios. J'ai trouvé que xen-runtimefourni bios-256k.binavec yum whatprovides '*/bios-256k.bin' cependant le paquet avait des fichiers en conflit avec des fichiers qemu (sans importance). Voici les étapes suivantes dont j'avais besoin pour faire fonctionner 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>
Bryce Guinta
la source
-1
sudo ln -sf /usr/share/qemu/bios.bin /usr/share/qemu/bios-256k.bin

et utilise

-L /usr/share/qemu/

en qemuligne de commande si nécessaire.

Neil McGill
la source