comment savoir si vous exécutez à l'intérieur d'un invité KVM


Réponses:


11

Grep dmesg, il devrait y avoir au moins une ligne contenant kvm. Sur mes machines:

[    0.000000] kvm-clock: cpu 0, msr 0:5dd801, boot clock
[    0.000000] kvm-clock: cpu 0, msr 0:1023801, primary cpu clock

Vérifiez alternativement /proc/cpuinfo, il contient une ligne:

model name : QEMU Virtual CPU version 0.9.1

Mais, le problème est: vous ne pouvez pas être sûr que vous êtes un invité KVM (en plus de QEMU) ou seulement un invité QEMU.


kvm-clock clocksource peut ne pas être présent ou désactivé pour des raisons de stabilité.
— sendmoreinfo

2
Vous voudrez peut-être ajouter dmidecodeà la liste des façons qui pourraient apparaître si vous exécutez virtualisé, cela fonctionne bien avec VMWare.
— Law29

7

Vous pouvez vérifier si imvirt ou virt-what qui sont disponibles pour plusieurs distributions Linux, y compris Ubuntu, peuvent vous aider.


1
D'après mon expérience, imvirtc'est plus précis.
— bahamat

3

Les versions actuelles de lscpumontrent également si un hyperviseur est détecté:

# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                2
On-line CPU(s) list:   0,1
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             2
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 23
Model name:            Intel Core 2 Duo P9xxx (Penryn Class Core 2)
Stepping:              3
CPU MHz:               2659.936
BogoMIPS:              5319.87
Hypervisor vendor:     KVM
Virtualization type:   full
...


0

Une autre possibilité est dmidecode -s 'system-product-name'

[samveen@vm1 ~]$ sudo dmidecode -s 'system-product-name'
KVM

N'a pas travaillé avec ce Ubuntu 18.04 sur la configuration Ubuntu 18.04: askubuntu.com/revisions/1046792/15 , juste sortie: Standard PC (i440FX + PIIX , 1996).
— Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

1
@CiroSantilli 新疆 改造 中心 六四 事件 法轮功 Veuillez également vérifier les autres champs d'informations DMI. Je n'ai pas accès à un hôte KVM basé sur Ubuntu pour tester. Dans la plupart des cas, l' system-product-nameidentifiant donne la réponse attendue, même dans les cas comme VirtualBoxet VMWare.
— Samveen
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.