【问题标题】:Detect physical machine, as opposed to detecting a VM检测物理机,而不是检测 VM
【发布时间】:2017-10-19 09:26:20
【问题描述】:

可以像这样通过 WMI 检测 Hypervisor 的存在;

select * from Win32_ComputerSystem

从中读取HypervisorPresent,如果为真,则它存在。

等效的 VMIC 命令:

ComputerSystem get HypervisorPresent

这为在 VMWare、VirtualBox 和 Hyper-V 下运行的系统提供了“真实”。

问题在于,当安装了 Hyper-V(即在虚拟化系统之外)在物理机上运行时,它也会给出“真实”。

所以,我的问题是:

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

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

【问题讨论】:

    标签: virtual-machine wmi hyper-v


    【解决方案1】:

    检查“HKLM\SOFTWARE\Microsoft\Virtual Machine\Auto”,几乎所有主机详细信息都存储在来宾的此密钥中

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

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-22
      • 1970-01-01
      • 2018-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多