是否有一个操作系统命令我可以从基于 Xen 的虚拟机中运行,告诉我它是一个虚拟盒子而不是物理盒子——我听说内核对此有一些自我意识的智慧。例如,像“ps”输出中的额外列或其他什么?[我知道 vmstat 提供了“st”列,但我在运行 Linux Kernel 2.6.11 及更高版本的物理主机上也看到了这一点]。
非常感谢,
保罗
试文件/sys/hypervisor/uuid.
这当然需要安装和填充 /sys ......
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.