Wie kann man feststellen, ob CPU-VT-Erweiterungen im BIOS aktiviert sind?

43

Ich kenne den Befehl, um herauszufinden, ob eine CPU VMware Workstation 8 oder VMware Player 4 unterstützen kann:

$ 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

und dann suchen Sie nach den vmx und lm Flags

Aber es scheint, dass selbst wenn die Intel Virtual Technology-Erweiterungen (dh VT oder VT-x) im BIOS deaktiviert sind, /proc/cpuinfodie gleichen Flags gemeldet werden.

Wie kann ich also über die Linux-Befehlszeile (speziell Ubuntu 10.10 in meinem Fall) herausfinden, ob VT tatsächlich aktiviert ist, ohne die Box neu zu boxen?

pcapademic
quelle

Antworten:

50

Aufbauend auf der Antwort von Jo-Erlend Schinstad :

Installieren Sie den CPU-Checker

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

Dann überprüfe:

$ kvm-ok

Wenn die CPU aktiviert ist, sollte Folgendes angezeigt werden:

INFO: /dev/kvm exists
KVM acceleration can be used

Andernfalls könnte Folgendes angezeigt werden:

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
pcapademic
quelle
14

Vielleicht kvm-okkönnen Sie den Trick für Sie tun. Es überprüft Ihre cpuflags, dann, ob Sie ein kvm-Gerät haben, und schließlich, ob die Virtualisierung im BIOS deaktiviert ist.

Dies bedeutet natürlich, dass es fehlschlägt, wenn Sie kvm nicht installiert haben. Wenn Sie kvm verwenden, können Sie wahrscheinlich nicht gleichzeitig VMWare-Inhalte verwenden und umgekehrt. Kvm wird jedoch nur verwendet, wenn Sie tatsächlich eine VM ausführen.

Jo-Erlend Schinstad
quelle
1
Es wäre interessant zu wissen, welche kvm-ok-Prüfungen oder VMware Player-Prüfungen durchgeführt werden, um die BIOS-Einstellungen zu ermitteln. Dann könnte man das einfach direkt überprüfen.
pcapademic
1
Die Handbuchseite lautet: «Wenn Sie als Root ausgeführt werden, werden die MSRs Ihrer CPU überprüft, um festzustellen, ob VT im BIOS deaktiviert ist.» Ich habe jedoch keine Ahnung, was das bedeutet :)
Jo-Erlend Schinstad
Hört sich gut an, das bestätigt auch der Typ unten.
Bruno Pereira
14

Anscheinend kann man das direkt mit den msr-tools überprüfen

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

Das Register sollte zurückkehren, 5wenn die Erweiterungen aktiviert sind, und zurückkehren, 1wenn sie deaktiviert sind.

pcapademic
quelle
3
Weiß es, wie man den Mangel an CPU-Unterstützung von der Nichtaktivierung im BIOS unterscheidet?
nealmcb
Danke - das hat für mich bei Debian funktioniert, um zu bestätigen, dass ich nicht verrückt geworden bin, als VMX nicht in / proc / cpuinfo aufgetaucht ist, aber trotzdem VMs gebootet habe Der Rückgabewert von 7 ist auch in Ordnung: heise.de/ct/hotline/…
Dmitri DB
Anstelle von 5oder 1verstehe ich 0. Möglicherweise bedeutet dies einen Mangel an CPU-Unterstützung.
Donn Lee