从虚拟机内部 - 如何知道使用 VMWare/VirtualBox/Hyper-V/etc 来托管它?

从虚拟机内部 - 如何知道使用 VMWare/VirtualBox/Hyper-V/etc 来托管它?

从虚拟机中,可以获得有关主机系统的哪些信息?例如,我基本上可以cat /proc/cpuinfo了解一些有关主机 CPU 的信息。

我可以通过哪些方式获取有关使用哪种平台虚拟化软件(VMWare、VirtualBox、Hyper-V 等)的信息?例如,如果使用了一些客户添加程序 - 我可以使用 查看它们lsmod。但我不知道要查看哪些模块。

答案1

大多数存储库中都有一个名为 的包virt-what(Debian 类库有,Arch Linux 也有)。它实际上是一个 shell 脚本,如果您不在 VM 中,或者作者说您不在未知类型的虚拟机管理程序中,则不会输出任何内容,或者会输出虚拟机管理程序的名称。

它似乎知道最常见的虚拟机管理程序。你可以找到有关它的更多信息这里。有趣的是,它是一个 shell 脚本,因此您可以轻松看到使用哪个测试来确定程序是否在 VM 内运行。我不会破坏您的乐趣。

相关内容