GNU/Linux >> Tutoriales Linux >  >> Linux

Error crítico de meditación de Virtualbox Guru en Linux

He estado probando KVM extensamente esta semana. Hoy aprendí que KVM y Oracle VirtualBox no funcionan al mismo tiempo. Hasta el día de hoy, no he tenido la oportunidad de usar dos aplicaciones de virtualización a la vez, por lo que desconozco por completo que KVM y virtualbox no se ejecutan simultáneamente en Linux. Cuando se está ejecutando una de las instancias de KVM, inicié una máquina virtual desde VirtualBox y no se inició, pero mostró un cuadro de error titulado - Virtualbox Guru Meditation .

Tenga en cuenta que KVM y VirtualBox funcionan en conjunto sin desinstalar a nadie. Sin embargo, no puedo usarlos al mismo tiempo. Este error es nuevo para mí, así que pensé que publicar esta guía aquí ayudaría a alguien.

KVM y VirtualBox no funcionan al mismo tiempo

Aquí está el mensaje de error completo cuando intenté iniciar la VM desde Oracle Virtualbox cuando ya se estaba ejecutando una máquina invitada KVM:

Virtualbox Guru Meditation

A critical error has occurred while running the virtual machine and the machine execution has been stopped.

For help, please see the Community section on https://www.virtualbox.org or your support contract. Please provide the contents of the log file VBox.log and the image file VBox.png, which you can find in the /home/sk/VirtualBox VMs/Ubuntu 20.04 Server/Logs directory, as well as a description of what you were doing when this error happened. Note that you can also access the above files by selecting Show Log from the Machine menu of the main VirtualBox window.

Press OK if you want to power off the machine or press Ignore if you want to leave it as is for debugging. Please note that debugging requires special knowledge and tools, so it is recommended to press OK now.

Luego detuve el invitado KVM, cerré la aplicación KVM e inicié VM desde virtualbox, ¡funcionó!

También lo probé al revés. Inicié una VM desde virtualbox y luego inicié un invitado KVM, pero el invitado KVM no se inicia.

Error starting domain: internal error: process exited while connecting to monitor: ioctl(KVM_CREATE_VM) failed: 16 Device or resource busy
2020-07-08T11:28:43.524617Z qemu-system-x86_64: failed to initialize KVM: Device or resource busy

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 75, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 111, in tmpcb
    callback(*args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 66, in newfn
    ret = fn(self, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/domain.py", line 1279, in startup
    self._backend.create()
  File "/usr/lib/python3/dist-packages/libvirt.py", line 1234, in create
    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirt.libvirtError: internal error: process exited while connecting to monitor: ioctl(KVM_CREATE_VM) failed: 16 Device or resource busy
2020-07-08T11:28:43.524617Z qemu-system-x86_64: failed to initialize KVM: Device or resource busy

Luego detuve la máquina virtual, cerré la aplicación Virtualbox e inicié una instancia de KVM, ¡funcionó!

Incluso verifiqué si los módulos kvm y vbox se estaban ejecutando usando el comando "lsmod".

Encuentre módulos KVM con el comando lsmod:

$ sudo lsmod | grep kvm

Salida de muestra:

kvm_intel             282624  0
kvm                   663552  1 kvm_intel

Encuentra módulos de virtualbox:

$ sudo lsmod | grep vbox

Salida de muestra:

vboxnetadp             28672  0
vboxnetflt             28672  0
vboxdrv               487424  2 vboxnetadp,vboxnetflt

Todos los módulos están cargados.

Después de buscar en el foro de Virtualbox, me di cuenta de que este error ocurre si ejecutamos simultáneamente varios hipervisores al mismo tiempo en el mismo host.

Entonces, ¿cómo solucionar el error de meditación de Virtualbox Guru en Linux?

En realidad, no hay FIX. Debe usar cualquier hipervisor a la vez. Las extensiones de virtualización de hardware Intel VT-x/AMD-V no se pueden usar desde varios hipervisores diferentes que se ejecutan simultáneamente en el mismo host. Debe ejecutar solo hipervisor en un solo host. Si desea utilizar otro, cierre el hipervisor que se está ejecutando actualmente e inicie el otro.

Otra razón para la meditación del gurú de virtualbox es que VT-x podría estar deshabilitado en el BIOS . Asegúrate de haberlo habilitado en tu bios. Consulte el manual del fabricante de su sistema para habilitar VT en BIOS.

No puedo usar KVM y VirtualBox al mismo tiempo

No tengo ningún problema con KVM y Virtualbox en mi sistema Ubuntu 20.04. Puedo ser capaz de ejecutar ambos uno al lado del otro.

Algunos de ustedes pueden encontrar este error al ejecutar KVM y Virtualbox en el mismo host:

VERR_VMX_IN_VMX_ROOT_MODE

Si no puede usar Virtualbox junto con KVM, puede deshabilitar temporalmente los módulos kvm y luego habilitarlos cuando lo desee.

Descargue los módulos KVM en ejecución usando el comando:

$ sudo rmmod kvm-intel

Si es un sistema AMD, use este comando en su lugar:

$ sudo rmmod kvm-amd

Alternativamente, puede usar los siguientes comandos:

$ sudo modprobe -r kvm_intel
$ sudo modprobe -r kvm

En AMD:

$ sudo modprobe -r kvm_amd
$ sudo modprobe -r kvm

Ahora intente iniciar las máquinas virtuales de Virtualbox. Debería funcionar ahora.

Habilitar módulos KVM

Para habilitar los módulos KVM, primero debe encontrarlos donde están ubicados en su disco. Para hacerlo, ejecute:

$ sudo updatedb
$ sudo locate kvm

Debería ver una salida como la siguiente.

/lib/modules/5.4.0-39-generic/kernel/arch/x86/kvm
/lib/modules/5.4.0-39-generic/kernel/arch/x86/kvm/kvm-amd.ko
/lib/modules/5.4.0-39-generic/kernel/arch/x86/kvm/kvm-intel.ko
/lib/modules/5.4.0-39-generic/kernel/arch/x86/kvm/kvm.ko
/lib/modules/5.4.0-39-generic/kernel/drivers/gpu/drm/i915/gvt/kvmgt.ko
/lib/modules/5.4.0-39-generic/kernel/drivers/ptp/ptp_kvm.ko
/lib/modules/5.4.0-40-generic/kernel/arch/x86/kvm
/lib/modules/5.4.0-40-generic/kernel/arch/x86/kvm/kvm-amd.ko
/lib/modules/5.4.0-40-generic/kernel/arch/x86/kvm/kvm-intel.ko
[...]

Busque "kvm-intel.ko " y "kvm.ko " entradas. Habilite estos dos módulos usando los comandos:

$ sudo insmod /lib/modules/`uname -r`/kernel/arch/x86/kvm/kvm.ko
$ sudo insmod /lib/modules/`uname -r`/kernel/arch/x86/kvm/kvm-intel.ko

En sistemas AMD, reemplace "kvm-intel.ko " con "kvm-amd.ko ".

Ahora puede ejecutar instancias de KVM. Recuerde que las máquinas virtuales de virtualbox no se iniciarán hasta que apague todas las instancias de KVM.

Referencia:

  • Foro de Virtualbox

Lectura relacionada:

  • Cómo solucionar el error de VirtualBox "No se instaló el controlador del kernel (rc=-1908)" en Ubuntu
  • Resolver el error de Virtualbox "No se pueden cambiar los usuarios de vbox de grupo para el dispositivo /dev/vboxdrv"
  • CentOS 8 VM no funciona en VirtualBox 5.2 en Ubuntu 18.04
  • Resolver "Código de resultado:NS_ERROR_FAILURE (0x80004005)" Error de VirtualBox en Arch Linux

Linux
  1. Por qué Linux es fundamental para la computación perimetral

  2. Instalación de VirtualBox 4.2 en Linux Mint 14

  3. Instale VirtualBox 4.3 en Linux Mint 15 / Linux Mint 14

  4. Error al inicializar la tarjeta SD en Linux

  5. Linux KVM en un Virtualbox

Cómo migrar máquinas virtuales de Virtualbox a máquinas virtuales KVM en Linux

Error crítico de meditación de Virtualbox Guru en Linux

Cómo migrar máquinas virtuales de Virtualbox a máquinas virtuales KVM en Linux

Cómo usar máquinas virtuales Virtualbox en KVM en un sistema Linux

Cómo instalar Linux Mint en VirtualBox

Instalar Windows 10 en Linux con VirtualBox