Подтвердить что ты не робот

Есть ли команда ОС, которую я могу запустить, чтобы определить, работает ли внутри виртуальной машины на основе Xen

Есть ли команда ОС, которую я могу запустить из виртуальной машины на основе Xen, чтобы сказать мне, что это виртуальная коробка, а не физический ящик - я слышал, что у ядра были некоторые соображения самосознания. например как дополнительный столбец в "ps" выход или что-то еще? [Я знаю, что vmstat предоставляет столбец "st", но я видел это на физических ящиках хоста с ядром Linux 2.6.11 и выше].

Большое спасибо,

Пол

4b9b3361

Ответ 1

Dmesg может давать некоторые подсказки из буфера сообщений ядра, здесь выводится на виртуализированный экземпляр Ubuntu из Slicehost:

[email protected]:~$ 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.

Ответ 2

Попробуйте файл /sys/hypervisor/uuid.

  • Он не существует → Не относится к XEN.
  • Он существует и заполнен 0-s → Это XEN Dom0
  • Он существует и имеет значения не-0 → Это DomU

Это требует, конечно, что /sys монтируется и заполняется...