当前位置: 首页>>技术问答>>正文


如何确定BIOS中是否启用了CPU VT扩展?

,

问题描述

我知道判断CPU是否可以支持VMware Workstation 8或VMware Player 4的命令:

$ grep flags /proc/cpuinfo
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp *lm* constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl *vmx* est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm arat dts tpr_shadow vnmi flexpriority ept vpid

然后查找vmx和lm标志

但是,即使在BIOS中禁用了Intel Virtual Technology扩展(即VT或VT-x),/proc/cpuinfo也会报告相同的标志。

那么,我如何从Linux命令行(特别是在我的情况下是Ubuntu 10.10)中找出VT是否实际启用而没有重新装箱?

最佳解决方法

Jo-Erlend Schinstad的答案为基础:

安装cpu-checker

$ sudo apt-get update
$ sudo apt-get install cpu-checker

然后检查:

$ kvm-ok

如果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

次佳解决方法

似乎可以直接使用msr-tools进行检查

http://linux.koolsolutions.com/2009/09/19/howto-using-cpu-msr-tools-rdmsrwrmsr-in-debian-linux/

$ sudo apt-get update
$ sudo apt-get install msr-tools
$ sudo modprobe msr
$ sudo rdmsr 0x3A

如果启用了扩展,则寄存器应返回5,如果禁用,则返回1

第三种解决方法

也许kvm-ok可以帮到你。它将检查你的cpuflags,然后查看你是否有一个kvm设备,最后它将检查bios中是否禁用了虚拟化。

当然,这意味着如果您没有安装kvm,它将会失败。如果你使用kvm,你可能无法同时使用VMWare,反之亦然。但是,只有在实际运行VM时才会使用kvm。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2093.html,未经允许,请勿转载。