Řešení 1:
Ke kontrole hardwaru v systému použijte standardní nástroje Linuxu.
cat /proc/scsi/scsi
nebo
ethtool -i eth0
nebo
dmidecode | grep -i vmware
Pokud výstup těchto příkazů zobrazuje hardware s názvem výrobce „VMWare“, jste na virtuálním počítači VMWare. Je zde poskytnuto více příkazů, protože konfigurace systému a nástroje se liší.
Řešení 2:
facter virtual
xenu
označuje, že se jedná o VM. Pokud se vrátí „fyzický“, pak je tomu naopak (nejedná se o VM), např.:
facter virtual
Physical
Řešení 3:
Možná budete schopni získat a představu, když se porozhlédnete pod /sys
. Například /sys/class/dmi/id/sys_vendor
má hodnotu VMware, Inc.
.
Pokud je nainstalován, můžete použít lshw . Příkaz lshw -class system
vrátí toto v mém systému:
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
Řešení 4:
Existuje šikovná aplikace, která může pomoci s názvem virt-what . Nepoužil jsem to s VMWare, ale fungovalo to dobře s Qemu.
Řešení 5:
Některá virtuální prostředí pojmenovávají některá svá virtuální zařízení názvy, které jsou trochu výmluvné, například VirtualBox představuje grafickou kartu, která si říká „VirtualBox Display Adapter“. Ale hledání těch vás spojuje s konkrétním virtuálním počítačem a možná s úzkým rozsahem verzí.
Je možné, že váš kód uvidí, jaký druh virtualizace by mohl nastavit. Pokud to úplně selže, možná jste ve virtuálním počítači. Ale stejně tak můžete být na krabici, která nemá žádný hardware schopný VM.