Ich habe Befehlszeilenzugriff auf eine Linux-Maschine, die möglicherweise virtualisiert ist oder nicht. Ich möchte feststellen, auf welcher Art von Virtualisierungstechnologie es ausgeführt wird, falls vorhanden (VMWare, VirtualBox, KVM, OpenVZ, Xen, ). Dies ist keine feindliche Umgebung:Ich versuche nicht, gegen eine VM zu arbeiten, die versucht, sich zu tarnen, ich diagnostiziere einen fehlerhaften Server, über den ich wenig weiß.
Genauer gesagt helfe ich jemandem bei der Diagnose des Problems, ich sitze nicht am Ruder. Also muss ich Anweisungen wie „Diesen Befehl kopieren und einfügen“ übermitteln und nicht „in /proc
herumstochern“. irgendwo". Idealerweise wäre es so etwas wie lshw
:ein einfach zu installierender (wenn nicht vorinstallierter) Befehl, der herumstochert und relevante Informationen ausgibt.
Wie lässt sich am einfachsten feststellen, bei welcher Virtualisierungstechnologie dieses System Gast sein könnte? Ich würde es begrüßen, wenn Vorschläge erwähnen würden, welche Technologien (einschließlich nackter Hardware) endgültig erkannt und welche endgültig eliminiert werden können. Ich interessiere mich hauptsächlich für Linux, aber wenn es auch für andere Unices funktioniert, ist das schön.
Akzeptierte Antwort:
dmidecode -s system-product-name
Ich habe auf Vmware Workstation, VirtualBox, QEMU mit KVM, Standalone-QEMU mit Ubuntu als Gastbetriebssystem getestet. Andere haben zusätzliche Plattformen hinzugefügt, mit denen sie ebenfalls vertraut sind.
Virtualisierungstechnologien
-
VMware Workstation
[email protected]:~# dmidecode -s system-product-name VMware Virtual Platform
-
VirtualBox
[email protected]:~# dmidecode -s system-product-name VirtualBox
-
Qemu mit KVM
[email protected]:~# dmidecode -s system-product-name KVM
-
Qemu (emuliert)
[email protected]:~# dmidecode -s system-product-name Bochs
-
Microsoft VirtualPC
[email protected]:~# dmidecode | egrep -i 'manufacturer|product' Manufacturer: Microsoft Corporation Product Name: Virtual Machine
-
Virtuozzo
[email protected]:~# dmidecode /dev/mem: Permission denied
-
Xen
[email protected]:~# dmidecode | grep -i domU Product Name: HVM domU
Auf Bare-Metal gibt dies eine Identifikation des Computer- oder Motherboard-Modells zurück.
/dev/disk/by-id
Wenn Sie nicht über die Rechte zum Ausführen von dmidecode
verfügen dann können Sie verwenden:
Virtualisierungstechnologie:QEMU
ls -1 /dev/disk/by-id/
Ausgabe
[[email protected] ~]# ls -1 /dev/disk/by-id/
ata-QEMU_DVD-ROM_QM00003
ata-QEMU_HARDDISK_QM00001
ata-QEMU_HARDDISK_QM00001-part1
ata-QEMU_HARDDISK_QM00002
ata-QEMU_HARDDISK_QM00002-part1
scsi-SATA_QEMU_HARDDISK_QM00001
scsi-SATA_QEMU_HARDDISK_QM00001-part1
scsi-SATA_QEMU_HARDDISK_QM00002
scsi-SATA_QEMU_HARDDISK_QM00002-part1
Referenzen
- So erkennen Sie Virtualisierung bei dmo.ca