- Domina los comandos de VBoxManage para gestionar y automatizar VirtualBox
- Aprende a crear, modificar y administrar máquinas virtuales de forma óptima
- Configura adaptadores de red, discos y recursos avanzados por terminal
- Aprovecha scripts y trucos CLI para virtualización profesional y eficiente
¿Alguna vez te has preguntado cómo gestionar tus máquinas virtuales de forma eficiente y rápida desde la línea de comandos? Hoy en día, el dominio de herramientas como VBoxManage en VirtualBox es clave tanto para administradores de sistemas como para entusiastas de la virtualización que buscan agilizar tareas, optimizar recursos y automatizar procesos. Olvídate de la interfaz gráfica durante un rato: aquí descubrirás cómo hacer magia en tu terminal.
En este artículo tienes este tutorial sobre los comandos de VirtualBox, pensada para que puedas crear, modificar, administrar y automatizar cualquier máquina virtual, ya sea en Windows, Linux o macOS. No importa si empiezas desde cero o si buscas trucos avanzados: aquí encontrarás ejemplos claros, comandos prácticos y explicaciones sencillas de entender, para que pierdas el miedo a la consola y saques el máximo partido a VirtualBox.
¿Qué es VirtualBox y por qué deberías usar los comandos?
VirtualBox es una potente plataforma de virtualización multiplataforma que permite ejecutar múltiples sistemas operativos simultáneamente en tu ordenador. Es compatible con arquitecturas x86 y AMD64/Intel64, y destaca por su facilidad de uso y flexibilidad. Una de sus mayores ventajas reside en la herramienta de línea de comandos VBoxManage, que desbloquea todo el potencial de VirtualBox, permitiéndote realizar tareas tan variadas como automatizar despliegues, gestionar recursos, configurar redes o solucionar problemas que desde la interfaz gráfica pueden no estar disponibles.
Pero, ¿por qué utilizar VBoxManage? Aunque la interfaz gráfica es intuitiva, la CLI (interfaz de línea de comandos) de VirtualBox no solo ofrece todas las funciones disponibles (incluso ajustes avanzados y experimentales), sino que permite crear scripts, automatizar procesos repetitivos y manejar servidores sin entorno gráfico. Especialmente en entornos Linux o cuando se trabaja en servidores sin monitor, la línea de comandos es simplemente imprescindible.
Primeros pasos: Instalación y entorno de trabajo
Antes de lanzarte a escribir comandos, asegúrate de tener VirtualBox instalado en tu equipo. Es compatible con Windows, macOS, Linux y Solaris. En la mayoría de los casos, la instalación es sencilla y viene acompañada de VBoxManage, que se instala de forma predeterminada junto con VirtualBox.
Para asegurarte de que VBoxManage funciona correctamente y está en el PATH de tu sistema, simplemente abre una terminal y escribe VBoxManage. Si ves una lista de comandos, estás listo para empezar. Si no, revisa las variables de entorno o consulta la ayuda de instalación específica de tu sistema.
Consejo: En Linux y macOS, puede que el comando sea vboxmanage (minúsculas), aunque normalmente ambas variantes funcionan igual.
Explorando las interfaces de VirtualBox
VirtualBox ofrece varias formas de interacción:
- VirtualBox Manager: la clásica interfaz gráfica de usuario (GUI).
- VBoxManage: la interfaz de línea de comandos (CLI), ideal para tareas avanzadas y automatización.
- API principal y servicios web: para integraciones y desarrollos personalizados.
Las acciones que realices con una interfaz se reflejan automáticamente en las demás. Por ejemplo, si creas una máquina virtual usando la terminal, aparecerá también en la GUI y viceversa.
Comandos esenciales para consultar y gestionar máquinas virtuales
Para empezar a trastear con VBoxManage, necesitas saber qué máquinas virtuales tienes disponibles y su estado.
Listar todas las máquinas virtuales registradas:
VBoxManage list vms
Ver máquinas virtuales en ejecución:
VBoxManage list runningvms
Consultar los tipos de sistemas operativos soportados por VirtualBox:
VBoxManage list ostypes
Este comando te ofrece una lista muy completa de sistemas soportados (Windows, Ubuntu, Debian, Solaris, etc), junto con sus IDs y descripciones, imprescindibles para indicar el sistema operativo correcto al crear una VM.
Creando una máquina virtual desde cero (caso práctico Ubuntu)
Vamos a ilustrar paso a paso cómo crear una máquina virtual de Ubuntu solo con comandos. Esto es aplicable a cualquier otro sistema, solo tienes que cambiar los nombres y parámetros.
1. Crear la máquina virtual y registrarla
VBoxManage createvm --name UbuntuServer --ostype Ubuntu_64 --register
¿Qué hace este comando? Genera un archivo de definición XML para la máquina virtual llamado «UbuntuServer», lo registra en VirtualBox y le asocia el tipo de sistema operativo Ubuntu 64 bits. El parámetro –register es fundamental para que la VM aparezca disponible en la aplicación.
2. Configurar el hardware de la máquina virtual
Una vez creada la máquina virtual, hay que ajustarle los parámetros de hardware: memoria RAM, CPUs, VRAM, etc.
VBoxManage modifyvm UbuntuServer --memory 2048 --cpus 2 --vram 128
Explicación rápida: Asignamos 2 GB de RAM, 2 CPUs virtuales y 128 MB de memoria de vídeo a la máquina nueva.
Para más personalización, puedes añadir la descripción de la VM:
VBoxManage modifyvm UbuntuServer --description "Servidor Ubuntu 22.04 para pruebas"
Si tu sistema host lo permite, es recomendable habilitar la virtualización por hardware y la opción IO APIC para un mejor rendimiento:
VBoxManage modifyvm UbuntuServer --hwvirtex on --ioapic on
3. Crear y conectar un disco duro virtual
Como cualquier ordenador físico, tu máquina necesita un disco duro virtual donde instalar el sistema operativo. Puedes crearlo con:
VBoxManage createhd --filename UbuntuServer.vdi --size 10240 --variant Standard
Este comando crea un disco VDI de 10 GB asignados dinámicamente. La ruta puede ser relativa o absoluta, según el sistema operativo y tu estructura de carpetas.
Nota importante: Puedes elegir entre imágenes de tamaño fijo o dinámico. Las imágenes dinámicas ocupan menos espacio inicialmente y crecen conforme se usan; las fijas pueden ofrecer un poquito más de rendimiento pero ocupan todo el espacio desde el principio.
4. Añadir el controlador de almacenamiento
Cada imagen de disco necesita un controlador para poder adjuntarse a la máquina virtual. Usualmente se emplea un controlador SATA:
VBoxManage storagectl UbuntuServer --name "SATA Controller" --add sata --bootable on
5. Adjuntar el disco duro virtual al controlador
VBoxManage storageattach UbuntuServer --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium UbuntuServer.vdi
Punto clave: Los puertos y dispositivos suelen empezar en 0. Puedes tener múltiples discos y controladores según lo que necesites.
6. Añadir un controlador IDE y conectar una imagen ISO
Para instalar el sistema operativo, normalmente necesitas montar una imagen ISO como si fuera un DVD. Primero, crea el controlador IDE:
VBoxManage storagectl UbuntuServer --name "IDE Controller" --add ide
Después, adjunta la imagen ISO:
VBoxManage storageattach UbuntuServer --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium /ruta/a/ubuntu.iso
Recuerda: Sustituye /ruta/a/ubuntu.iso por la ruta completa a tu archivo ISO.
7. Ajustar el arranque y puertos de red
Puedes configurar el orden de arranque para que la máquina busque primero en el CD/DVD e instale el sistema operativo antes de bootear con el disco duro:
VBoxManage modifyvm UbuntuServer --boot1 dvd --boot2 disk --boot3 none --boot4 none
Para conexión a red, VirtualBox ofrece múltiples opciones: NAT, bridge, solo anfitrión, red interna, etc. El modo «bridge» conecta la VM directamente a la red del host, ideal para pruebas en red:
VBoxManage modifyvm UbuntuServer --nic1 bridged --bridgeadapter1 enp2s0
Ayuda: El nombre de la interfaz de red del host puede obtenerse con ifconfig (Linux) o ipconfig (Windows).
Iniciar y apagar máquinas virtuales desde la terminal
Arrancar la máquina virtual:
VBoxManage startvm UbuntuServer
Si prefieres que arranque en segundo plano (ideal en servidores o para scripting):
VBoxManage startvm UbuntuServer --type headless
Apagar la VM de manera ordenada (enviando señal ACPI, como pulsar el botón de apagado físico):
VBoxManage controlvm UbuntuServer acpipowerbutton
Forzar apagado inmediato (como desenchufar el cable):
VBoxManage controlvm UbuntuServer poweroff
Reiniciar una máquina virtual al vuelo:
VBoxManage controlvm UbuntuServer reset
Consultar información detallada y gestionar el ciclo de vida de las máquinas virtuales
Para ver todos los detalles de una VM (memoria, red, discos, estado, etc):
VBoxManage showvminfo UbuntuServer
Para registrar una máquina virtual existente (por ejemplo, tras mover archivos .vbox):
VBoxManage registervm '/ruta/a/VirtualBox VMs/UbuntuServer/UbuntuServer.vbox'
Para anular el registro (la VM no se borra del disco, solo desaparece del listado de VirtualBox):
VBoxManage unregistervm UbuntuServer
Para eliminar una VM y todos sus archivos asociados:
VBoxManage unregistervm --delete UbuntuServer
Clonar, exportar e importar máquinas virtuales
Para crear una copia exacta de una máquina virtual, incluidos todos sus discos y configuraciones, puedes consultar cómo clonar máquinas virtuales en VirtualBox.
Para exportar una máquina virtual en formato OVF (ideal para migración o copia de seguridad):
VBoxManage export UbuntuServer --output UbuntuServer.ovf
Para importar una VM en formato OVF/Ova:
VBoxManage import UbuntuServer.ovf
Puedes examinar las características de la imagen OVA antes de importar (simulación):
VBoxManage import UbuntuServer.ova --dry-run
Gestión de discos y medios de almacenamiento (hdd, iso, dvd)
Crear discos adicionales:
VBoxManage createhd --filename /ruta/a/disk-extra.vdi --size 20480 --variant Standard
Agregar el disco duro a la VM:
VBoxManage storageattach UbuntuServer --storagectl "SATA Controller" --port 1 --device 0 --type hdd --medium /ruta/a/disk-extra.vdi
Quitar o cambiar la imagen ISO o disco:
VBoxManage storageattach UbuntuServer --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium none
Configuración avanzada: CPU, memoria dinámica, virtualización por hardware y otros parámetros
Modificar la cantidad de CPUs virtuales:
VBoxManage modifyvm UbuntuServer --cpus 4
Limitar la utilización de CPU:
VBoxManage modifyvm UbuntuServer --cpuexecutioncap 50
Habilitar la virtualización de hardware (Intel VT-x o AMD-V):
VBoxManage modifyvm UbuntuServer --hwvirtex on
Asignar memoria RAM y VRAM a medida:
VBoxManage modifyvm UbuntuServer --memory 4096 --vram 256
Ajustar la descripción de la máquina virtual:
VBoxManage modifyvm UbuntuServer --description "Prueba con Ubuntu Server 22.04 LTS"
Configuración de red: NAT, bridge, adaptadores y utilidades asociadas
VirtualBox es especialmente potente para entornos de red virtualizada. Según el modo de red, la VM estará aislada, expuesta a la red local o incluso en redes internas privadas entre varias VMs. Para gestionar las conexiones, revisa cómo compartir carpetas en VirtualBox y facilitar el intercambio de archivos en tus máquinas virtuales.
Configurar red en modo NAT (por defecto):
VBoxManage modifyvm UbuntuServer --nic1 nat
Configurar red en modo bridge:
VBoxManage modifyvm UbuntuServer --nic1 bridged --bridgeadapter1 enp3s0
Ver todas las interfaces de red en modo bridge (útil para saber el nombre del adaptador de tu host):
VBoxManage list bridgedifs
Gestión de unidades ópticas, imágenes ISO y almacenamiento extra
Además del disco duro principal, puedes montar unidades ópticas virtuales, imágenes ISO de instalación o drivers, y desconectarlas tras el uso. Para una gestión más avanzada, consulta cómo redimensionar discos virtuales en VirtualBox.
Añadir un controlador IDE/ SATA para almacenamiento extra:
VBoxManage storagectl UbuntuServer --name "Controlador Extra" --add sata
Montar una ISO en la unidad óptica virtual:
VBoxManage storageattach UbuntuServer --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium /ruta/completa/imagen.iso
Quitar la imagen ISO:
VBoxManage storageattach UbuntuServer --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium none
Automatización y scripting con VBoxManage
Una de las grandes ventajas de la CLI es la posibilidad de crear scripts que automation procesos repetitivos. Por ejemplo:
- Crear e iniciar varias máquinas virtuales automáticamente con scripts bash o batch.
- Automatizar copias de seguridad, clonados, exportaciones o incluso instalaciones automáticas usando imágenes ISO personalizadas.
- Lanzar máquinas virtuales en modo headless para laboratorios o servidores sin interfaz gráfica.
Pista: Puedes usar bucles en bash para crear muchas VMs cambiando solo el nombre y algunos parámetros. Esto es muy utilizado en pruebas de software y despliegues en masa.
Gestión de extensiones y funcionalidades adicionales
VirtualBox soporta paquetes de extensión (Extension Packs) que habilitan funcionalidades avanzadas como USB 2.0/3.0, VirtualBox RDP, PXE boot para tarjetas Intel, etc. Para gestionar las extensiones, revisa cómo instalar extensión pack en VirtualBox.
Listar las extensiones instaladas:
VBoxManage list extpacks
Recuerda actualizar el Extension Pack cuando actualices VirtualBox para evitar incompatibilidades.
Gestión remota y modo headless
VirtualBox permite ejecutar y gestionar máquinas virtuales en servidores sin monitor (modo headless) y acceder a ellas remotamente mediante RDP u otras herramientas.
Iniciar una máquina en modo headless:
VBoxManage startvm UbuntuServer --type headless
Habilitar VRDP (VirtualBox Remote Desktop Protocol):
VBoxManage modifyvm UbuntuServer --vrde on
Después puedes conectar a través de cualquier cliente RDP (como mstsc en Windows o Remmina en Linux) usando la IP y el puerto configurados en la máquina host.
Ejemplo avanzado: Script para crear y configurar una VM completa
Si quieres ir más allá, aquí tienes un ejemplo base de script (tipo bash) que automatiza la creación y configuración de una VM con Ubuntu 22.04. Adáptalo según lo necesites.
#!/bin/bash
NAME="UbuntuScriptTest"
VBoxManage createvm --name $NAME --ostype Ubuntu_64 --register
VBoxManage modifyvm $NAME --memory 2048 --cpus 2 --vram 128
VBoxManage createhd --filename $NAME.vdi --size 10240 --variant Standard
VBoxManage storagectl $NAME --name "SATA Controller" --add sata --bootable on
VBoxManage storageattach $NAME --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium $NAME.vdi
VBoxManage storagectl $NAME --name "IDE Controller" --add ide
VBoxManage storageattach $NAME --storagectl "IDE Controller" --port 0 --device 0 --type dvddrive --medium /ruta/a/ubuntu.iso
VBoxManage modifyvm $NAME --nic1 bridged --bridgeadapter1 enp3s0
VBoxManage startvm $NAME --type headless
¡Y listo! En menos de un minuto tienes una VM lista para instalar Ubuntu de forma automática.
Dominar los comandos de VirtualBox y su uso desde la línea de comandos es un recurso invaluable para cualquier amante de la virtualización, sysadmin o desarrollador que quiera sacar todo el partido a sus sistemas. Desde la automatización con scripts, la gestión avanzada de redes, la importación y exportación de máquinas, hasta la resolución rápida de problemas, los ejemplos aquí recopilados y explicados te permitirán enfrentarte a casi cualquier reto. Ahora que tienes todos los trucos, comandos y recomendaciones, ponlos en práctica: tu próxima máquina virtual te lo agradecerá.
Redactor apasionado del mundo de los bytes y la tecnología en general. Me encanta compartir mis conocimientos a través de la escritura, y eso es lo que haré en este blog, mostrarte todo lo más interesante sobre gadgets, software, hardware, tendencias tecnológicas, y más. Mi objetivo es ayudarte a navegar por el mundo digital de forma sencilla y entretenida.