解決策 1:
標準の Linux ツールを使用して、システムのハードウェアを検査します。
cat /proc/scsi/scsi
または
ethtool -i eth0
または
dmidecode | grep -i vmware
これらのコマンドの出力に、メーカー名が「VMWare」のハードウェアが表示される場合は、VMWare VM を使用しています。システム構成とツールが異なるため、ここでは複数のコマンドが提供されています。
解決策 2:
facter virtual
xenu
VM であることを示します。 「physical」が返された場合は、その逆です (VM ではありません)。例:
facter virtual
Physical
解決策 3:
/sys
の下を見回すと、アイデアが得られるかもしれません。 .例えば /sys/class/dmi/id/sys_vendor
VMware, Inc.
の値を持つ .
インストールされている場合は、lshw を使用できます .コマンド lshw -class system
私のシステムではこれを返します:
server1
description: Computer
product: VMware Virtual Platform
vendor: VMware, Inc.
version: None
serial: VMware-...
width: 64 bits
capabilities: smbios-2.4 dmi-2.4 vsyscall64 vsyscall32
解決策 4:
virt-what という便利なアプリがあります . VMWare では使用していませんが、Qemu では問題なく動作しました。
解決策 5:
一部の仮想環境では、仮想デバイスの一部にわかりやすい名前が付けられています。たとえば、「VirtualBox Display Adapter」と呼ばれるグラフィックス カードを提示する VirtualBox などです。しかし、それらを探すと、特定の VM と、場合によっては狭い範囲のバージョンに結び付けられます。
コードで、どのような種類の仮想化を設定できるかを確認できる可能性があります。それが完全に失敗した場合は、VM にいる可能性があります。しかし、VM 対応のハードウェアを搭載していないボックスを簡単に使用することもできます。