Критическая ошибка Virtualbox Guru Meditation в Linux
На этой неделе я тщательно тестировал KVM. Сегодня я узнал, что KVM и Oracle VirtualBox не работают одновременно. До сегодняшнего дня у меня не было возможности использовать два приложения виртуализации одновременно, поэтому я совершенно не знаю, что KVM и виртуальный бокс не работают одновременно в Linux. Когда один из экземпляров KVM запущен, я запустил виртуальную машину из VirtualBox, и она не запустилась, но показала окно с ошибкой под названием - Медитация Virtualbox Guru .
Обратите внимание, что KVM и VirtualBox работают бок о бок, не удаляя никого. Однако я не могу использовать их одновременно. Эта ошибка для меня новая, поэтому я решил, что размещение этого руководства здесь кому-нибудь поможет.
KVM и VirtualBox не работают одновременно
Вот полное сообщение об ошибке, когда я пытался запустить виртуальную машину из виртуального бокса Oracle, когда гостевая машина 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.
Ошибка медитации Virtualbox Guru
Затем я остановил гостевую KVM, закрыл приложение KVM и запустил виртуальную машину из виртуального бокса, все сработало!
Я также попробовал это в обратном порядке. Я запустил виртуальную машину из виртуального бокса, а затем запустил гостевую KVM, но гостевая KVM не запускается.
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
Ошибка запуска домена. Внутренняя ошибка процесса завершена при подключении к монитору KVM.
Затем я остановил виртуальную машину, закрыл приложение Virtualbox и запустил экземпляр KVM, все сработало!
Я даже проверил, работают ли модули kvm и vbox, с помощью команды «lsmod».
Найдите модули KVM с помощью команды lsmod:
sudo lsmod | grep kvm
Пример вывода:
kvm_intel 282624 0
kvm 663552 1 kvm_intel
Найдите модули KVM в Linux
Найдите модули виртуального бокса:
sudo lsmod | grep vbox
Пример вывода:
vboxnetadp 28672 0
vboxnetflt 28672 0
vboxdrv 487424 2 vboxnetadp,vboxnetflt
Найдите модули Virtualbox в Linux
Все модули загружены.
Заглянув на форум Virtualbox, я понял, что эта ошибка возникает, если мы одновременно запускаем несколько гипервизоров на одном хосте.
Итак, как исправить ошибку Virtualbox Guru Meditation в Linux?
На самом деле, ИСПРАВЛЕНИЯ нет. Вы должны использовать любой гипервизор одновременно. Расширения аппаратной виртуализации Intel VT-x/AMD-V нельзя использовать с несколькими разными гипервизорами, работающими одновременно на одном хосте. Вам следует запускать только гипервизор на одном хосте. Если вы хотите использовать другой, закройте текущий гипервизор и запустите другой.
Еще одна причина для размышлений о гуру виртуальных боксов — VT-x может быть отключен в BIOS. Убедитесь, что вы включили эту функцию в своем биосе. Обратитесь к руководству производителя вашей системы, чтобы включить VT в BIOS.
Я не могу использовать KVM и VirtualBox одновременно
У меня нет проблем с KVM и Virtualbox в моей системе Ubuntu 20.04. Я могу бежать и то, и другое рядом друг с другом.
Некоторые из вас могут столкнуться с этой ошибкой при запуске KVM и Virtualbox на одном хосте:
VERR_VMX_IN_VMX_ROOT_MODE
Если вы не можете использовать Virtualbox вместе с KVM, вы можете временно отключить модули KVM, а затем включать их, когда захотите.
Выгрузите работающие модули KVM с помощью команды:
sudo rmmod kvm-intel
Если это система AMD, используйте вместо этого следующую команду:
sudo rmmod kvm-amd
Альтернативно вы можете использовать следующие команды:
sudo modprobe -r kvm_intel
sudo modprobe -r kvm
На АМД:
sudo modprobe -r kvm_amd
sudo modprobe -r kvm
Теперь попробуйте запустить виртуальные машины Virtualbox. Теперь это должно работать.
Включить модули KVM
Чтобы включить модули KVM, вам необходимо сначала найти их расположение на вашем диске. Для этого запустите:
sudo updatedb
sudo locate kvm
Вы должны увидеть результат, как показано ниже.
/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
[...]
Найдите записи «kvm-intel.ko
» и «kvm.ko
». Включите эти два модуля с помощью команд:
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
В системах AMD замените «kvm-intel.ko
» на «kvm-amd.ko
».
Теперь вы можете запускать экземпляры KVM. Помните, что виртуальные машины virtualbox не запустятся, пока вы не отключите все экземпляры KVM.
Ссылка:
- Форум Virtualbox
Связанное чтение:
- Как исправить ошибку VirtualBox «Драйвер ядра не установлен (rc=-1908)» в Ubuntu
- Устранение ошибки Virtualbox «Невозможно изменить группу vboxusers для устройства /dev/vboxdrv»
- ВМ CentOS 8 не работает в VirtualBox 5.2 в Ubuntu 18.04
- Устранение ошибки VirtualBox «Код результата: NS_ERROR_FAILURE (0x80004005)» в Arch Linux