我需要检查在Centos 7上是否启用了没有sudo的虚拟化。
我找到了检查虚拟化是否启用的命令,但它需要sudo。
sudo modprobe msr
sudo rdmsr 0x3a对于Ubuntu,存在实用程序cpu检查器,它可以检查虚拟化是否在没有sudo的情况下启用。
kvm-ok在Centos 7上是否存在与cpu检查器类似的实用程序?
发布于 2016-04-04 08:21:23
第一:
kvm-ok和rdmsr 0x3a做的事情完全不同。
kvm-ok,根据它的手册页,它只是解析/proc/cpuinfo中指示虚拟化技术的CPU标志(然后检查是否加载了必要的模块,而rdmsr读取的是特定于模型的特定寄存器)。
因此,kvm-ok不执行任何您需要根特权的操作,而rdmsr不能工作,因为您的进程不需要上下文来查询这些寄存器。
rdmsr 0x3a可以使用一些技巧来确定在英特尔核心iX或更高版本的XEON处理器上是否启用了VT技术;对于性能虚拟化,这是必需的,而不是充足的。
因此,我想说的是,继续做kvm-ok手工做的事情。
检查第一个CPU的vmx或svm 标志
grep flags /proc/cpuinfo|head -n1|grep -Eo '(vmx|svm)'并验证kvm模型是否已加载:
lsmod | grep '^kvm'实际上,如果您实际上需要查询特定于模型的寄存器(例如,由于某些原因,即使在UEFI设置中禁用了VT,也存在vmx标志),那么最简单的方法当然是使用sudo的功能来指定要运行的程序,由您选择的用户使用参数0x3a (让我们称之为daemonuser)而不使用密码(请参阅man sudoers或/usr/share/doc/sudo/examples/sudoers):
daemonuser ALL = NOPASSWD: /path/to/rdmsr 0x3ahttps://stackoverflow.com/questions/36397351
复制相似问题