当我尝试在 Oracle VirtualBox 上打开任何操作系统时,出现错误。
Failed to open a session for the virtual machine xp efendi.
AMD-V is being used by another hypervisor. (VERR_SVM_IN_USE).
VirtualBox can't enable the AMD-V extension. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_SVM_IN_USE).
我该如何修复这个问题?
答案1
这个错误是因为你安装了virtualbox和kvm。内核模块冲突。
“简单”的解决方案是使用其中一个,但不能同时使用。但是,只要您愿意手动(或编写脚本)加载/卸载内核模块,就可以同时使用两者。
查看你的模块
#Virtualbox modules
sudo lsmod | grep vbox
#kvm
sudo lsmod| grep kvm
删除模块
# remove virtualbox
sudo rmmod vboxdrv
sudo rmmod vboxnetflt
#remove kvm
sudo rmmod kvm
sudo rmmod kvm_amd
使用 insmod
sudo insmod /full/path/to/your/modules
你可以使用以下方式找到模块
locate kvm | grep .ko
locate vbox | grep .ko
使用适合您当前内核的模块。
答案2
该问题已通过终端中的以下代码解决:
sudo killall VBoxSVC
export VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true
VirtualBox
答案3
对我来说,没有加载 kvm 模块(lsmod | grep kvm,没有显示任何内容),因此只需像 Huseyin 指出的那样设置 VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true 就足够了。
对于我的特殊情况,当我在没有 sudo 的情况下运行 virtualbox 时,我现有的 win 7 vdi 被困在恢复控制台屏幕中。(每个操作最终都会重新启动我的机器)可能存在一些权限问题,(通过运行 sudo virtualbox 解决,但我不确定这是推荐的方法)
另一篇关于如何编写脚本“同时使用 KVM 和 VirtualBox”的精彩文章 http://www.dedoimedo.com/computers/kvm-virtualbox.html
答案4
运行系统监视器,搜索 KVM 并将其终止。