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


43

我知道用于确定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

然后寻找vmxlm标志

但是,似乎即使在BIOS中禁用了英特尔虚拟技术扩展(即VT或VT-x),/proc/cpuinfo也会显示相同的标志。

因此,如何从Linux命令行(在我的情况下为Ubuntu 10.10,特别是Ubuntu 10.10)中找出是否确实启用了VT而无需重新包装呢?

Answers:


50

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

14

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

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


1
知道什么kvm-ok检查或VMware Player检查以确定BIOS设置会很有趣。然后,可以直接检查一下。
pcapademic,2012年

1
手册页上写着:“如果以超级用户身份运行,它将检查您的CPU的MSR,以查看是否在BIOS中禁用了VT。”我不知道这是什么意思:)
Jo-Erlend Schinstad 2012年

听起来不错,但是下面的家伙也证实了这一点。
布鲁诺·佩雷拉

14

似乎可以直接使用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如果禁用,则应返回寄存器。


3
它是否知道如何区分BIOS缺乏和BIOS中未启用?
nealmcb 2015年

谢谢-这对我在debian上起作用,以确认当vmx没有出现在/ proc / cpuinfo中但我仍然引导我启动VM时,我没有发疯:)这些德语的说明是我发现的最清楚的内容,表明7,我得到的返回值是好的太:heise.de/ct/hotline/...
德米特里DB

代替51我得到0。也许这意味着缺乏cpu支持。
Donn Lee
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.