我知道我可以检查 VT-X 是否支持的由处理器提供egrep '(vmx|svm)' /proc/cpuinfo
。但即使支持,也可以在 BIOS 中将其关闭。我如何检测它是打开还是关闭?
答案1
VT-X 信息存储在特定于模型的寄存器 (MSR) 0x34可以通过 访问msr-tools
。通过运行安装它sudo apt-get install msr-tools
,然后运行以下命令
sudo modprobe msr
sudo rdmsr 0x3A
如果返回值为 3、5 或 7,则表示 VT-X 已启用
答案2
有两种方法可以验证:
在基于 Debian 的发行版(例如 Ubuntu)上,您可以通过安装
cpu-checker
并kvm-ok
使用 sudo 权限运行来检查对 VT-x 的支持。如果 CPU 已启用,您应该会看到类似以下内容:
INFO: /dev/kvm exists KVM acceleration can be used
否则,你会得到:
INFO: /dev/kvm does not exist HINT: sudo modprobe kvm_intel INFO: Your CPU supports KVM extensions INFO: KVM (vmx) is disabled by your BIOS HINT: Enter your BIOS setup and enable Virtualization Technology (VT), and then hard poweroff/poweron your system KVM acceleration can NOT be used
在基于 Debian 和 RHEL 的系统上,您可以使用
virt-host-validate
软件包提供的libvirt-client
。有关使用的文档可以在这里找到这里。
答案3
一种非常不靠谱的检查方法(无需进入 BIOS)是安装/打开 Virtualbox 虚拟机管理程序,然后尝试安装 64 位 Linux VM,看看设置是否允许您启用 VT-X。在 Virtualbox 中安装 VM 是我遇到的唯一需要启用 VT-X/AMD-V 的情况。