今週はKVMを広範囲にテストしています。今日、KVMとOracleVirtualBoxが同時に機能しないことを学びました。今日まで、一度に2つの仮想化アプリケーションを使用する機会がなかったので、LinuxでKVMとvirtualboxが同時に実行されないことに完全に気づいていません。 KVMインスタンスの1つが実行されているときに、VirtualBoxからVMを起動しましたが、起動しませんでしたが、- Virtualbox Guru Meditationというタイトルのエラーボックスが表示されました。 。
KVMとVirtualBoxは、実際に誰かをアンインストールしなくても、並行して動作することに注意してください。ただし、同時に使用することはできません。このエラーは私にとって初めてのことなので、このガイドをここに投稿すると誰かが役立つと思いました。
KVMとVirtualBoxは同時に機能しません
KVMゲストマシンがすでに実行されているときにoraclevirtualboxからVMを起動しようとしたときの完全なエラーメッセージは次のとおりです。
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.
次に、KVMゲストを停止し、KVMアプリケーションを閉じて、virtualboxからVMを起動しました。動作しました!
私も逆にやってみました。 virtualboxからVMを起動してから、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
次に、VMを停止し、Virtualboxアプリケーションを閉じて、KVMインスタンスを開始しました。これで、機能しました。
「lsmod」コマンドを使用して、kvmおよびvboxモジュールが実行されているかどうかも確認しました。
lsmodコマンドでKVMモジュールを検索します:
$ sudo lsmod | grep kvm
出力例:
kvm_intel 282624 0 kvm 663552 1 kvm_intel
virtualboxモジュールを見つける:
$ sudo lsmod | grep vbox
出力例:
vboxnetadp 28672 0 vboxnetflt 28672 0 vboxdrv 487424 2 vboxnetadp,vboxnetflt
すべてのモジュールがロードされます。
Virtualboxフォーラムを調べたところ、同じホストで複数のハイパーバイザーを同時に実行すると、このエラーが発生することがわかりました。
では、LinuxでVirtualbox Guru Meditationエラーを修正するにはどうすればよいですか?
実際には、FIXはありません。一度に1つのハイパーバイザーを使用する必要があります。 Intel VT-x / AMD-Vハードウェア仮想化拡張機能は、同じホストで同時に実行されている複数の異なるハイパーバイザーからは使用できません。単一のホストでハイパーバイザーのみを実行する必要があります。別のハイパーバイザーを使用する場合は、現在実行中のハイパーバイザーを閉じて、別のハイパーバイザーを起動します。
virtualboxの第一人者の瞑想のもう1つの理由は、BIOSでVT-xが無効になっている可能性があることです。 。 BIOSで有効になっていることを確認してください。 BIOSでVTを有効にするには、システムの製造元のマニュアルを参照してください。
KVMとVirtualBoxを並べて使用することはできません
Ubuntu20.04システムのKVMとVirtualboxに問題はありません。両方を並べて走らせることができます。
同じホストでKVMとVirtualboxを実行しているときに、このエラーが発生する場合があります。
VERR_VMX_IN_VMX_ROOT_MODE
KVMと一緒にVirtualboxを使用できない場合は、kvmモジュールを一時的に無効にしてから、必要に応じて有効にすることができます。
次のコマンドを使用して、実行中のKVMモジュールをアンロードします。
$ sudo rmmod kvm-intel
AMDシステムの場合は、代わりに次のコマンドを使用してください:
$ sudo rmmod kvm-amd
または、次のコマンドを使用することもできます。
$ sudo modprobe -r kvm_intel
$ sudo modprobe -r kvm
AMDの場合:
$ sudo modprobe -r kvm_amd
$ sudo modprobe -r kvm
次に、VirtualboxVMを起動してみます。今は動作するはずです。
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
"エントリ。コマンドを使用してこれら2つのモジュールを有効にします:
$ 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インスタンスを実行できます。すべてのKVMインスタンスをオフにするまで、virtualboxVMは起動しないことに注意してください。
参照:
- Virtualboxフォーラム
関連記事:
- Ubuntuで「カーネルドライバがインストールされていません(rc =-1908)」VirtualBoxエラーを修正する方法
- 「デバイス/dev/vboxdrvのグループvboxusersを変更できません」Virtualboxエラーを解決します
- CentOS8VMはUbuntu18.04のVirtualBox5.2では機能しません
- 「結果コード:NS_ERROR_FAILURE(0x80004005)」を解決するArchLinuxでのVirtualBoxエラー