我需要检查Centos 7上是否启用了虚拟化虚拟化。
我找到了检查虚拟化是否已启用的命令,但它需要sudo。
sudo modprobe msr
sudo rdmsr 0x3a
对于Ubuntu,存在实用程序cpu-checker,它可以检查是否在没有sudo的情况下启用了虚拟化。
kvm-ok
在Centos 7上是否存在与cpu-checker类似的实用程序?
答案 0 :(得分:4)
首先:
kvm-ok
和rdmsr 0x3a
完全不同。
kvm-ok
,根据它的man page只是解析/proc/cpuinfo
指示CPU中的虚拟化技术的CPU标志(然后检查是否加载了必要的模块,而{{1} }}读取CPU的特殊模型特定寄存器。
因此,rdmsr
不执行您需要root权限的任何操作,而kvm-ok
无法工作,因为您的进程无需查询这些寄存器的上下文。
rdmsr
可以通过一些技巧来确定是否在intel Core iX或更高版本的XEON处理器上启用了VT技术;对于高性能虚拟化,必要,但足够。
因此,我会说,继续执行rdmsr 0x3a
手动执行的操作。
检查第一个CPU的kvm-ok
或vmx
flags:
svm
并验证kvm模型已加载:
grep flags /proc/cpuinfo|head -n1|grep -Eo '(vmx|svm)'
实际上,如果您确实需要查询该模型特定的寄存器(例如,由于某种原因,即使在UEFI设置中禁用了VT,也存在lsmod | grep '^kvm'
标志),这是最简单的方法肯定只是使用sudo的强大功能来指定程序vmx
由您选择的用户使用参数rdmsr
完全(让我们称之为{{1}无密码(请参阅0x3a
或您的daemonuser
):
man sudoers