如何检测机器是否被虚拟化

我有Linux,AIX,SunOs和HP-UX机器,我想检测机器是否虚拟。 到目前为止,我发现这篇文章帮助我在Linux上获得这些信息:

dmesg | grep -i virtual //On Linux Machines 

但是我也需要AIXHP-UXSunOs的命令 。 任何帮助?

尝试http://people.redhat.com/~rjones/virt-what/ 。 纠正我,如果我错了,但我认为红帽在他们的卫星用它来检测和分组虚拟化系统。

“虚拟”的定义太松散。 如果我们假设对于AIX,您指的是任何LPAR(或微分区,或IBMselect的任何其他术语)的AIX映像,则可以使用uname -L ,例如,

 nonlpar# umame -L -1 NULL lparhost# uname -L 5 lparhost 

如果您的意思是WPAR,则可以使用uname -W ,结果为0意味着您不在WPAR中,任何高于0的结果都是WPAR。

如果你的意思是,AIX实例是否依赖于VIO服务器,那么除了查看设备,并且确定是否通过VIO服务器提交之外,没有可靠的机制来了解。

值得一提的是,对于运行AIX的pSeries硬件来说,现在几乎所有的事情都是一个LPAR,并且实质上是虚拟的,即使它是使用硬件的唯一操作系统实例。

在HP-UX中,有不同级别的虚拟化和不同的命令来了解您的系统是否是虚拟化的。

  1. Integrity虚拟机客户

    如果您在获得IVM Guest中执行以下命令:

      # hpvminfo hpvminfo: Running inside an HPVM guest. 

    如果您在NO“IVM Guest”中执行以下命令,您将获得:

      # hpvminfo hpvminfo: Running inside an HPVM host. 

    或#hpvminfo sh:hpvminfo:找不到。

  2. 惠普虚拟分区

    如果您在vpar中执行以下命令,您将获得:

      # hpvminfo hpvminfo: Running inside an HPVM guest. # vparstatus -w The current virtual partition is <VPAR NAME>. 

    如果您在NO vpar中执行以下命令,您将获得:

      # vparstatus sh: vparstatus: not found. 

虚拟机可能产生“腥”的CPU信息吗?

在Aix中,尝试在已知虚拟机上使用lscfg,您可能会发现CPU信息提示计算机是虚拟的。 这在很大程度上取决于虚拟器,但值得一试。

对于x86虚拟机,只需运行一个程序,调用检测x86虚拟机的官方机制 。 我会举几个例子,但我不知道自己的头脑。 我使用我自己的工具。 Thomas Liske的imvirt根据它的doco显示了承诺,但我没有使用它或看过源代码。

这是否也适用于您的SunOS机器取决于是x86还是真正的 SunOS。 ☺检测虚拟机的存在涉及特定于处理器指令集体系结构的东西,而不是操作系统。 所以“我有AIX和HP / UX机器”。 比“我拥有PowerPC和安腾的机器”更有用。