检测物理机,而不是检测VM

时间:2017-10-19 09:26:21

标签: virtual-machine wmi hyper-v

可以通过这样的WMI检测虚拟机管理程序的存在;

select * from Win32_ComputerSystem

从那里,阅读HypervisorPresent,如果是,则存在。

等效VMIC命令:

ComputerSystem get HypervisorPresent

这给了" true"适用于在VMWare,VirtualBox和Hyper-V下运行的系统。

问题在于,当安装Hyper-V时,即在虚拟化系统之外的物理机上运行时,它也会给出" true"

所以,我的问题是:

即使安装了Hyper-V,是否可以以某种方式检测系统是否是实际的物理机?

我还想知道是否安装了Hyper-V服务/角色,但这还不够,因为您可以使用Hyper-V进行嵌套虚拟化。

1 个答案:

答案 0 :(得分:0)

检查“HKLM \ SOFTWARE \ Microsoft \ Virtual Machine \ Auto”,主要是客人在此密钥中存储的所有主机详细信息

使用HKLM \ SOFTWARE \ Microsoft \ Virtual Machine \ Guest \ Parameters可获得更多相关信息

但仅适用于HyperV,您需要为其他虚拟机管理程序一次验证两次,对HyperV验证第二次。

有一个班级check this可以分享虚拟主机和主机详细信息。

您可以Check this获取更多有用的信息。