Esta breve guía describe cómo habilitar la virtualización anidada en VirtualBox en Linux. La virtualización anidada es una función que nos permite ejecutar máquinas virtuales dentro de máquinas virtuales. Por ejemplo, digamos que ejecuta una máquina virtual CentOS usando Oracle VirtualBox en su sistema Ubuntu Linux. Si la función VT anidada está habilitada en su Ubuntu, puede instalar virtualbox o KVM en la máquina virtual CentOS y ejecute otras máquinas virtuales dentro de ella. Básicamente, es un método para ejecutar un entorno de virtualización dentro de otro entorno de virtualización.
Habilitar virtualización anidada en VirtualBox
A partir de la versión 6.1 , Oracle VirtualBox admite la función de virtualización anidada en sistemas host que ejecutan CPU AMD e Intel. Así que asegúrese de ejecutar la última versión de virtualbox.
Podemos habilitar la función anidada desde la línea de comandos o desde la GUI. Primero, veamos la línea de comandos.
1. Habilite la función de virtualización anidada para VirtualBox VM desde la línea de comandos
Primero, busquemos la lista de máquinas virtuales disponibles usando el comando:
$ vboxmanage list vms
Salida de muestra:
"CentOS 8 Server" {73997fc7-4ae2-42bf-a11d-fcbe00721e13} "Ubuntu 20.04 Server" {a7cab540-51c2-4110-b489-a4ad13b71f96}
enumerar las VM de virtualbox disponibles
Como puede ver, he creado dos máquinas virtuales en mi Virtualbox.
Ahora, voy a habilitar la función anidada para una máquina virtual CentOS 8 usando el comando:
$ VBoxManage modifyvm "Ubuntu 20.04 Server" --nested-hw-virt on
Además, puede usar el comando vboxmanage en minúsculas:
$ vboxmanage modifyvm "Ubuntu 20.04 Server" --nested-hw-virt on
Este comando habilita la virtualización anidada, con transferencia de funciones de virtualización de hardware a la máquina virtual invitada.
Aquí, he incluido el nombre de la máquina virtual entre comillas porque contiene espacios en el nombre. Si no tiene espacios en el nombre, no necesita mencionarlo entre comillas.
2. Habilitar la función de virtualización anidada para VirtualBox VM desde GUI
Abra el administrador de VirtualBox desde Dash o Menu. Haga clic en la máquina virtual en la que desea habilitar la función anidada y luego seleccione "Configuración".
configuración de máquina virtual en virtualbox
Vaya a "Sistema -> Procesador" y haga clic en la casilla de verificación "Habilitar VT-x/AMD-V anidado". Haga clic en Aceptar para guardar los cambios.
Habilite la virtualización anidada en virtualbox manager
De ahora en adelante, esta VM actuará como un hipervisor, para que pueda ejecutar VM dentro de ella.
Como ya mencioné, la función Nested VT está disponible en sistemas host que ejecutan CPU AMD e Intel. Sin embargo, para las CPU Intel, la opción está atenuada. Por lo tanto, no puede habilitarlo directamente desde el administrador de Virtualbox.
La opción Habilitar VT-x anidado está atenuada en virtualbox
Para habilitar la función anidada en las CPU Intel, siga la línea de comandos como se describe en la sección anterior.
4. Verifique si la virtualización anidada está habilitada para máquinas virtuales
Inicie la máquina virtual en la que acaba de habilitar la función anidada.
Inicie sesión en la VM y ejecute el siguiente comando para verificar si la función anidada está habilitada o no:
$ egrep --color -i "svm|vmx" /proc/cpuinfo
Verifique si la virtualización anidada está habilitada en virtualbox VM
Si ve “vmx” (tecnología Intel-VT) o “svm” (Compatibilidad con AMD-V) en la salida, la máquina invitada virtualbox puede funcionar como hipervisor y host de máquinas virtuales. Como puede ver en el resultado anterior, mi máquina virtual Ubuntu 20.04 admite la virtualización.
Consulte la siguiente guía para conocer más formas de comprobar si un sistema Linux es compatible con VT o no.
- Cómo averiguar si una CPU es compatible con la tecnología de virtualización (VT)
Lectura relacionada:
- Cómo habilitar la virtualización anidada en KVM en Linux