Instalar y configurar VirtualBox

Autor: Samuel Calleros

Sitio Web: TuxSoluciones.com.mx

Copyright

Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: 1) Debes reconocer la autoría de la obra en los términos especificados por el propio autor o licenciante. 2) No puedes utilizar esta obra para fines comerciales. 3) Si alteras, transformas o creas una obra a partir de esta obra, solo podrás distribuir la obra resultante bajo una licencia igual a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Nada en esta licencia menoscaba o restringe los derechos morales del autor. Puede ver la Licencia Completa.

El autor no se hace responsable si el usuario o lector hace mal uso de esta información.

¿Porque VirtualBox?
VirtualBox es una aplicación que nos permite ejecutar diferentes Sistemas Operativos simultáneamente en el mismo equipo de manera virtual. La razón para usar VirtualBox es porque es libre (GNU/GPL) y porque funciona bien. Vmware no es software libre.

Instalación
Para instalarlo en Debian etch editar el archivo /etc/apt/sources.list y agregar el siguiente repositorio:
##virtualbox
deb http://www.virtualbox.org/debian etch non-free

Para instalarlo en ubuntu editar el archivo /etc/apt/sources.list y agregar una de las siguientes lineas dependiendo de la versión que tenga:

deb http://www.virtualbox.org/debian gutsy non-free
deb http://www.virtualbox.org/debian feisty non-free
deb http://www.virtualbox.org/debian edgy non-free
deb http://www.virtualbox.org/debian dapper non-free

Descargar la clave publica para el apt-secure de http://www.virtualbox.org/debian/innotek.asc y agregarla con el siguiente comando:

$ wget http://www.virtualbox.org/debian/innotek.asc
# apt-key add innotek.asc

Actualizar la lista de paquetes e instalar VirtualBox:
# apt-get update
# aptitude install virtualbox

Esto instalara VirtualBox y sus dependencias.

Tambien puede instalar VirtualBox descargando del sitio http://www.virtualbox.org/wiki/Downloads el archivo correspondiente a la versión "Debian etch" e instalarlo con "dpkg -i virtualbox_x.x.x-xxxxx_Debian_etch_i386.deb"

Para instalar VirtualBox en otras distribuciones descargue del sitio "http://www.virtualbox.org/wiki/Downloads" la versión que corresponda a la de su distribución e instalelo manualmente.
Configuración

Para poder usar VirtualBox hay que darle permisos al usuario de que lo utilice, para ello editamos "/etc/group" y agregamos nuestro usuario al grupo vboxusers, quedando así:
vboxusers:x:xxxx:nuestro_usuario

A veces esto no es suficiente, por lo que al correr VirtualBox puede marcar un error de escritura en "/dev/vboxdrv". Esto se soluciona nombrando como propietario de "/dev/vboxdrv" a nuestro usuario:
# chown nuestro_usuario:nuestro_usuario /dev/vboxdrv

Reiniciamos el servicio:
# /etc/init.d/vboxdrv restart

Agregar maquinas virtuales

Desde consola, iniciamos VirtualBox con el comando VirtualBox y damos clic en el botón Nueva(new) para agregar una nueva maquina virtual:
- Especificamos el nombre de nuestra maquina virtual y el sistema operativo a instalar.
- Posteriormente seleccionamos la cantidad de memoria RAM a asignar.

- Luego le asignamos el disco duro virtual, como no tenemos ninguno creamos uno; damos clic en el botón Nuevo(new), seleccionamos "Imagen de expansión dinámica", luego el tamaño del disco duro virtual.
- Finalizamos el asistente y listo. Ya tenemos la maquina virtual creada

Ahora solo falta instalar el sistema operativo que deseen. Para ello inserte el CD en el CD-ROM, inicie la maquina creada y siga las instrucciones de instalación presentadas.

Compartir carpetas
Para poder compartir archivos entre el Host Virtual (Invitado) y el Anfitrión es necesario instalar en el Host Invitado la aplicación "virtual box Guest Additions".

Pasos a seguir:
- Instalar "virtual box Guest Additions". Cuando la maquina virtual se este ejecutando, hacer clic en el menú "Dispositivos" y luego en "instalar Guest Additions". Guest Additions es un conjunto de utilidades que mejoran las capacidades del sistema virtualizado, entre ellas el compartir carpetas.

- Apagar la maquina virtual
- Compartir la carpeta en el Host Anfitrión con el comando:
VBoxManage sharedfolder add "Nombre_Maquina_Virtual" -name "nombre_a_mostrar" -hostpath "/ruta/carpeta/compartida"
También se puede compartir desde La configuración de la maquina en La opción "Directorios compartidos"

- Iniciar la maquina virtual.

Para acceder a la carpeta compartida:
- En Windows ejecutar: vboxsvrcarpeta_compartida y luego vaya a "Mi PC" y ahí estará montada el directorio compartido.

También puede mapear la unidad de red con: net use z: vboxsrvNombre_Carpeta_compartida
- En Linux se monta la unidad con:
mount -t vboxsf [-o OPTIONS] Nombre_carpeta_Compartida /ruta/donde/se/desea/montar

Para ver las carpetas que tiene compartidas desde el Host Anfitrión se hace con: VBoxManage list vms o desde las configuraciones de la maquina en la Opción "Directorios compartidos"

Podrá leer y escribir en la carpeta compartida desde la maquina virtual.

Habilitar el Copy-Paste entre el Host Anfitrión y el Invitado

Para poder utilizar esta función es necesario instalar en el Host Invitado la aplicación "virtual box Guest Additions".

En un Host Invitado con Windows cuando la maquina virtual se este ejecutando, haga clic en el menú "Dispositivos" y luego en "instalar Guest Additions".

En un Host Invitado con GNU/Linux se requiere instalar los headers del kernel que se este usando. Para saber el kernel que usamos tecleamos "uname -r". Ejemplo: si tenemos el kernel "2.6.18-5-486" instalamos el paquete "linux-headers-2.6.18-5-486":

# aptitude install linux-headers-2.6.18-5-486
Ahora hacemos clic en el menú "Dispositivos" y luego en "instalar Guest Additions". Esto nos montara un CD-ROM virtual. Nos vamos a /media/cdrom/ e instalamos el paquete VBoxLinuxAdditions.run y luego reiniciamos o apagamos la maquina virtual:
# cd /media/cdrom

# sh VBoxLinuxAdditions.run
# poweroff

Ya que instalamos "virtual box Guest Additions" ahora nos vamos en el administrador de VirtualBox, entramos a la configuración de la maquina virtual, en la opción "General", en la pestaña "Avanzado" en la opción "Portapapeles Compartidos" seleccionamos: "Anfitrión a Huesped", "Huesped a Anfitrión" o "Bidireccional" según lo deseado.

Crear Imágenes de nuestra maquina virtual

Las instantáneas (snapshots) sirven para crear imágenes de la partición del disco duro virtual, la cual puede restaurarse en cualquier momento y regresar la partición y los datos como estaban cuando fue creada la imagen. Para crear una imagen vaya al Menú de la maquina virtual y elija "Maquina" y luego "Tomar instantánea".

Configurar la maquina virtual para que forme parte de la red local.

Para entender mejor como configurar la red es necesario una breve explicación de las posibles configuraciones de la red. Al configurar la red de la maquina virtual se pueden elegir entre las siguientes opciones:

- Not attached (No conectado).- Sirve para desactivar la tarjeta de red virtual, por lo que no tendrá acceso a ninguna red
- NAT .- Sirve básicamente para acceder a Internet, descargar archivos y enviar correos, pero las funciones avanzadas de red no están habilitadas. La maquina virtual obtiene una IP de un router que viene siendo VirtualBox y que funciona como DHCP asignando una IP 10.0.2.0 a la primera interface y 10.0.3.0 a la segunda interface, el trafico de la maquina virtual es transparente.

- Host Interface Networking (Interface Anfitrion) .- Simulación de una red real, el Host puede enviar datos al invitado y viceversa, se puede conectar a la red. Se tiene que crear una interface de red virtual en el Host anfitrión por cada tarjeta (interface) de red que use(n) la(s) maquina(s) virtual(es)
- Internal Networking (Red Interna) .- Similar a "Host Interface Networking", sin embargo el acceso a Internet es limitado, de esta manera se mejora la seguridad y velocidad.

La que nos interesa es "Host Interface Networking (Interface Anfitrion)". Esta configuración sirve para configurar la maquina virtual para forme parte de la red.

Configurar la maquina virtual como Host Interface Networking (Interface Anfitrión)

A grandes rasgos lo que se tiene que hacer para configurar interfaces permanentes en el Host anfitrión con GNU/Linux es:
1.- Crear un puente a la interfaz real. Esto permite compartir la interfaz física entre la interfaz real y la virtual
2.- Por cada tarjeta de red virtual (invitada) usada, debe ser creado un nueva interfaz virtual en el Host padre (llamada tap0 o vbox0 o similar) y agregada esta interfaz al puente.
3.- Finalmente especificar la nueva interfaz en las configuraciones de la tarjeta de red virtual de la maquina virtual.

Ahora presentamos detalladamente los pasos para configurar interfaces permanentes en el Host Anfitrión con Debian y derivadas:

1.- Instalar el paquete "uml-utilities" en el Anfitrión, que contienen herramientas para crear tarjetas de red virtuales y el paquete de utilerías bridge "bridge-utils". Generalmente se instalan con el sistema base.
# apt-get install uml-utilities
# apt-get install bridge-utils

Para que el usuario que ejecutará la maquina virtual tenga acceso a la interfaz, el usuario tendrá que pertenecer al grupo "uml-net" por lo que hay que agregarlo:
# gpasswd -a usuario uml-net

Esto modificara el archivo "/etc/group/" quedando la linea del grupo uml-net así:

uml-net:x:NNN:usuario

2.- Editar el archivo "/etc/network/interfaces" para declarar la interfaz de red virtual a utilizar por el Host Invitado espeficando la interfaz a utilizar (tap0) y usuario que la usara, para ello agregamos las siguientes lineas:

auto tap0
iface tap0 inet manual

up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
tunctl_user usuario

Modifique usuario por el usuario que ejecutará la maquina virtual.

Es importante que nuestra interfaz real (ejemplo eth0) este comentada o que no tenga asignada una IP del mismo rango, de lo contrario el Host Anfitrión no saldrá a Internet.

3.- La primera vez que se use, se debe activar el el bridge y la interfaz creada con los siguientes comandos:
# /sbin/ifup tap0
# /sbin/ifup br0

Esto solo es necesario la primera vez, las siguientes veces se activaran automáticamente.

4.- En el archivo "/etc/network/interfaces" hay que declarar el bridge (llamado br0) y agregar la interfaz creada al mismo:

auto br0
iface br0 inet dhcp
bridge_ports all tap0


También, se puede asignar una IP estática dependiendo de las necesidades.

Si hemos seguido correctamente los pasos del 2 al 4, en "/etc/network/interfaces" y deseamos unir a la red dos maquinas virtuales deberíamos tener el siguiente contenido:

auto lo

iface lo inet loopback

#iface eth0 inet dhcp
#auto eth0

auto tap0
iface tap0 inet manual

up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
tunctl_user usuario

auto tap1

iface tap1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
tunctl_user usuario

auto br0
iface br0 inet dhcp
bridge_ports all tap0 tap1

NOTA: las interfaces virtuales declaradas y que formen parte de un bridge no deben tener ninguna dirección IP asignada, por ello se pone "0.0.0.0" en vez de una IP real.

5.- Reiniciamos el servicio networking:
# /etc/init.d/networking restart

6.- Modifique la configuración de la maquina virtual. Esto se hace desde la aplicación VirtualBox, en "Configuraciones", "Red", “Attached to”, modificando un adaptador de red y especificando "Host Interface Networking"/"Interface Anfitrion" y en el campo “Interface name" tecleamos "tap0" o "tap1" dependiendo del nombre de interfaz virtual configurada en "/etc/network/interfaces".

7.- Finalmente vaya al Host Virtual (Invitado) y configure los paramentros de red apropiadamente.

Clonar una maquina virtual.

- Nos ubicamos donde estan guardados los vdi (/home/usuario/.VirtualBox/VDI) y clonamos el vdi con un UUID diferente:
$ cd /home/usuario/.VirtualBox/VDI
$ VBoxManage clonevdi NombreOriginal.vdi NuevoNombre.vdi

- Desde el administrador de VirtualBox creamos una nueva maquina; elegimos el mismo sistema operativo y otro nombre para la nueva maquina, asignamos memoria. En disco duro elegimos existente y elegimos el creado en el paso anterior (NuevoNombre.vdi) y listo ya tenemos una nueva maquina virtual identica.

Biografía
http://virtualbox.org
http://virtualbox.org/download/UserManual.pdf


Última Edición Wednesday, November 07 2007 @ 01:15 AM MST; 28 Hits

Enviado por ZorroPlateado el 17 Noviembre, 2007 - 18:32.

Yo lo he probado por ejemplo para probar una opensuse o centos, y fue lentisimo..... en entorno grafico, claro en consola algo menos pero seguia siendo muy pesado.

Y las instalaciones de un windows xp no se porque se me colgaban....... pues si que lo averigue y hacie mas bien poco..... se trata de definir un tamaño de particion lo suficientemente grande para que entre el sistema minimo, por eso el instalador de centos se me quedaba pillado.

Por cierto, buena guia sobre virtualbox que has dejado colega.

Enviado por minaya el 17 Noviembre, 2007 - 20:54.

Una aclaración. Virtualbox tiene una licencia doble. La
edición OSE está licenciada bajo la GPL v2. La edición
completa (la que normalmente usamos todos) está licenciada
bajo una licencia PUEL (uso personal, evaluacion y uso
academico). Por lo tanto, esta versión es gratuita pero no libre
(Como bien dice en http://virtualbox.org/wiki/Licensing_FAQ),
y no se puede redistribuir.

Por esta razón, en lenny y en sid están empezando a entrar
los paquetes de la version OSE de virtualbox, pero no los de
la version completa. Si me equivoco en esto, por favor,
corregidme.

saludos

---
No es más rico el que más tiene sino el que menos necesita.

Enviado por BenderBR el 18 Noviembre, 2007 - 12:11.

Efectivamente, hay dos versiones: una open-source (OSE) y otra de código cerrado. Ambas son casi idénticas, solo se diferencian en algunas características que con el tiempo nos dicen que pasaran a la OSE. Quizás la diferencia más notoria es el soporte USB en la edición de código cerrado que se cae de la OSE.
Aquí tenéis el enlace que explican ambas versiones:

http://www.virtualbox.org/wiki/Editions

Yo he usado ambas (testing) y funcionan igual en cuestión de rendimiento, o por lo menos yo no he notado nada.
Un saludete.

Enviado por vixtor el 26 Noviembre, 2007 - 17:56.

Hola
Simplemente para felicitar por la guia, me base en ella para poder tener las interfaces de red en red con mi host local y las maquinas virtuales.

Aparte otro problema era que a veces hay problemas con el reconocimiento del USB por parte de la VM.

Aca hay una forma interesante de añadir esta caracteristica
http://www.eldemonionegro.com/wordpress/archivos/2007/03/29/virtualizacion-con-virtual-box-%C2%BFproblemas-con-los-usb

Saludos

Enviado por Fakakon el 6 Diciembre, 2007 - 07:03.

Respuesta a Hola
Simplemente para felicitar por

Muy util tu guia, me ha servido para aprender a usar el Virtual Box, muchas gracias compañero!

Enviado por jochorocket el 3 Enero, 2008 - 01:36.

Respuesta a Hola
Simplemente para felicitar por

bueno a mi se me presentaba un problema con la compilacion o algo así (no soy muy entendido en esto pero realmente quería solucionar este problema)

me mandaba que yo debía hacer "/etc/init.d/vboxdrv setup" pero siempre aparecía error y que debía revisar /var/log/vbox-install.log
pero ahi me decía "no tienes permisos" o algo similar

la solución fue instalar "linux-headers-2.6-686", reiniciar el ordenador y hacer
# /etc/init.d/vboxdrv setup (en cuenta superusuario)

ahora me funciona bien

disculparán mi mala gramática y mala manera de describir el problema pero estaba feliz por solucionar un problema que me había acompañado desde que probé con Debian hace ya cuatro meses.

Saludos!

Enviado por StrayCat el 14 Enero, 2008 - 12:19.

Respuesta a Hola
Simplemente para felicitar por

Hola, vixtor:

Muchísimas gracias por el aporte. USBs funcionando sin problemas en la máquina virtual.

Saludos.

---
Si tus problemas tienen solución... ¿por qué te afliges?
Y si no la tienen... ¿por qué te afliges?
GOD BLESS THE BLUES!

Enviado por kwalltert el 28 Mayo, 2008 - 18:34.

Buenas tardes amigos quiero hacerle una pregunta ?????

Tengo una laptop Toshiba, 256 de Ram, Cpu celeron 1,5, tengo instalado Debian Etch, ademas de windows XP.....

Si Instalara y configurara VirtualBox, la pobre maquina moriria, o tengo que tener una tarjeta de video, ya he leido de virtualBox y me parece interesante..

Saludos desde Venezuela....

Enviado por ELSEGO el 6 Junio, 2008 - 05:44.

Muchas gracias

voy a hacer pruebas .... salu2.

Enviado por Beder76 el 9 Junio, 2008 - 00:54.

Muchas gracias por el aporte.
Quisiera que me aclaren unas dudas sobre el bridging, porque no termino de comprenderlo.
Si deshabilito la eth0, la maquina host, va a manejar su acceso a la red e internet a traves de una de las interfaces virtuales al igual que la maquina cliente [con tap0 o tap1]?
Si esto es asi, para la interface virtual correspondiente al host, donde debo fijar la configuracion para dejarla etatica?
Gracias