Gibt es eine Möglichkeit herauszufinden, ob das Betriebssystem (Linux) in KVM-Gast ausgeführt wird?
Gibt es eine Möglichkeit herauszufinden, ob das Betriebssystem (Linux) in KVM-Gast ausgeführt wird?
Antworten:
Grep dmesg, es sollte mindestens eine Zeile enthalten kvm. Auf meinen Maschinen:
[ 0.000000] kvm-clock: cpu 0, msr 0:5dd801, boot clock
[ 0.000000] kvm-clock: cpu 0, msr 0:1023801, primary cpu clock
Alternativ überprüfen Sie /proc/cpuinfo, es enthält eine Zeile:
model name : QEMU Virtual CPU version 0.9.1
Das Problem ist jedoch: Sie können nicht sicher sein, ob Sie ein KVM-Gast (zusätzlich zu QEMU) oder nur ein QEMU-Gast sind.
dmidecodeder Liste der Möglichkeiten hinzufügen , die angezeigt werden können, wenn Sie virtualisiert ausführen. Dies funktioniert gut mit VMWare.
Sie können überprüfen, ob imvirt oder virt-what, die für mehrere Linux-Distributionen, einschließlich Ubuntu, verfügbar sind, Ihnen helfen kann.
imvirtist genauer.
Aktuelle Versionen von lscpuzeigen auch an, ob ein Hypervisor erkannt wird:
# 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
...
systemd-detect-virt
kehrt auf diesem Ubuntu 18.04 KVM-Setup zurück :
kvm
und auf meinem Gastgeber:
none
Siehe auch: /unix/89714/easy-way-to-determine-virtualization-technology
Getestet auf einem Ubuntu 18.04 Host.
Eine andere Möglichkeit ist dmidecode -s 'system-product-name'
[samveen@vm1 ~]$ sudo dmidecode -s 'system-product-name'
KVM
Standard PC (i440FX + PIIX , 1996).
system-product-nameBezeichner die erwartete Antwort, auch in Fällen wie VirtualBoxund VMWare.