
Al tener acceso a un VPS, necesito saber qué tipo de virtualización está ejecutando desde el terminal.
¿Cómo puedo determinar la plataforma de virtualización en la que se ejecuta mi VM? (¿OpenVZ, Xen, KVM, etc.?)
Respuesta1
hostnamectl
es tu amigo (requieresystemd
).
Algunos ejemplos:
Laptop sin virtualización
$ 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
xén
$ 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
AbiertoVZ
$ 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
Respuesta2
A menos que el host de la VM le esté mintiendo, generalmente se puede descubrir inspeccionando el "hardware" que está viendo el invitado de la VM.
Probablemente lo más fácil sea utilizar un programa comovirt-qué, que hará el análisis por usted. Por cierto, aquí estoy asumiendo ciegamente que estás ejecutando algún tipo de distribución basada en Linux.
También podría valer la pena echarle un vistazo a las marionetas.factor, que también utiliza técnicas similares para determinar en qué tipo de entorno de VM se está ejecutando.
¿O podrías preguntarle a quién le estás alquilando el VPS? :-)
Respuesta3
Utilice el virt-what
comando para determinar el tipo de tecnología de virtualización que utiliza el sistema.
Respuesta4
Debian viene con este pequeño paquete para detectar el tipo de virtualización:
$ sudo apt-get install virt-what
$ virt-what
y un poco más grande debido a las dependencias de Perl:
$ sudo apt-get install imvirt
$ imvirt