Si por fin has empezado a trabajar con máquinas virtuales VirtualBox, probablemente habrá descubierto que el software es increíblemente fácil de usar. Con VirtualBox de Oracle, puede crear y desplegar máquinas virtuales de su distribución Linux favorita para pruebas o uso diario, Windows e incluso macOS.
La cuestión es la siguiente: si creas una instancia de máquina virtual de un sistema operativo de servidor, probablemente no quieras mantener las interfaces gráficas de VirtualBox en ejecución para llegar a un servidor sin cabeza. Las GUIs no sólo consumen recursos del sistema, sino que también podrían facilitar que algún inadvertido se acerque a tu escritorio y detenga un servidor en ejecución.
Si te encuentras con un caso así, querrás saber cómo ejecutar esas máquinas virtuales desde la línea de comandos.
Esto no sólo significa que ahorrará valiosos ciclos de CPU y RAM, sino que también podrá gestionar esas máquinas virtuales de forma remota. SSH en el host e iniciar, pausar, detener e incluso eliminar sus máquinas virtuales.
Para que esto funcione, necesitarás una instancia de VirtualBox instalada en un host Linux. También necesitarás un usuario con privilegios sudo. Eso es todo - manos a la obra.
Instalación del paquete de extensión de VirtualBox
Lo primero que debes hacer es instalar el VirtualBox Extension Pack. Con el paquete de extensión, cualquier máquina virtual que se inicie desde la línea de comandos no tendrá acceso a la red. Sin una red disponible, esas máquinas virtuales son bastante inútiles.
Para instalar el paquete de extensión de VirtualBox, haga lo siguiente:
- Descarga la última versión del paquete de extensión desde el sitio de descargas de VirtualBox.
- Abre VirtualBox.
- Haz clic en Archivo > Herramientas > Gestor de extensiones.
- Haz clic en Instalar (Figura 1).
- Navega hasta donde guardaste el archivo del paquete de extensión descargado, que terminará en .vbox-extpack.
- Haz clic en Abrir.
- Escribe tu contraseña sudo.
- Haga clic en Aceptar.
Ahora que el paquete de extensión está instalado (debería aparecer en la lista del Gestor), está listo para empezar a trabajar con sus máquinas virtuales desde la línea de comandos.
Lista de máquinas virtuales
Para gestionar tus máquinas virtuales, tienes que conocer sus nombres completos, que puedes encontrar con el comando:
VBoxManage list vms
Esas son todas las máquinas virtuales actuales que he añadido a VirtualBox.
Digamos que quieres iniciar la máquina virtual «Ubuntu Server». Para eso, el comando sería:
VBoxManage startvm "Ubuntu Server" --type headless
Puedes verificar que se está ejecutando emitiendo el siguiente comando:
VBoxManage list runningvms
A continuación, puedes acceder a la máquina virtual como lo haría normalmente (siempre y cuando recuerde la dirección IP del servidor).
Aquí hay algunos comandos más que puede utilizar para gestionar esas máquinas virtuales (me quedo con el Ubuntu Server VM como ejemplo):
- Pausar a virtual machine
VBoxManage controlvm “Ubuntu Server” pause --type headless
- Restart a paused virtual machine:
VBoxManage controlvm “Ubuntu Server” resume --type headless
- Shutdown a running virtual machine:
VBoxManage controlvm “Ubuntu Server” poweroff --type headless
- Delete a virtual machine:
VBoxManage unregistervpm "Ubuntu Server" --delete-all
Creación de una nueva máquina virtual
VBoxManage createvm --name Ubuntu_Server --ostype --register --basefolder `pwd` Ubuntu24_LTS_64
Configurar la RAM y la tarjeta de red
VBoxManage modifyvm Ubuntu_Server --ioapic onVBoxManage modifyvm Ubuntu_server --memory 1024 --vram 128VBoxManage modifyvm Ubuntu_Server --nic1 bridged
Crear el Disco y Conectar la Imagen ISO
Ahora crearemos un disco duro SATA de 80GB y un CDROM con una ISO de Ubuntu adjunta con los comandos (modifícalos según sea necesario):
VBoxManage createhd --filename `pwd`/Ubuntu_Server/Ubuntu_Server_DISK.vdi --size 80000 --format VDI
VBoxManage storagectl Ubuntu_Server --name "SATA Controller" --add sata --controller IntelAhci
VBoxManage storageattach Ubuntu_Server --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium `pwd`/Ubuntu_Server/Ubuntu_Server_DISK.vdi
VBoxManage storagectl Ubuntu_Server --name "IDE Controller" --add ide --controller PIIX4
VBoxManage storageattach Ubuntu_Server --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium `pwd`/ISO
VBoxManage modifyvm Ubuntu_Server --boot1 dvd --boot2 disk --boot3 none --boot4 none
Configurar el acceso RDP
A continuación, configura el acceso RDP para que se pueda acceder desde la red con los comandos:
VBoxManage modifyvm Ubuntu_Server --vrde on
VBoxManage modifyvm Ubuntu_Server --vrdemulticon on --vrdeport 10001
VBoxHeadless --startvm Ubuntu_Server
A continuación, debe ser capaz de iniciar la nueva máquina virtual con el comando:
VBoxManage startvm Ubuntu_Server --type headless
Esto iniciará la máquina virtual y podrás acceder a ella a través de RDP en el puerto 10001, donde podrás terminar de instalar el sistema operativo invitado.
Y eso es todo lo que hay que hacer para gestionar tus máquinas virtuales VirtualBox desde la línea de comandos. Si te soy 100% sincero, prefiero crear las máquinas virtuales desde la GUI y luego gestionarlas desde la línea de comandos.
Fuentes:
https://thenewstack.io/linux-how-to-run-virtualbox-vms-from-the-command-line/


No hay comentarios:
Publicar un comentario