Virtualización · 4 min read · Dec 02, 2025
VBoxHeadless - Ejecutando Máquinas Virtuales Con VirtualBox 4.2 En Un Servidor Ubuntu 12.10 Sin Interfaz Gráfica
VBoxHeadless - Ejecutando Máquinas Virtuales Con VirtualBox 4.2 En Un Servidor Ubuntu 12.10 Sin Interfaz Gráfica
Versión 1.0
Autor: Falko Timme
Sígueme en Twitter
Esta guía explica cómo puedes ejecutar máquinas virtuales con VirtualBox 4.2 en un servidor Ubuntu 12.10 sin interfaz gráfica. Normalmente, utilizas la GUI de VirtualBox para gestionar tus máquinas virtuales, pero un servidor no tiene un entorno de escritorio. Afortunadamente, VirtualBox viene con una herramienta llamada VBoxHeadless que te permite conectarte a las máquinas virtuales a través de una conexión de escritorio remoto, por lo que no hay necesidad de la GUI de VirtualBox.
¡No ofrezco ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
He probado esto en un servidor Ubuntu 12.10 (sistema host) con la dirección IP 192.168.0.100 donde estoy conectado como un usuario normal (nombre de usuario administrador en este ejemplo) en lugar de como root.
2 Instalando VirtualBox
Para instalar VirtualBox 4.2 en nuestro servidor Ubuntu 12.10, abrimos /etc/apt/sources.list…
sudo vi /etc/apt/sources.list… y agregamos la siguiente línea:
| [...] deb http://download.virtualbox.org/virtualbox/debian quantal contrib |
Luego descargamos la clave pública de VirtualBox…
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -… y actualizamos nuestra base de datos de paquetes:
sudo apt-get updateDespués, instalamos VirtualBox 4.2 de la siguiente manera:
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-4.2 dkms(El paquete dkms asegura que los módulos del kernel del host de VirtualBox se actualicen correctamente si la versión del kernel de Linux cambia.)
A partir de la versión 4.0, VirtualBox ha introducido lo que se llaman “paquetes de extensión” y ha externalizado algunas funcionalidades como el soporte de conexión de escritorio remoto (VRDP) que formaba parte de los paquetes de VirtualBox antes de la versión 4.0 en estos paquetes de extensión. Debido a que necesitamos conexiones de escritorio remoto para controlar nuestras máquinas virtuales, necesitamos instalar el paquete de extensión apropiado ahora. Ve a http://www.virtualbox.org/wiki/Downloads, y encontrarás un enlace al siguiente paquete de extensión:
VirtualBox 4.2.4 Oracle VM VirtualBox Extension Pack
Soporte para dispositivos USB 2.0, VirtualBox RDP y arranque PXE para tarjetas Intel.Descarga e instala el paquete de extensión de la siguiente manera:
cd /tmp
wget http://download.virtualbox.org/virtualbox/4.2.4/Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack(Asegúrate de obtener la última versión del sitio web de VirtualBox.)
(Asegúrate de ejecutar el último comando con sudo - sudo VBoxManage extpack install … - porque de lo contrario obtendrás un error como este:
administrator@server1:/tmp$ VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack
0%...
Estado de progreso: NS_ERROR_FAILURE
VBoxManage: error: Falló al instalar "/tmp/Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack": El instalador falló con el código de salida 127: Error al crear el agente de autenticación textual: Error al abrir el terminal de control actual para el proceso (`/dev/tty'): No existe tal dispositivo o dirección
administrator@server1:/tmp$)
Ahora debemos agregar al usuario que ejecutará VirtualBox (administrador en este ejemplo) al grupo vboxusers:
sudo adduser administrator vboxusersVirtualBox ahora está instalado y listo para ser utilizado.
3 Usando VirtualBox En La Línea De Comandos
3.1 Creando Una VM
Para crear una VM en la línea de comandos, podemos usar el comando VBoxManage. Consulta
VBoxManage --helppara una lista de opciones disponibles y (¡muy recomendado!) echa un vistazo a http://www.virtualbox.org/manual/ch08.html.
Ahora crearé una VM de Ubuntu 12.10 Server con 512MB de memoria y un disco duro de 10GB a partir de la imagen iso de Ubuntu 12.10 Server (que he almacenado en /home/ubuntu-12.10-server-amd64.iso):
VBoxManage createvm --name "Ubuntu 12.10 Server" --register
VBoxManage modifyvm "Ubuntu 12.10 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
VBoxManage createhd --filename Ubuntu_12_10_Server.vdi --size 10000
VBoxManage storagectl "Ubuntu 12.10 Server" --name "IDE Controller" --add ide
VBoxManage storageattach "Ubuntu 12.10 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_12_10_Server.vdi
VBoxManage storageattach "Ubuntu 12.10 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-12.10-server-amd64.iso3.2 Importando Una VM Existente
Supongamos que tienes una VM llamada examplevm que deseas reutilizar en este host. En el antiguo host, deberías tener un directorio Machines/examplevm en el directorio de VirtualBox; Machines/examplevm debería contener el archivo examplevm.xml. Copia el directorio examplevm (incluyendo el archivo examplevm.xml) a tu nuevo directorio Machines (si tu nombre de usuario es administrador, este es /home/administrator/.VirtualBox/Machines - el resultado debería ser /home/administrator/.VirtualBox/Machines/examplevm/examplevm.xml).
Además de eso, copia el archivo examplevm.vdi del antiguo directorio VDI al nuevo (por ejemplo, /home/administrator/.VirtualBox/VDI/examplevm.vdi).
Después, debes registrar la VM importada:
VBoxManage registervm Machines/examplevm/examplevm.xml3.3 Iniciando Una VM Con VBoxHeadless
Independientemente de si creas una nueva VM o importas una antigua, puedes iniciarla con el comando:
VBoxHeadless --startvm "Ubuntu 12.10 Server"(Reemplaza Ubuntu 12.10 Server con el nombre de tu VM.)
VBoxHeadless iniciará la VM y un servidor VRDP (Protocolo de Escritorio Remoto de VirtualBox) que te permite ver la salida de la VM de forma remota en otra máquina.
Para detener una VM, ejecuta
VBoxManage controlvm "Ubuntu 12.10 Server" poweroffPara pausar una VM, ejecuta
VBoxManage controlvm "Ubuntu 12.10 Server" pausePara reiniciar una VM, ejecuta
VBoxManage controlvm "Ubuntu 12.10 Server" resetPara aprender más sobre VBoxHeadless, echa un vistazo a
VBoxHeadless --helpy en http://www.virtualbox.org/manual/ch07.html#vboxheadless.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.