Documentació doc.ubuntu-es.org

VirtualBox

VirtualBox virtualizando Windows XP sobre Ubuntu
Sun Microsystems
2.1.0 (17 de diciembre de 2008)
Máquina virtual
privativa
libre (GPL)
En español:
www.virtualbox.or

VirtualBox es una máquina virtual. Para entender este concepto es aconsejable leer el artículo que trata sobre virtualización.

A la hora de afrontar la virtualización de un sistema operativo es importante definir muy claramente lo que es el sistema invitado y lo que es el sistema anfitrión:

 

  • Sistema (Operativo) Anfitrión: es el sistema operativo donde tendremos instalado el programa VirtualBox que nos permitirá ejecutar otro sistema operativo encima y simultáneamente.
Ejemplo: ejecutar Windows sobre Ubuntu (nuestro sistema operativo es Ubuntu y dentro de él ejecutamos un Windows)

 

  • Sistema (Operativo) Invitado: es el sistema operativo que instalamos encima del anterior con la ayuda de VirtualBox.
Ejemplo: ejecutar Windows sobre Ubuntu (o sea que en este caso el «intruso» es Windows ;))

 

Tabla de contenidos

[esconder]

[editar] Versiones

Como paso previo a virtualizar algún sistema operativo bajo Ubuntu, veremos las dos versiones que hay y las diferencias entre ellas.

VirtualBox OSE (Open Source Edition)

Como bien indica su nombre es la versión de código abierto, distribuida bajo la licencia GPL. Es la que vamos a encontrar en los repositorios oficiales de Ubuntu junto al módulo que necesitamos precompilado. La carencia más significativa (se citan más abajo las diferencias) respecto a la versión PUEL es el soporte USB.

VirtualBox PUEL (Personal use and evaluation license)

Únicamente gratuita para un uso personal y de evaluación. Podemos obtener los binarios precompilados de la página oficial del proyecto, o bien agregando los repositorios oficiales de VirtualBox para instalarla mediante Synaptic o equivalentes. Las diferencias, que pueden encontrarse detalladamente aquí, son:

  • Servidor Remote Display Protocol (RDP).
  • Soporte USB.
  • USB sobre RDP.
  • Iniciador iSCSI.

Para nuestro propósito elegiremos la versión OSE que funciona exactamente igual (hablando de rendimiento) que la versión PUEL. En el caso de elegir la segunda, los pasos a seguir son los mismos.

 

[editar] Sistemas operativos que permite virtualizar

Virtualbox nos permite en principio crear una máquina virtual para ejecutar los siguientes sistemas operativos:

 

  • DOS
  • Windows 3.1
  • Windows 95
  • Windows 98
  • Windows NT 4
  • Windows Me
  • Windows 2000
  • Windows XP
  • Windows Server 2003
  • Windows Vista
  • OS/2 Warp 3
  • OS/2 Warp 4
  • OS/2 Warp 4.5
  • Linux 2.2
  • Linux 2.4
  • Linux 2.6
  • FreeBSD
  • OpenBSD
  • NetBSD
  • Netware
  • Solaris
  • L4


A pesar de ello, para estar a la última en cuanto a compatibilidad, funcionalidad, etc. de Virtualbox, tenemos el siguiente enlace (en inglés, aunque no hay que entender nada más que el código de colores), donde se nos muestra una tabla actualizada de sistemas operativos invitados en la que figura la efectividad con que se virtualizan con Virtualbox. El rango de colores de las filas es:

 

  • Verde: funcionamiento perfecto y además tiene GuestAdditions.
  • Ámbar: funcionamiento parcial pueden haber complicaciones o características no funcionales) y además puede tener GuestAdditions o puede que no.
  • Amarillo: funciona, pero no hay GuestAdditions para ese sistema operativo.
  • Rojo: no funciona.


Las filas marcadas con asteriscos contienen información proporcionada por usuarios y que aún no ha sido verificada por Innotek.

No nos debemos dejar llevar a malas interpretaciones:

Ejemplo: En la tabla aparecen Ubuntu 7.04 Server (servidor) y Ubuntu 7.10 (servidor) de color rojo. Esto no indica que no podamos instalar VirtualBox en ellos, si no que si intentamos instalar un Ubuntu 7.04 Server encima de otros sistema operativo (sistema operativo anfitrión), la virtualización no funcionará, que es algo independiente de si podemos instalar VirtualBox en Ubuntu 7.04 Server para virtualizar otro sistema operativo (como por ejempo un Windows).

 

Imagen:Clip.png Para usuarios principiantes: Este sistema de clasificación por colores puede confundirnos si somos nuevos en esto de Ubuntu y la Virtualización. Se trata meramente de una ayuda para usuarios más avanzados que quieran saber hasta qué punto se virtualiza eficientemente un sistema operativo sobre VirtualBox, pero no hay que obsesionarse con ello. La mayoría de usuarios principiantes virtualiza Windows XP, 2000 y Vista, y sólo hay que saber que la virtualización de estos sistemas operativos (invitados) es 100% eficiente.

 

[editar] Instalación

[editar] VirtualBox OSE

Podemos encontrar esta versión dentro de los repositorios la versión 7.10 de Ubuntu llamada Gutsy Gibbon.

Así que simplemente instalamos el paquete virtualbox-ose del repositorio universe de Ubuntu.

Para otras versiones de Ubuntu utilizar la siguiente parte.

[editar] VirtualBox PUEL

Podemos instalarlo de dos formas:

  • Mediante un paquete precompilado Deb.
  • Mediante Synaptic/apt/aptitude (recomendado).

 

[editar] Mediante paquete Deb

Primero tenemos que descargar el Deb de VirtualBox de la web oficial (en este caso, para Ubuntu). Una vez descargado (en este caso descargaremos el archivo en el escritorio), nos tendremos que ir al directorio donde está el fichero descargado e instalarlo con el comando dpkg en un terminal:


dpkg -i nombredelarchivo.deb

También podemos instalar el .deb con la aplicación gráfica de instalación de paquetes Deb de Ubuntu: Gdebi.

Puede que tengamos que instalar algunas librerías (dependencias) como: libqt3-mt, libxalan110 y libxerces27, pero en todo caso, si tenemos cualquier otro problema de dependencias el programa detendrá la instalación y nos las comunicará para que las podamos instalar nosotros. Esto añade una dificultad extra a este sistema.

 

Imagen:Clip.png Nota para nivel más avanzado: Otra desventaja de este sistema de instalación es que no podremos tener al día nuestra versión de Virtualbox a través del actualizador del sistema de Ubuntu, ya que no hemos modificado los repositorios.

 

[editar] Mediante APT

Este método es el mejor sistema y el más sencillo.

Primero, añadiremos el repositorio de Virtualbox correspondiente a nuestra versión de Ubuntu a nuestra lista de repositorios. Para saber el repositorio que nos corresponde podemos obtenerlo de esta web de Virtualbox.


 Ejemplo: deb http://www.virtualbox.org/debian feisty non-free  (repositorio para Feisty)

Una vez copiada la linea del repositorio que nos corresponda procederemos a añadirla en nuestro sources.list a través de un terminal:


sudo gedit /etc/apt/sources.list

Segundo, descargaremos la clave pública para apt-secure en el siguiente enlace para luego añadirla con el comando:


sudo apt-key add sun_vbox.asc


Tercero, actualizaremos la lista de repositorios y nuestra distribución antes de realizar cualquier instalación.


sudo apt-get update       ----> actualizamos la lista de repositorios


sudo apt-get dist-upgrade ----> Actualizamos los paquetes de nuestra distribución


Cuarto, procedemos a instalar VirtualBox con el gestor de paquetes que queramos: Synaptic, apt o aptitude, dependiendo de qué sistema nos guste más.

 

Imagen:Clip.png Nota para Nivel más Avanzado: La ventaja de seguir este método es que las dependencias las soluciona el propio gestor de paquetes, cosa que no ocurre con el método anterior y que además el actualizador de ubuntu se encarga de avisarmos de nuevas actualizaciones.

[editar] Configurar permisos de usuario para usar VirtualBox

Antes de arrancar el programa es interesante que realicemos ciertos cambios/comprobaciones para asegurarnos que nuestro usuario tiene privilegios sobre todo lo que precise para que Virtualbox nos trabaje a la perfección. este paso nos ahorrará muchos potenciales dolores de cabeza posteriores.

Primeramente debemos agregar a nuestro usuario en el grupo de usuarios vboxusers. Para ello tenemos que ir a:
Sistema -> Administración -> Usuarios y Grupos

Veremos la siguiente ventana (fig.1):

Fig.1 Ventana de Usuarios y Grupos
Fig.1 Ventana de Usuarios y Grupos
Seguidamente haremos click en Administrar Grupos. Nos abrirá otra ventana con la lista de grupos de usuarios. Tenemos que seleccionar el grupo vboxusers (fig.2):
Fig.2 Ventana de Configuración de Grupos de Usuarios
Fig.2 Ventana de Configuración de Grupos de Usuarios
Y apretamos en el botón Propiedades. Nos aparecerá la ventana de configuración del grupo vboxusers (fig.3).

Debemos seleccionar los usuarios (el nuestro y el de otro usuario del sistema que sepamos que va a usar VirtualBox) que queremos que accedan a VirtualBox. Una vez seleccionados, apretamos en «Aceptar» y listos.

Fig.3 Ventana de Propiedades del Grupo vboxusers
Fig.3 Ventana de Propiedades del Grupo vboxusers

[editar] Crear una Máquina Virtual

Para abrir el programa hemos de ir a:
Aplicaciones -> Herramientas del Sistema -> Innotek VirtualBox

con lo que nos aparecerá la siguiente ventana (fig.4):

Fig.4 Ventana Principal de Innotek VirtualBox
Fig.4 Ventana Principal de Innotek VirtualBox
En la imagen anterior se ve una máquina virtual creada, pero en vuestro caso no será así. Para crear una máquina virtual tendremos que pulsar en «Nueva» o teclear Ctrl + N, como puede verse en la imagen anterior.

Nos aparecerá una nueva ventana en la que aparece el siguiente asistente (fig.5):

Fig.5 Ventana del Asistente para la Creación de una Nueva Máquina Virtual
Fig.5 Ventana del Asistente para la Creación de una Nueva Máquina Virtual

 

Ahora solo tendremos que seguir las instrucciones del asistente pulsando encima del botón «Siguiente». Nos aparecerá la siguiente ventana, en la que tenemos que poner el nombre de nuestra nueva máquina virtual. Cualquiera vale. En el desplegable hay que seleccionar el sistema operativo correspondiente. En el caso que se muestra es un Windows XP (fig.6).
Fig.6 Ventana del Asistente para la Creación de una Nueva Máquina Virtual donde poner Nombre de la Máquina Virtual y el tipo de Sistema Operativo que será
Fig.6 Ventana del Asistente para la Creación de una Nueva Máquina Virtual donde poner Nombre de la Máquina Virtual y el tipo de Sistema Operativo que será
La siguiente ventana nos pide que decidamos la cantidad de memoria RAM que vamos a reservar a la máquina virtual. Inicialmente nos ofrece 192 MiB. Con 192 MiB, un Windows XP virtualizado casi vacío (esto es sin antivirus, antispyware, etc.) funciona perfectamente. Vosotros mismos tenéis que decidir cuánta RAM podéis sacrificar y cuánta vais a necesitar. De todos modos podéis cambiar estos valores más adelante. Más abajo se muestra cómo (fig.7).  
Fig.7 Ventana del Asistente para la Administración de Memoria Base de la Máquina Virtual
Fig.7 Ventana del Asistente para la Administración de Memoria Base de la Máquina Virtual
Tras seleccionar la memoria dedicada a nuestra nueva máquina virtual, pulsamos en «Siguiente» y nos aparecerá una pantalla que nos pide que asignemos un disco virtual para nuestra máquina. Podemos elegir entre crear un disco o usar uno creado por nosotros previamente. En nuestro caso crearemos un nuevo disco (fig.8).
Fig.8 Ventana del Asistente para Asignación de un Disco Duro Virtual
Fig.8 Ventana del Asistente para Asignación de un Disco Duro Virtual
Si decidimos crear un disco virtual nuevo nos aparece el asistente de creación de Discos Virtuales (fig.9).
Fig.9 Ventana del Asistente para Creación de un Disco Duro Virtual
Fig.9 Ventana del Asistente para Creación de un Disco Duro Virtual
Si pulsamos en «Siguiente» nos aparece una ventana que nos hace decidir entre dos opciones (fig.10):
  • Crear una imagen de disco de expansión dinámica (disco virtual que expande su espacio dinámicamente a medida que se va llenando)
  • Crear una imagen de tamaño fijo
Fig.10 Ventana del Asistente para determinar el Tipo de Imagen de Disco Virtual
Fig.10 Ventana del Asistente para determinar el Tipo de Imagen de Disco Virtual

 

Imagen:Clip.png Muchos usuarios optan por la primera opción, ya que permite instalar programas sin límite de espacio. El problema de esto es que si no se va con cuidado uno puede llenar todo su disco físico, con los consiguientes problemas. Para evitarlo es interesante mantener control del espacio que ocupa nuestra máquina virtual de vez en cuando y usar como directorio de almacenaje el directorio compartido con el sistema anfitrión: Ubuntu. Más abajo se trata este tema. En este artículo se empleará la opción de Imagen de Expansión Dinámica.

 

Seleccionaremos la opción de Imagen de Expansión Dinámica y pulsaremos en «Siguiente», por lo que nos aparecerá una ventana para ponerle nombre a la imagen del disco virtual, para ubicarla en nuestro PC y para asignarle el tamaño que ésta le comunicará que tiene al sistema. Este valor es puramente teórico, ya que a la práctica varía en función del uso que le demos a nuestra máquina virtual (fig.11).
Fig.11 Ventana del Asistente para determinar el Tamaño y Ubicación del Disco Virtual
Fig.11 Ventana del Asistente para determinar el Tamaño y Ubicación del Disco Virtual
De todos modos, el asistente lo va explicando todo. Es muy intuitivo. Una vez decididos los parámetros, pulsaremos en «Siguiente» y se nos muestra un resumen de las características de nuestro nuevo disco virtual (fig.12).
Fig.12 Ventana de Resumen de Datos del Disco Virtual de nuestra Máquina Virtual
Fig.12 Ventana de Resumen de Datos del Disco Virtual de nuestra Máquina Virtual
Si pulsamos «Terminar» pasamos a la ventana final del asistente de creación de la nueva máquina virtual de VirtualBox (fig.13).
Fig.13 Ventana de Resumen de Datos de nuestra Máquina Virtual
Fig.13 Ventana de Resumen de Datos de nuestra Máquina Virtual
Una vez pulsamos en «Terminar» nos aparece la ventana de VirtualBox con la nueva máquina virtual creada (fig.14).

Ahora sólo queda configurarla como queramos.

Fig.14 Ventana Principal de VirtualBox con la nueva Máquina Virtual que hemos creado
Fig.14 Ventana Principal de VirtualBox con la nueva Máquina Virtual que hemos creado

[editar] Configurar Máquina Virtual

Antes de instalar nuestro nuevo sistema operativo a virtualizar debemos «afinar» nuestra nueva máquina virtual.

Para ello debemos seleccionar la nueva máquina virtual que acabamos de crear y pulsaremos en «Configuración» (fig.15), de forma que nos aparecerá una ventana con las distintas posibilidades de configuración de nuestra máquina virtual.
Fig.15 Imagen mostrando el botón para acceder a la ventana de Configuración de nuestra Máquina Virtual
Fig.15 Imagen mostrando el botón para acceder a la ventana de Configuración de nuestra Máquina Virtual

 

[editar] Configuración general

En la sección «General» (fig.16) podemos determinar aspectos como la memoria de la tarjeta gráfica que queremos dedicar (como ya se mencionó antes), el orden de arranque (en inglés boot) de la máquina (igual que las BIOS de nuestros PCs), etc. Es recomendable no alterar nada a no ser que sea estrictamente necesario (juegos, necesidad de más recursos, etc.). La configuración base ya tiene los parámetros más adecuados. En cualquier caso, siempre podremos volver aquí en cualquier momento para alterar estos parámetros aunque ya tengamos instalado nuestro sistema operativo invitado.

A pesar de lo dicho, podemos jugar un poco con estas opciones para aprender más sobre ellas, ya que todas las opciones son muy intuitivas.

La secuencia de arranque ya está por defecto en disquete - CD-ROM - HDD - Red, que es la más adecuada, pero podemos alterarla si lo precisamos.

Fig.16 Sección «General» de la ventana de Configuración de nuestra Máquina Virtual
Fig.16 Sección «General» de la ventana de Configuración de nuestra Máquina Virtual

 

[editar] Configuración de la unidad de CD/DVD-Rom

En esta sección tendremos que seleccionar el dispositivo de CD/DVD que vayamos a usar. La unidad de la imagen de ejemplo (fig.17) es una unidad de DVD ubicada en /dev/cdrom (ya que VirtualBox está corriendo sobre Ubuntu), pero en otros PCs puede ser /dev/cdrom o /dev/cdrom0 u otra ubicación si corremos VirtualBox sobre otros sistema operativo.

Una vez hecho esto ya tendremos el CD/DVD-Rom habilitado para que cuando arranquemos nuestra máquina virtual podamos arrancar desde CD/DVD e instalar nuestro sistema operativo invitado (ejemplo: Windows virtualizado sobre Ubuntu).

Fig.17 Sección «CD/DVD-Rom» de la ventana de Configuración de nuestra Máquina Virtual
Fig.17 Sección «CD/DVD-Rom» de la ventana de Configuración de nuestra Máquina Virtual
Imagen:Clip.png Podemos hacer lo mismo con la unidad de 3,5" (disquetera) si vamos a usar un disquete de arranque (para virtualizar un Windows 98 por ejemplo).

 

[editar] Configuración de audio

Para que nos funcione el sonido tendremos habilitarlo haciendo clic sobre la casilla de verificación (en inglés checkbox) correspondiente en Controlador de Audio Anfitrión y seleccionar:

 

  • Controlador Audio ALSA si nos hallamos ejecutando Virtualbox sobre Ubuntu 7.10 o inferiores, que emplean ALSA como servidor de sonido(fig.18).

 

  • Pulseadio si nos hallamos ejecutando Virtualbox sobre Ubuntu 8.04 o superiores (y también si empleamos 7.10 con Pulseaudio en lugar de ALSA).
Fig.18 Sección «Audio» de la ventana de Configuración de nuestra Máquina Virtual mostrando la configuración correcta para un sistema anfitrión Ubuntu
Fig.18 Sección «Audio» de la ventana de Configuración de nuestra Máquina Virtual mostrando la configuración correcta para un sistema anfitrión Ubuntu

 

Imagen:Clip.png Si al iniciar nuestro sistema invitado nos aparece el siguiente mensaje:

						Some audio devices (PCM_in, PCM_mic) could not be opened. Guest applications generating audio output or depending on 

			audio input may hang. Make sure  your host audio device is working properly. Check the logfile for error messages of the audio subsystem..

			ID Error: HostAudioNotResponding

			Gravedad: Aviso

			

significa que no hemos seleccionado el controlador de sonido adecuado. Seguramente hayamos seleccionado ALSA en lugar de Pulseaudio.

[editar] Configuración de la conexión a red

Si queremos acceder a internet o a cualquier otra red desde nuestro sistema invitado tendremos que habilitar nuestro adaptador de red (tarjeta de red) habilitado. Nótese que podemos trabajar con más de un adaptador de red en función de las tarjetas que temgamos instaladas en nuestro ordenador. Como lo más normal es tener una sola tarjeta, trabajaremos con la pestaña del «Adaptador 0» (fig.19).

La configuración que deberemos poner será «Conectar a NAT», de modo que la configuración de red dependa del S.O. anfitrión: Ubuntu Linux. Esto no sólo será más cómodo para nosotros, si no que nos evita problemas de conexión, ya que entonces será 100% dependiente de la configuración de red del sistema anfitrión, por lo que solucionar problemas de conexión se simplifica enormemente y además se reducen eslabones donde puedan ocurrir fallos. Consecuentemente, si nos falla la conexión de red ya sabremos que nunca será por la configuración de red de nuestro sistema invitado.

La dirección MAC es generada automáticamente para que difiera de la real en la máquina virtual y el sistema anfitrión. Esta MAC no es necesario modificarla a menos que nos surjan problemas de MACs repetidas en una intranet.

Fig.19 Sección «Red» de la ventana de Configuración de nuestra Máquina Virtual mostrando la configuración correcta de los parámetros para el Adaptador de Red 0
Fig.19 Sección «Red» de la ventana de Configuración de nuestra Máquina Virtual mostrando la configuración correcta de los parámetros para el Adaptador de Red 0
Imagen:Clip.png Tener la red habilitada puede dar problemas a veces en la instalación de Windows, haciendo que ésta se bloquee. Por eso, para evitarlo es aconsejable dejar la red deshabilitada inicialmente hasta haber instalado Windows. De este modo seguro que no habrá problemas.

 

[editar] Configuración de dispositivos USB

Como hemos visto más arriba, según la versión de Virtualbox, tendremos soporte para USB o no.

  • Virtualbox OSE: no tiene soporte para USB, pero puede conseguirse.
  • Virtualbox PUEL: con soporte para USB.

 

[editar] Configuración de dispositivos USB en Virtualbox OSE

Como se ha mencionado antes, la versión de Virtualbox OSE no tiene soporte para USB. En su versión actual de momento no se puede habilitar plenamente esta funcionalidad.

Una forma alternativa para sortear esto en el caso de dispositivos de almacenamiento USB sería compartir con Virtualbox el directorio donde nuestro sistema anfitrión nos monte el dispositivo de almacenamiento USB (por ejemplo, /media/xxx/, en GNU/Linux).

[editar] Configuración de dispositivos USB en Virtualbox PUEL

Para poder usar dispositivos USB en un sistema virtualizado que se esté ejecutando sobre un sistema anfitrión GNU/Linux como Ubuntu, debemos seguir dos pasos:

  1. Hacer que VirtualBox sea capaz de leer la carpeta de dispositivos USB.
  2. Añadir los dispositivos correspondientes en la ventana de configuración de dispositivos USB de nuestra máquina virtual.

 

Imagen:Clip.png En un sistema Windows no es preciso hacer que VirtualBox sea capaz de leer la carpeta de dispositivos USB, ya que ya estamos trabajando con permisos de administrador y por tanto Virtualbox ya puede ver los dispositivos USB sin necesidad de tocar nada. Por ello, pasaríamos directamente a pasar al siguiente.

 

[editar] Hacer que VirtualBox sea capaz de leer la carpeta de dispositivos USB

Para ello lo primero será cerrar VirtualBox para poder hacer los ajustes debidamente a través de terminal. Deberemos modificar tres archivos:

 

  • mountdevsubfs.sh.
  • 40-permissions.rules.
  • 40-basic-permissions.rules.


Primero modificaremos mountdevsubfs.sh. Para ello abriremos una consola de comandos y escribiremos:


sudo gedit /etc/init.d/mountdevsubfs.sh

Con lo que se nos abrirá un archivo de texto donde tendremos que buscar el bloque de texto:


#

# Magic to make /proc/bus/usb work

#

#mkdir -p /dev/bus/usb/.usbfs

#domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644

#ln -s .usbfs/devices /dev/bus/usb/devices

#mount –rbind /dev/bus/usb /proc/bus/usb


y descomentar algunas líneas (borra las almohadillas «#») para que el texto quede de la siguiente forma:


#

# Magic to make /proc/bus/usb work

#

mkdir -p /dev/bus/usb/.usbfs

domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644

ln -s .usbfs/devices /dev/bus/usb/devices

mount –rbind /dev/bus/usb /proc/bus/usb


Una vez realizado este cambio, guardamos y cerramos el archivo.


Segundo modificaremos 40-permissions.rules. Para ello abriremos una consola de comandos y escribiremos:


sudo gedit /etc/udev/rules.d/40-permissions.rules

Con lo que se nos abrirá un archivo de texto donde tendremos que buscar el bloque de texto:


# USB serial converters

SUBSYSTEM=="usb_device", GOTO="usb_serial_start"

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GOTO="usb_serial_start"

GOTO="usb_serial_end"

LABEL="usb_serial_start"

ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", \

,MODE="0660", GROUP="dialout"

LABEL="usb_serial_end"

y tendremos que añadir el parámetro ,GROUP="vboxusers" de forma que quede de la siguiente forma:


# USB serial converters

SUBSYSTEM=="usb_device", GOTO="usb_serial_start"

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GOTO="usb_serial_start"

GOTO="usb_serial_end"

LABEL="usb_serial_start"

ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", \

,GROUP="vboxusers",MODE="0660", GROUP="dialout"

LABEL="usb_serial_end"

Una vez realizado este cambio, guardamos y cerramos el archivo.


Tercero modificaremos 40-basic-permissions.rules. Para ello abriremos una consola de comandos y escribiremos:


sudo gedit /etc/udev/rules.d/40-basic-permissions.rules

Con lo que se nos abrirá un archivo de texto donde tendremos que buscar el bloque de texto:


# USB devices (usbfs replacement)

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664"

SUBSYSTEM=="usb_device", MODE="0664"

y tendremos que sustituir el parámetro 0664 por 066 de forma que quede de la siguiente forma:


# USB devices (usbfs replacement)

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"

SUBSYSTEM=="usb_device", MODE="0666"

Una vez realizado este cambio, guardamos y cerramos el archivo.

Finalmente reiniciaremos el ordenador para que cargue las nuevas reglas de permisos de nuestro sistema que permitirá a Virtualbox leer la carpeta de dispositivos USB.

[editar] Añadir dispositivos USB a nuestra Máquina Virtual
Lo primero a hacer es acceder a la sección USB de la ventana de configuración de nuestra máquina virtual. Llegados a esta sección tendremos que «Habilitar el controlador USB» haciendo click sobre el checkbox correspondiente (fig.20).
Fig.20 Sección «USB» de la ventana de Configuración de nuestra Máquina Virtual mostrando el checkbox para activar el controlador USB de nuestra máquina virtual
Fig.20 Sección «USB» de la ventana de Configuración de nuestra Máquina Virtual mostrando el checkbox para activar el controlador USB de nuestra máquina virtual
Una vez hecho esto, ya podremos agregar los dispositivos USB que queramos (impresoras, pendrives, etc.). Todo lo que no agreguemos aquí, nuestro sistema invitado no lo verá. Para agregar nuevos dispositivos sólo hay que pulsar en el botón de «agregar desde» o presionar las teclas Alt+Insert (fig.21).

Nos saldrá una lista de dispositivos y sólo tendremos que «clicar» encima de los que queramos agregar.

Fig.21 Sección «USB» de la ventana de Configuración de nuestra Máquina Virtual mostrando el botón «Agregar desde» para añadir dispositivos USB a nuestra máquina virtual
Fig.21 Sección «USB» de la ventana de Configuración de nuestra Máquina Virtual mostrando el botón «Agregar desde» para añadir dispositivos USB a nuestra máquina virtual

 

Imagen:Clip.png Cuando tenemos agregado un dispositivo USB en nuestra máquina virtual, mientras ésta está encendida, tiene a veces dicho dispositivo secuestrado. Es por ello que algunos dispositivos como los ratones usb no hay que agregarlos, ya que si no, son secuestrados (a veces) por el sistema operativo invitado y ya no puedes usarlos en el sistema operativo anfitrión aunque se intente liberar el control del ratón mediante el sistema estándar. De todos modos, el ratón, independientemente de si es USB o PS/2 ya es capturado como ratón a través del propio VirtualBox sin que pase esto. Lo aconsejable por tanto es agregar solamente dispositivos como pendrives, impresoras, escáneres, etc.

 

[editar] Instalación de un sistema operativo invitado

En el apartado en el que se trataba el tema de crear una máquina virtual se mostraba cómo crear una máquina Windows XP, aunque en Virtualbox podemos crear una máquina para muchos otros sistemas operativos. En este caso lo realizaremos con Windows XP. Para ello tenemos que poner el Cd-Rom de Windows en la unidad CD/DVD de nuestro ordenador y seleccionar la máquina virtual que hemos creado antes.

A continuación tenemos que pulsar el botón «Iniciar» o hacer doble click sobre la máquina en cuestión. La máquina creada arrancará primero desde disquete (si lo habéis habilitado antes), si no encuentra disquete buscará en el lector de Cds/Dvds y se iniciará la instalación de windows como si en una sesión de ordenador normal se tratara. El resto del proceso sería una instalación estándar de Windows.

Es interesante saber que si se hace clic con el ratón dentro de la ventana del sistema operativo invitado (Windows) el teclado y el ratón son capturados por ella y por tanto funcionarán sólo dentro de ella. Para devolver el control a nuestro sistema anfitrión (Ubuntu) tenemos que pulsar una vez la tecla CTRL derecha de nuestro teclado. Esta tecla es referida por Virtualbox como Host y será utilizada en combinación con otras para algunos atajos de teclado que nos pueden ser útiles. (ver sección de Combinaciones de Teclas más adelante).

 

Imagen:Clip.png Nótese que como se ha mencionado anteriormente, podemos instalar más de un tipo de sistema operativo en Virtualbox. Para ello sólo hay que seguir el proceso de instalación estándar desde CD del propio sistema operativo. También podemos realizar una instalación desde red, ya que la configuración de red depende de la máquina virtual y del sistema anfitrión, por lo que ya tenemos acceso a red desde antes de instalar un sistema operativo.

[editar] Añadir VboxGuestAdditions

Los Guest Additions son complementos que al instalarse en nuestra recientemente creada máquina virtual le confieren a ésta un incremento en el rendimiento del sistema invitado, además de una mayor interoperatividad entre el sistema anfitrión (en nuestro caso Ubuntu Linux) y el sistema invitado (por el ejemplo anterior, Windows XP). Un ejemplo de ello es si queremos tener algún directorio compartido entre nuestra máquina virtual y el sistema anfitrión. Tener los VboxGuestAdditions instalados es requisito indispensable.

Para instalar los VboxGuestAdditions podemos emplear dos sistemas:

 

  • Mediante Barra de Menús de la Máquina Virtual (recomendado).
  • Mediante CD/DVD de Arranque (proceso lento).

 

[editar] Mediante barra de menús de la Máquina Virtual

Este proceso seguramente sea el más rápido y sencillo, y nos sirve para cualquier sistema operativo invitado (osea que es independiente de la plataforma a virtualizar). Antes de probar el sistema a través de CD/DVD de arranque es aconsejable darle una oportunidad a este método, y si encontramos algún problema, optar por el método a través de CD/DVD de arranque.

El proceso es el siguiente:

  • Una vez encendido el sistema operativo invitado (en nuestro caso, Windows) iremos a la barra de menús de la ventana de nuestra máquina virtual VirtualBox y pulsaremos sobre «Dispositivos» (fig.22).
Fig.22 Vista de Windows en Máquina Virtual de Virtualbox en la que se ven los menús y entre ellos el de «dispositivos»
Fig.22 Vista de Windows en Máquina Virtual de Virtualbox en la que se ven los menús y entre ellos el de «dispositivos»
  • Seleccionaremos la opción «Instalar GuestAdditions (Aplicaciones del anfitrión)...» y nos aparecerá un asistente de instalación al estilo Windows («siguiente – siguiente – siguiente»). Si seguímos las instrucciones del asistente se nos instalarán los VboxGuestAdditions. Finalmente sólo nos quedará reiniciar la máquina virtual.
Fig.23 Vista del Asistente de Instalación de GuestAdditions de Virtualbox
Fig.23 Vista del Asistente de Instalación de GuestAdditions de Virtualbox

[editar] Mediante CD/DVD de arranque (proceso lento)

Este proceso es más recomendable en caso improbable de que falle el método anterior.

Primero tenemos que abrir el programa VirtualBox, y seleccionamos «Configuración» para ir a la sección CD/DVD-ROM. En esta sección tenemos que asegurarnos que tenemos montada la unidad de CD/DVD, pero seleccionaremos «Archivo de Imagen ISO».

Seguidamente emplearemos el botón de examinar que se puede ver a la derecha del campo texto (fig.24) para buscar el archivo de imagen VboxGuestAdditions.iso. Este archivo puede hallarse en dos posibles localizaciones en función del método de instalación que hayamos elegido en el apartado de instalación.

 

  • Método de descarga de Deb: La imagen ISO estará en:
/opt/VirtualBox-x.x.x/additions/VBoxGuestAdditions.iso (donde las «x» serían los números que indican nuestra versión de VirtualBox)
  • Mediante APT: La imagen .iso estará en:
/usr/share/virtualbox/VBoxGuestAdditions.iso (como se dijo más arriba, es más sencillo hacerlo todo si elegíamos el método a través de un gestor de paquetes tipo APT-GET/Aptitude/Synaptic)
Fig.24 Vista de la Ventana de Configuración CD/DVD de nuestra máquina virtual de Virtualbox (en este caso la dirección de las GuestAdditions es la correspondiente al método de instalación con gestor de paquetes apt-get/aptitude/Synaptic)
Fig.24 Vista de la Ventana de Configuración CD/DVD de nuestra máquina virtual de Virtualbox (en este caso la dirección de las GuestAdditions es la correspondiente al método de instalación con gestor de paquetes apt-get/aptitude/Synaptic)

 

[editar] Si el sistema invitado es Windows

Tendremos iniciar nuestra máquina virtual y que cargue nuestro Windows virtualizado. Seguidamente entraremos en «Mi PC» e iremos a nuestra unidad de CD-Rom/Dvd-rom para hacer clic sobre el .exe que nos muestre. Nos aparecerá un asistente de instalación sencilla de Windows (siguiente-siguiente-siguiente).

 

[editar] Si el sistema invitado es GNU/Linux

Tendremos que bajarnos antes el compilador gcc, el make y las cabeceras correspondintes a nuestro kernel. Para ello tendremos que abrir un terminal en el sistema invitado y escibir lo siguiente:


sudo aptitude install gcc-4.0 # elegir el gcc con el que este compilado vuestro kernel

sudo aptitude install make

sudo aptitude install linux-headers-$(uname -r)

Seguidamente, debemos decirle al sistema qué compilador de gcc usar:


sudo ln -s /usr/bin/gcc-4.0 /usr/bin/gcc

Una vez hecho esto, debemos mirar si el CD-rom está montado en el sistema (por su está en «auto» en fstab):


mount /dev/cdrom directorio_donde_queremos_que_se_monte (tenemos que tener este directorio creado anteriormente)

Nos situaremos dentro del directorio donde esta montado el cdrom y escribiremos:


sudo ./VBoxlinuxAdditions.run

Si no nos deja ejecutar el archivo por problemas de permisos, tendremos que copiar el archivo a cualquier carpeta de nusetro sistema (una buena opción es en nuestro escritorio) y darle permisos de ejecución:


cp VBoxlinuxAdditions.run /home/nombre_de_usuario/Desktop

cd /home/nombre_de_usuario/Desktop

sudo chmod -R 777 VBoxlinuxAdditions.run  (con esta orden asignamos permisos de lectura, modificación y ejecución a cualquiera)

Y ahora sí podremos hacer:


sudo ./VBoxlinuxAdditions.run

Nota: Siempre que usemos el sistema de CD/DVD de Arranque para instalar GuestAdditions tendremos que regresar a la configuración de nuestra máquina virtual para dejar el CD/DVD montado como estaba originalmente o si no no podremos leer CD/DVD desde nuestro sistema operativo invitado.

 

 

Imagen:Clip.png Importante:
  • Para instalar VBoxGuestAdditions es mejor tener ya nuestro sistema operativo invitado instalado (Windows, etc.)
  • Una vez realizada la instalación de las GuestAdditions tenemos que reiniciar el sistema operativo virtualizado para hacer efectivos los cambios.
  • Una vez realizada la instalación de las GuestAdditions tendremos que dejar el CD/DVD montado como estaba originalmente o si no no podremos leer CD/DVD desde nuestro sistema operativo invitado (fig.25).
Fig.25 Configuración CD/DVD que debemos dejar una vez realizada la instalación de GuestAdditions
Fig.25 Configuración CD/DVD que debemos dejar una vez realizada la instalación de GuestAdditions

 

[editar] Combinaciones de teclas

Las combinaciones de teclas más interesantes para usar en Virtualbox son:

  • CTRL(derecho) : Para liberar el ratón y el teclado del sistema invitado y dar el control al sistema anfitrión.
  • CTRL(derecho) + F : Para entrar o salir del modo pantalla completa.
  • CTRL(derecho) + L : Para entrar o salir del seamless mode, un modo en el que se ve el sistema invitado maximizado, pero que no se ve el escritorio (a no ser que lo pidas explícitamente), si no sólo las ventanas de las aplicaciones y la barra de Windows/Linux. Este modo es un poco confuso. a mí no me agrada.
  • CTRL(derecho) + A : Ajustar tamaño de ventana.
  • CTRL(derecho) + G : Autoajustar la Ventana del anfitrión.
  • CTRL(derecho) + SUPR. : Envía un CONTROL + ALT + SUPR. al sistema invitado (interesante si es Windows)
  • CTRL(derecho) + BACKSPACE : Envía un CONTROL + ALT + BACKSPACE al sistema invitado (interesante si es GNU/Linux)
  • CTRL(derecho) + S : Tomar una instantánea de la máquina virtual, como si apretáramos «Impr Pant».
  • CTRL(derecho) + I : Inhabilitar la Integración del ratón con la máquina virtual.
  • CTRL(derecho) + R : Para reiniciar la máquina virtual. Es el famoso «reset» windowsero. seguro que más de uno lo usa alguna vez. algooooo
  • CTRL(derecho) + P : Para pausar la máquina virtual. Una ventaja si te está comiendo recursos en un momento en que necesitas todos los recursos de tu ordenador para el sistema anfitrión.
  • CTRL(derecho) + H : Apagado ACPI de la máquina virtual.
  • CTRL(derecho) + Q : Cerrar la máquina virtual.

De todos modos, tenéis los mismos accesos de forma gráfica en la barra de menús de la máquina virtual. En el extremo inferior derecho de la ventana de la máquina virtual tenéis iconos para controlar aspectos de vuestra máquina virtual y el botón que libera el ratón y el teclado del sistema invitado y da el control al sistema anfitrión (igual que Ctrl Derecho). (fig.26)

Fig.26 Detalle de la esquina inferior derecha de la Máquina Virtual


Podemos observar en la ventana de la máquina virtual que en el menú «Máquina» podemos pedirle a Virtualbox que nos abra el sistema operativo de la ventana a pantalla completa o seamless mode. Esta opción no es muy recomendable, porque aunque funciona bien, es mejor seleccionar la opción de pantalla completa y así poder tener control del sistema anfitrión (en nuestro caso Ubuntu) y del sistema invitado (Windows o el que sea). Además, este modo es más difícilmente reversible si no se sabe el comando de teclado (CTRL + L), ya que elimina botones de menú u otros accesos (si no se sabe esto la primera vez que se activa, no sabremos qué hacer para revertirlo). Este menú incluye otras opciones de visualización y control de la máquina virtual. Podemos jugar con estas opciones, ya que son más fácilmente reversibles que «seamless mode».

 

[editar] Añadir un directorio compartido con sistema anfitrión

Para poder compartir una carpeta entre el sistema anfitrión (en nuestro caso seguramente Ubuntu) y el sistema invitado (Windows, FreeBSD, etc.) es indispensable tener instalados los VboxGuestAdditions.

Para ello deberemos crear primero la carpeta compartida en nuestro sistema anfitrión (Ubuntu seguramente) y luego llamarla desde nuestro sistema invitado (Windows, FreeBSD, ...).

 

[editar] Crear carpeta compartida en nuestro sistema anfitrión

Para crear una carpeta compartida en nuestro sistema anfitrión lo mejor y más fácil es hacerlo desde el propio VirtualBox. Para ello tendremos que seleccionar la máquina virtual que hayamos creado e ir a «Configuración».

En la Sección «Directorios Compartidos» nos aparecerá un cuadro con los directorios compartidos entre esa máquina virtual y el sistema anfitrión (fig.26).

Fig.27 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual
Fig.27 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual
Tenemos que apretar la tecla «Insert» (Ins) de nuestro teclado o hacer click en el botón de agregar nuevo directorio compartido (en la figura 28, botón de arriba a la derecha que se ha resalatado en rojo).
Fig.28 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual en la que aparece resaltado en rojo el boton de «agregar nuevo directorio compartido»
Fig.28 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual en la que aparece resaltado en rojo el boton de «agregar nuevo directorio compartido»
Nos aparecerá un navegador de archivos (fig.29) que nos pide que localicemos la carpeta (la podemos crear desde aquí) y que le pongamos un nombre, que será un nombre interno para saber cómo la llamaremos desde el sistema invitado. Es aconsejable no dejar espacios en dicho nombre. Si queremos separar dos palabras, podemos hacerlo por medio de un guión bajo «_». Un ejemplo de ello será el nombre de «Carpeta_Compartida» que se seguirá empleando en este artículo para trabajar con la carpeta compartida entre sistema invitado y sistema anfitrión.
Fig.29 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual en la que aparece el navegador de archivos para localizar/crear nuestra carpeta compartida
Fig.29 Vista de la sección «Directorios Compartidos» en la Configuración de nuestra máquina virtual en la que aparece el navegador de archivos para localizar/crear nuestra carpeta compartida

Una vez hayamos hecho Click en «Ok» ya estará la carpeta activa. Ahora sólo nos quedará llamarla desde el sistema invitado.

[editar] Llamar a nuestra carpeta compartida desde nuestro sistema invitado

Hablaremos del método a seguir en el caso de que estemos virtualizando un sistema Windows o un sistema GNU/Linux.

Primero tendremos que iniciar el sistema invitado y según sea un Windows o un GNU/Linux haremos una cosa u otra:

  • Para un sistema invitado Windows: Podemos hacerlo desde consola, pero lo más sencillo es agregar el directorio haciendo click con el botón derecho del ratón sobre «Mi PC» y seleccionar la opción «Conectar a unidad de red». Le asignamos una letra (la que queramos) a la nueva unidad y en el campo de Carpeta escribiremos:

\\vboxsvr\Carpeta_Compartida

Es posible que en esta dirección haya que reemplazar vboxsvr por el nombre del equipo que utilizamos en las red doméstica.

  • Para un sistema invitado GNU/Linux: Montaremos la carpeta compartida que llamamos «Carpeta_Compartida» en nuestro sistema en el punto de montaje que queramos. Para ello abriremos un terminal y pondremos:

mount -t vboxsf Carpeta_Compartida puntodemontaje

[editar] Posibles problemas

Imagen:Clip.png Para usuarios de VirtualBox OSE: El procedimiento que se describe aquí puede no servir en tu versión. Si tienes problemas tras actualizar el kernel lee Compilar el módulo de Virtualbox OSE.

Al actualizar el kernel de GNU/Linux puede ocurrir que al intentar ejecutar VirtualBox nos aparezca este mensaje:


VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. 

Re-setup the kernel module by executing '/etc/init.d/vboxdrv setup' as root.

VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).

o bien,


chmod: no se puede acceder a `/dev/vboxdrv': No existe el fichero ó directorio


Este segundo mensaje también puede aparecer por otras causas como puede ser que no esté creada la carpeta, que no hayamos configurado el grupo de usuarios como se indica más arriba o que no se ha cambiado el parámetro de los permisos de los dispositivos USB, así que conviene asegurarse de que se han realizado los pasos como se indica en este artículo. Si estamos seguros que hemos seguido los pasos correctamente, entonces este segundo mensaje reponde a lo mismo que el primero: un problema debido a que VirtualBox no estará configurado para el nuevo kernel. En este caso, no es necesario volver a instalar VirtualBox, si no simplemente seguir estos sencillos pasos:

1.) Instalar los kernel headers correspondientes al nuevo kernel. Usaremos el modificador uname -r para no tener que estar mirando la versión de nuestro nuevo kernel... que lo haga la propia máquina.

sudo aptitude install linux-headers-$(uname -r)

2.) Seguidamente, ejecutaremos el siguiente comando para que se corrija el error:

sudo /etc/init.d/vboxdrv setup

Una vez hecho esto, VirtualBox ya estará configurado para el nuevo Kernel funcionará sin problemas.