有没有一种方法可以确定OS(linux)是否在KVM guest虚拟机中运行。
相关:unix.stackexchange.com/questions/89714/...
—
西罗桑蒂利冠状病毒审查六四事件法轮功
有没有一种方法可以确定OS(linux)是否在KVM guest虚拟机中运行。
Answers:
Grep dmesg
,应该至少包含一行kvm
。在我的机器上:
[ 0.000000] kvm-clock: cpu 0, msr 0:5dd801, boot clock
[ 0.000000] kvm-clock: cpu 0, msr 0:1023801, primary cpu clock
或者检查/proc/cpuinfo
,其中包含一行:
model name : QEMU Virtual CPU version 0.9.1
但是,问题是:您不能确定自己是KVM来宾(在QEMU之上)还是仅是QEMU-Guest。
dmidecode
到可能显示的方式列表中(如果您正在运行虚拟化),它可以与VMWare很好地配合使用。
的当前版本lscpu
还会显示是否检测到管理程序:
# 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
kvm
在我的主机上:
none
另请参阅:https : //unix.stackexchange.com/questions/89714/easy-way-to-determine-virtualization-technology
在Ubuntu 18.04主机上测试。
另一种可能性是 dmidecode -s 'system-product-name'
[samveen@vm1 ~]$ sudo dmidecode -s 'system-product-name'
KVM
Standard PC (i440FX + PIIX , 1996)
。
system-product-name
即使在类似VirtualBox
和的情况下,标识符也会给出预期的答案VMWare
。