是否有可以运行的OS命令来确定是否在基于Xen的虚拟机中运行

时间:2010-08-16 06:18:54

标签: linux unix xen

是否有一个操作系统命令我可以在基于Xen的虚拟机中运行,告诉我它是一个虚拟盒而不是一个物理盒 - 我听说内核有一些自我意识的智能。例如像“ps”输出中的额外列或什么? [我知道vmstat提供了“st”列,但我在运行Linux Kernel 2.6.11及更高版本的物理主机盒上看到了这一点。

非常感谢,

2 个答案:

答案 0 :(得分:24)

尝试文件/sys/hypervisor/uuid.

  1. 它不存在 - >与XEN无关。
  2. 它确实存在,并且充满了0-s - >这是一个XEN Dom0
  3. 它确实存在,并且具有非0值 - >这是一个DomU
  4. 当然,这需要/ sys已安装并填充......

答案 1 :(得分:22)

Dmesg可以从内核消息缓冲区提供一些提示,这里是从Slicehost的虚拟化Ubuntu实例输出的:

bvm@qdbp:~$ sudo dmesg | grep Xen
[    0.000000]  Xen: 0000000000000000 - 00000000000a0000 (usable)
[    0.000000]  Xen: 00000000000a0000 - 0000000000100000 (reserved)
[    0.000000]  Xen: 0000000000100000 - 0000000010000000 (usable)
[    0.000000] Booting paravirtualized kernel on Xen
[    0.000000] Xen version: 3.1.2-rc1
[    0.000000] Xen: using vcpu_info placement
[    0.000000] Xen: using vcpuop timer interface
[    0.000000] installing Xen timer for CPU 0
[    0.021223] installing Xen timer for CPU 1
[    0.046157] installing Xen timer for CPU 2
[    0.046157] installing Xen timer for CPU 3
[    0.265880] Initialising Xen virtual ethernet driver.