Wenn ich Zugriff auf ein VPS habe, muss ich wissen, welche Art von Virtualisierung vom Terminal ausgeführt wird.
Wie kann die Virtualisierungsplattform ermittelt werden, auf der meine VM ausgeführt wird? (OpenVZ, Xen, KVM usw.?)
Wenn ich Zugriff auf ein VPS habe, muss ich wissen, welche Art von Virtualisierung vom Terminal ausgeführt wird.
Wie kann die Virtualisierungsplattform ermittelt werden, auf der meine VM ausgeführt wird? (OpenVZ, Xen, KVM usw.?)
Antworten:
hostnamectl
ist dein Freund (erfordert systemd
).
Einige Beispiele:
Laptop ohne Virtualisierung
$ hostnamectl status
Static hostname: earth.gangs.net
Icon name: computer-laptop
Chassis: laptop
Machine ID: 18a0752e1ccbeef09da51ad17fab1f1b
Boot ID: beefdc99969e4a4a8525ff842b383c62
Operating System: Ubuntu 16.04.2 LTS
Kernel: Linux 4.4.0-66-generic
Architecture: x86-64
Xen
$ hostnamectl status
Static hostname: pluto.gangs.net
Icon name: computer-vm
Chassis: vm
Machine ID: beef39aebbf8ba220ed0438b54497609
Boot ID: beefc71e97ed48dbb436a470fe1920e1
Virtualization: xen
Operating System: Ubuntu 16.04.2 LTS
Kernel: Linux 3.13.0-37-generic
Architecture: x86-64
OpenVZ
$ hostnamectl status
Static hostname: mars.gangs.net
Icon name: computer-container
Chassis: container
Machine ID: 55296cb0566a4aaca10b8e3a4b28beef
Boot ID: 1bb259b0eb064d9eb8a22d112211beef
Virtualization: openvz
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 2.6.32-042stab120.16
Architecture: x86-64
KVM
$ hostnamectl status
Static hostname: mercury.gangs.net
Icon name: computer-vm
Chassis: vm
Machine ID: beeffefc50ae499881b024c25895ec86
Boot ID: beef9c7662a240b3b3b04cef3d1518f0
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-514.10.2.el7.x86_64
Architecture: x86-64
Failed to create bus connection: No such file or directory
Wenn der VM-Host Sie nicht anlügt, kann dies im Allgemeinen durch Überprüfen der "Hardware" herausgefunden werden, die der VM-Gast sieht.
Am einfachsten ist es wahrscheinlich, ein Programm wie virt-what zu verwenden , das das Parsen für Sie erledigt. Hier gehe ich blind davon aus, dass Sie übrigens eine Art Linux-basierte Distribution ausführen.
Es könnte sich auch lohnen, einen Blick auf den Puppet Facter zu werfen , der ebenfalls ähnliche Techniken verwendet, um festzustellen, in welcher Art von VM-Umgebung er ausgeführt wird.
Oder könnten Sie fragen, bei wem auch immer Sie den VPS mieten? :-)
facter
. Es ruft virt-what
!
Verwenden Sie den virt-what
Befehl, um den Typ der vom System verwendeten Virtualisierungstechnologie zu bestimmen.