Is there an OS command I can run to determine if running inside a Xen based virtual machine
Asked Answered
H

2

19

Is there an OS command I can run from within a Xen based virtual machine to tell me that it is a virtual box rather than a physical box - I heard that the kernel had some self awareness smarts about it. e.g. like an extra column in "ps" output or something? [I know vmstat provides the "st" column but I have seen this on physical host boxes running Linux Kernel 2.6.11 and greater as well].

Many Thanks,

Paul

Halinahalite answered 16/8, 2010 at 6:18 Comment(0)
S
25

Dmesg may give some hints from the kernel message buffer, here is output on a virtualized Ubuntu instance from Slicehost:

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.
Sheik answered 16/8, 2010 at 9:23 Comment(1)
Thanks alot bvmou. This gave me more than enough info to use Cheers, PaulHalinahalite
L
27

Try file /sys/hypervisor/uuid.

  1. It does not exist -> Not related to XEN.
  2. It does exist, and is full of 0-s -> It is a XEN Dom0
  3. It does exist, and has a not-0 values -> It is a DomU

This requires of course, that /sys is mounted and populated...

Leucite answered 27/4, 2011 at 19:25 Comment(0)
S
25

Dmesg may give some hints from the kernel message buffer, here is output on a virtualized Ubuntu instance from Slicehost:

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.
Sheik answered 16/8, 2010 at 9:23 Comment(1)
Thanks alot bvmou. This gave me more than enough info to use Cheers, PaulHalinahalite

© 2022 - 2024 — McMap. All rights reserved.