VirtualBox desde consola

Improvisa :: Informática :: VirtualBox desde consolaEn este nuevo Howto os enseñaremos a manejar VirtualBox desde consola. La pregunta nos surgió a CeLSuM y a mi cuando intentábamos crear un servidor de máquinas virtuales pero sin tener que instalar X, es decir un servidor en el que sólo pudiesemos utilizar la consola. La aplicación VirtualBox permite la creacion de máquinas virtuales desde consola, asi como su modificación, tambien desde consola, y todos los comandos que podamos ejecutar sobre la máquina virtual están contemplados en el aplicativo que utiliza Virtua­lBox para­ la administración de sus maquinas desde la interfaz de comandos.

Dividiremos el HowTo en Instalación, creación de máquinas virtuales, inicio de las máquinas virtuales asi como instalación del sistema operativo en las mismas, borrado de máquinas virtuales y una breve explicación de como manejar las máquinas virtuales, arreglaremos además el problema que le surgió a CeLSuM con el reescalado de la máquina virtual.

Pongámonos manos a la obra:

­Comenzaremos con la instalación de VirtualBox en nuestro sistema operativo anfitrión, yo como siempre elijo Debian­­, os cuento­ que la versión que trae Debian por defecto es algo peor que la que nos podemos bajar desde la página de VirtualBox, la instalación es muy simple, podemos hacerlo por dos caminos, descargando el paquete e instalarlo junto con sus dependencias o agragando una linea anuestro /etc/apt/sources.list

Mediante dpkg:

virtualbox_desde_consola:/# cd /usr/src
virtualbox_desde_consola:/usr/src# wget http://download.virtualbox.org/virtualbox/2.1.4/virtualbox-2.1_2.1.4-42893_Debian_lenny_i386.deb -O virtualbox.deb

una vez lo tenemos pasemos a instalarlo, debemos resolver todas sus dependencias:

virtualbox_desde_consola:/# dpkg -i virtualbox.deb

virtualbox_desde_consola:/#apt-get install todas_las_dependencias

virtualbox_desde_consola:/# dpkg -i virtualbox.deb

Mediante apt-get

virtualbox_desde_consola:/# vi /etc/apt/sources.list

añadiremos la siguiente linea:

deb http://download.virtualbox.org/virtualbox/debian lenny non-free

Descargaremos la key  y la instalaremos.

virtualbox_desde_consola:/# wget http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc

virtualbox_desde_consola:/# sudo apt-key add sun_vbox.asc

virtualbox_desde_consola:/# wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add –

virtualbox_desde_consola:/#  apt-get update

virtualbox_desde_consola:/# apt-get install virtualbox-2.1

­Muy bien, una vez instalado VirtualBox pasaremos a explicar como crear las máquinas virutales para su posterior manejo dede la consola:

CREACION DE MÁQUINAS VIRTUALES VIRTUALBOX DESDE CONSOLA

Creamos la máquina virtual
virtualbox_desde_consola:/# VBoxManage createvm -name Pruebita -register

Creamos el disco duro
virtualbox_desde_consola:/# VBoxManage createvdi -filename Pruebita.vdi -size 8000 -register

Asociamos el disco duro a la máquina pruebita:
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -hda Pruebita.vdi -ostype debian

Le asignamos la memoria correspondiente a la máquina virtual
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -memory 512

Le asignamos la tarjeta de red, en nuestro caso queremos que esté en la misma subred que todas las maquinas de la oficina, para ello tenemos que utilizar el script que utilizamos en Improvisa en el documento­ ­­"Bridge automático para VirtualBox"
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -nic1 hostif -cableconnected1 on -hostifdev1 tap1

Registramos la imagen desde la que inciará la nueva máquina, usad aqui vuestro sistema operativo, yo en este ejemplo utilizo el cd de instalación de debian lenny.
virtualbox_desde_consola:/# VBoxManage registerimage dvd /usr/src/debian-500-i386-businesscard.iso

Listamos las imagenes registradas para utilizarlas posteriormente:
virtualbox_desde_consola:/# VBoxManage list dvds
UUID:       33e7bcf8-bcee-48cb-abbe-8b5b42d9c274
Path:       /usr/src/debian-50-i386-businesscard.iso
Accessible: no

Asociamos DVD a la máquina virtual:
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -dvd 33e7bcf8-bcee-48cb-abbe-8b5b42d9c274

Añadimos audio:
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -audio alsa -audiocontroller sb16 -clipboard bidirectional

Le decimos que arranque desde el DVD, acordaros luego de quitarlo:
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -boot1 dvd

Una vez creada podemos ver como nos ha quedado:

virtualbox_desde_consola:/# VBoxManage showvminfo Pruebita

LANZAMIENTO DE LA MÁQUINA VIRTUAL VIRTUALBOX

Una vez creada debemos ser capaces de instalar el sistema operativo que debamos, para ello necesitamos un entorno de escritorio, pero este no tiene porque estar en la máquina anfitriona, puede estar perfectamente en otro equipo. Para poder manejar la maquina virtual debemos levantarla con las siguientes opciones:

Le diremos que el puerto de escucha es el 3389, de la IP del sistema operativo anfitrion, es decir el servidor de maquinas virtuales.
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -vrdpport 3389

Ahora lanzamos la máquina diciendole que nos conectaremos mediante vrdp:
virtualbox_desde_consola:/# VBoxManage startvm Pruebita -type vrdp

­CONEXION A LA MÁQUINA VIRTUAL VIRTUALBOX

Desde
una maquina con X nos conectamos por Conexion a escritorio remoto (Si
es windows) o con rdesktop (RDPV5) si es linux, tambien llamado cliente
de servidor de terminales, alojado en Internet en KDE. Acordaos que debe ser a la IP del servidor de máquinas virtuales y al puerto que hemos configurado, en nuestro caso 3389.

BORRADO DE UNA MÁQUINA VIRTUAL VIRTUALBOX

Desasociamos el disco duro de la máquina virtual Pruebita:
virtualbox_desde_consola:/# VBoxManage modifyvm Pruebita -hda none

Desregistramos el disco duro:
virtualbox_desde_consola:/# VBoxManage unregisterimage disk Pruebita.vdi

Borramos la máquina de VirtualBox:
virtualbox_desde_consola:/# VBoxManage unregistervm Pruebita -delete

Borramos fisicamente el disco duro:
virtualbox_desde_consola:/# rm /root/.VirtualBox/HardDisks/Pruebita.vdi­

­

PROBLEMAS DE REESCALADO

Es posible que en algún momento de la instalación la máquina se nos apague y no podamos recuperarla, ni si quiera apagarla, es un problema del reescalado de la configuración de pantalla y, en mi caso, rdesktop, el error es el siguiente:

virtualbox_desde_consola:/# VBoxManage controlvm FacturaPlus poweroff
VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

[!] FAILED calling a->virtualBox->

OpenExistingSession (a->session, uuid) at line 2784!
[!] Primary RC  = VBOX_E_INVALID_SESSION_STATE (0x80BB000B) – Current session state prohibits operation
[!] Full error info present: true , basic error info present: true
[!] Result Code = VBOX_E_INVALID_SESSION_STATE (0x80BB000B) – Current session state prohibits operation
[!] Text        = The machine ‘FacturaPlus’ does not have an open session
[!] Component   = Machine, Interface: IMachine, {ea6fb7ea-1993-4642-b113-
f29eb39e0df0}
[!] Callee      = IVirtualBox, {339abca2-f47a-4302-87f5-
7bc324e6bbde}
feda:/usr/src# VBoxManage controlvm FacturaPlus
VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

Para solucionarlo bastará con eliminar la maquina y volver a crearla  y al levantarla para la instalación hacerlo con el siguiente comando:

virtualbox_desde_consola:/# VBoxManage controlvm Pruebita setvideomodehint 800 600 16

De esta forma levantamos la maquina virtual obligando a la configuración de pantalla a 800 x 600 evitando el reescalado, hasta que instalemos las Guest Addittions, muy recomendables por cierto.

Solo queda dar las gracias:

A la gente de Doctores del PC ­ya que nos hemos ayudado mutuamente.

Bueno e­spero que os valga lomismo que a nosotros.

Saludos.

Print Friendly, PDF & Email
Trackbacks Comentarios
  • CeLSuM dice:

    Por fin tengo unos minutillos, y digo minutillos porque me tengo que pirar otra vez en breves..

    En cuanto a la máquina virtual con VirtualBox que estuvimos testeando Juanmi y yo, me dejó “FLIPADO” así de claro, FLIIII-PAAA-DOOO el poder montar un sistema completo por consola y evitarte tener que montar un entorno con escritorio para usar el VirtualBox con todo el ahorro de recursos que esto supone, parecía magia.

    Quizás el único pero que le pongo por poner algo es que la máquina donde se vaya a montar ha de ser un buen pepino para soportar el sistema base debian y los sistema auxiliares que quieras montar.

    Pero en definitiva, ¡¡¡vamos no me compro la camiseta del VirtualBox de milagro!!!.. xD

    Salu2

  • Juanmi dice:

    Lo de que hay que tener un buen pepino esta claro, pero claro ocurrira con todos los sistemas gestortes de maquinas virtuales.

    En consumo de recursos gana el que menos está claro, es Xen pero para estudiar este sistema ya utilizaremo a otra cobaya, verdad CeLSuM 😉

  • CeLSuM dice:

    NOTA:

    Podemos ver los tipos de sistemas que podemos asignar con VBoxManage list ostypes