imvirt logo

imvirt - I'm virtualized?

home

Description

This little perl script tries to detect if it is called from within a virtualization container. This is detected by looking for well-known boot messages, directories and reading DMI (Desktop Management Interface) data.

The following containers are detected:

The tool will print exactly one line. The result has the following meaning:

Line Detected container
Physical This is a physical machine or a not detected container.
Virtual This is a virtual machine running in a not detected container.
HVM: <signature> signature of an unknown hypervisor*
VirtualBox VirtualBox
Microsoft unidentifiable Microsoft based virtualization****
Microsoft Hyper-V Microsoft Hyper-V/Virtual Server****
Microsoft VirtualPC Microsoft Virtual PC****
VMware VMware Virtual Platform
VMware (Express|ESX Server|GSX Server|Workstation) VMware Virtual Platform*
OpenVZ OpenVZ/Virtuosso*
QEMU QEMU/KVM (based)
UML User Mode Linux*
Xen Xen hypervisor
Xen (PV|HVM) Xen hypervisor*
lguest Lguest: The Simple x86 Hypervisor**
ARAnyM Atari Running on Any Machine***
LXC Linux Containers***
Parallels Parallels Workstation*****

There are simular packages for detecting virtualization containers available:

Downloads

Current version is 0.9.6

There are official Debian packages available here.

VCS: https://github.com/DE-IBH/imvirt

Portable

There is a portable ImVirt version available. It is a self-contained perl script (using PAR Packager). There is a core and a bundle build of ImVirt Portable. The latter contains all the PAR Packager glue and has no additional dependency. Downloads are available at the releases page: https://github.com/DE-IBH/imvirt/releases/


2013-08-23, Thomas Liske Valid XHTML 1.0!