domingo, 27 de septiembre de 2009

Virtualbox en Ubuntu, instalación de windowsXP

 Aunque como buen usuario Linux no utilizo a güindos, al final he tenido que pasar por el aro, cierto hardware, mi tomtom one XL y mi pda con GPS que no he podido sincronizar ni una vez, me ha obligado a usarlo en mi Ubuntu, eso si lo meteré en un cajón muy curioso, Virtualbox que es una de las opciones mas fáciles de manejar a la vista de las recetas que he encontrado por internet, ya se es propietario pero Vmware tiene algo de lío y quemu psss, así que a lo fácil, que siempre llevo la maxima de ¡¡¡si funciona para que cambiar de programa!!!.

Instalación

Podéis hacer dos cosas o añadís los enlaces de los repositorios de Virtualbox que al final solo añade un paquete y hay que formar la de Dios y San Diego ú os descargáis de aquí el paquete, bajando el correspondiente a la maquina y distribución que estés usando, en mi caso Ubuntu Jaunty a 32 bits.

Una vez descargado podemos usar Gdebi para instalarlo gráficamente o usar una terminal:

$ sudo dpkg --install nombre_paquete_bajado.deb

2º Primer arranque y configuración

 Una vez que este instalado vamos a Aplicaciones>Herramientas de sistema>Sun Virtualbox una vez iniciado el programa, te pedirá que te registres como usuario con tu Email, así recibirás novedades de actualizaciones, etc.

Una vez terminado el anterior paso, seguiremos con añadir a nuestro usuario al grupo Vboxusers.
Lo podremos hacer de dos formas, una en modo gráfico, navegando por Sistema - Administración - Usuarios y grupos, se nos abrira un ventana con la Configuración de usuarios



Click en Desbloquear , nos logeamos con nuestros pass de usuario, click en Gestionar grupos, se nos abrirá Configuración de los grupos




  Añadimos en el grupo Vboxusers a nuestro usuario, cerramos esta ventana y haremos click en nuestro usuario, una vez marcado, click en Propiedades una vez en la ventana, tendremos que hacer click en la pestaña de Privilegios de usuarios y marcar la casilla " Usar virtual box".

O usaremos la forma mas rápida de todas, abrimos un terminal metemos esto de aquí abajo en el promt y listo:



$sudo adduser Tu_Usuario vboxusers  (en mi caso es pepe)

Cual ha sido mas rápido jajaja.

Ahora deberás de reiniciar tu sesión de usuario para que se realicen los cambios, ya sabes arriba a la derecha el botón donde esta tu nombre de usuario. :D ¡¡¡Ha cierra el virtualbox !!! :-)

Psss ¿por ahora fácil no?

3º Configuración de Virtualbox

Una vez instalado Virtualbox deberemos configurar varias opciones en el programa para poder montar la virtualización de güindous XP.

- Abrimos el programa y pinchamos en Nueva, se nos abrirá un asistente para instalar la primera imagen, le daremos Nombre y click en la opción Tipo de OS en mi caso Windows XP seguimos con siguiente...



- Pasamos a elegir la memoria ram en mi caso elegí 256 mb con eso ira que se mata, no pienso arrancar mucha historia con él, siguiente...



- Llegamos a la pantalla para elegir la imagen virtual, como todavía no hemos creado ningún disco elegimos Nuevo



 - Si te despistas puedes volver Atrás y elige Existente para empezar en esa misma partición, cuando termines elige Imagen de expansión dinámica luego asignas un espacio en disco ( mínimo de 6gb sera suficiente), le damos nombre y click en Terminar.

- ¿Ya tenemos el disco creado? Volvemos a la pantalla anterior pero esta vez tendremos que seleccionarlo, click en Siguiente y después en Terminar.

- Con estos paso, ya creada la imagen pinchamos en Configuración y aparecerá una ventana donde tendremos que configurar varias opciones:


 - CD/DVD-ROM habilitaremos la casilla de Montar la unidad de CD/DVD y seleccionaremos nuestro cd/dvd.



- Atentos a este apunte, yo no use el cd/dvd para instalar, yo utilice un imagen iso, así que en la opciones de cd/dvd marcad Archivo de imagen ISO, si vais a usar una imagen iso, señalale el directorio hacia ella, no es necesario montarla, ya se encarga Virtualbox.

- Audio, Se detecta ella sola.

- Red , aquí configuramos a eth0, en mi caso eth0 se refiere al wifi ya que utiliza NAT para conseguir red del huésped.

- USB, este paso de configuración es un poco mas arduo ya que se supone que cuando activemos aquí los puertos usb no funcionaran a la primera ( :-) bueno creo que si funcionan pero en el primer upgrade que hagas se van ha hacer puñetas) tendremos que configurar estos puertos que sera el siguiente punto.

Revisión 1.0
-Dándole vueltas al problema del compañero Primitivo he encontrado varios comentarios, que nos dicen que desde la versión 3.0 no es necesario hacer nada de lo que se explico en el punto siguiente, pues ya lleva un script que configura para cada usuario los puertos usb. De todas formas lo dejo por aquí por lo que pueda suceder.

Revisión 2.0
Se ha cambiado la metodología, ahora se usan "extensiones", para habilitar USB:
Descargar extensión aquí.
Luego en Virtualbox desde Archivo - Preferencias - Extensiones para instalar.


4º Configuración de Puertos USB   < Esto queda obsoleto 

Añadiremos en el archivo fstab la linea que indicara el punto de montaje de los puertos usb. Abrimos una Terminal y añadimos la siguiente linea:

$sudo gedit /etc/fstab

Usare a NANO me es mas familiar y en algunos casos cuando no tienes entorno gráfico, es lo único que tendrás o vim, yo prefiero nano, para un novato es mas fácil de usar, pero para gusto los colores.

Añadimos la siguiente linea:

## usbfs para virtualbox

none /proc/bus/usb usbfs devgid=IDusuario, devmode=644 0 0

En lugar de IDusuario tenemos que poner el numero que identifica al grupo vboxusers para saberlo basta con mirar el archivo /etc/group y añadimos el idusuario o usamos el mas rápido, teclea esta orden en una terminal:

$ id y añades el numero que pone delante de vboxusers

Tendremos que reiniciar la maquina o reinicias el fstab como quieras.

$sudo mount -a

Después de esto le daremos permisos al dispositivo:

$sudo chmod 666 /dev/vboxdrv

Necesitamos darnos permisos para montar el USB, así que toca editar el siguiente scrpit  de arranque:

$sudo nano /etc/init.d/mountdevsubfs.sh

En este script añadire justo debajo de

"dommount devpts " " /dev/pts devpts -onoexec,nosuid,gid=$TTYGRP,mode=$TTYMODE"

Las siguientes lineas:

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


Reiniciamos y arrancamos la maquina virtual y nos vamos a configuración Habilitar puertos usb. Listo ya tenemos soporte usb en virtualbox.

Es probable que una vez arrancado virtualbox tenga problemas de permisos por lo cual tendremos que cambiar en el script anterior la linea listmode=0644 por 0666, encontré otra solución, el enlace esta en los comentarios, pero discurriendo un poco creo que cambiando esto cuadra con el comando anterior mas arriba, de todas formas echad un vistazo al enlace.

Esta receta es la unión de dos recetas que he revisado y modificado. Ya sabéis cuales son las condiciones de estas recetas con referencia a los derechos, puedes usarlo en otras paginas colocando siempre sus enlaces correspondiente a sus otros autores y a mi mismo :D

Instalación virtualbox
Parte de  Usb

16 comentarios:

mikel dijo...

Excelente tutorial,si señor,pero tengo un problema y tal vez me pueda ayudar.Cuando intento editar el archivo fstab añadiendo la linea que mencionas y reinicio el fstab me dice que la linea no es valida.vamos,como que el id de usuario no es valido.Aqui te indico lo que me sale en el archivo group:"vboxusers:x:134:"
Le añado ese numero pero me tira error,¿que estoy haciendo mal?

arriero dijo...

Revisa la linea que haz introducido haber si tiene algún espacio que no debía tener, te comento que yo no suelo hacer copia/pega ya que algunas veces se meten fuentes donde no deben y suelen dar fallo.

## usbfs para virtualbox

none /proc/bus/usb usbfs devgid=134, devmode=644 0 0

Debes de procurar mantener la linea lo mas parecido a esta con espacios incluidos.

mikel dijo...

jo pues me sigue tirando el mismo error,y sin copiar y pegar jeje...no se porque puede ser.¿Podria ser(y lo digo desde la mas absoluta ignorancia)porque en Preferencias/usuarios y grupos/propiedades/privilegios de usuario no tengo marcada la casilla de virtualbox?Perdona que te haga este tipo de preguntas pero es que llevo muy poquito tiempo con ubuntu y tengo muy poco concepto aun

arriero dijo...

Hombre pues creo que si, por que si lo haz añadido, pero no activado es lo mismo ese grupo no esta en uso, he mirado la configuración y esta marcado así que marcalo. En realidad es que como no he usado el sistema gráfico, no podía decírtelo con seguridad, yo uso la consola lo que supongo es que lo hace todo a la vez.
Añadiré ese problema por si acaso.

mikel dijo...

Pues era ese el problema,marque la casilla y ya no hubo errores.ya tengo plenamente operativos mis usb.No lo probe antes porque prefiero preguntar,que ya llevo 3 ubuntus instalados y siempre la preparo jeje...aunque preparandolas tambien se aprende claro...
Muchas gracias por tu tutorial compañero,realmente util.
un saludo

arriero dijo...

Gracias ha ti, que mira por donde hemos visto un pequeño fallo en el tutorial que no me había dado cuenta por no usar los sistemas gráficos de instalación.
Por eso decimos muchos que la terminal es mas completa que un sistema gráfico :D

Primitivo dijo...

Hola, José Delgado:

Estoy intentando instalar el Virutualbox según este tutorial y el primer inconveniente con el que me he topado es que en el enlace que incluyes, no existe la versión Jaunty 9.04, que es la que yo uso: la más alta es la 8.04.

Según nos dices, tú si la has podido descargar, pero yo no la veo.

He descargado la 8.04 (Hardy) para i386. Espero que me funcione en Jaunti (9.04).

¡Gracias por tu tutorial!

PRIMITIVO PAJARES

Primitivo dijo...

Lo he hecho todo como tú dices y parece que todo va bien, pero en el momento de arrancar la máquina virtual me da el siguiente error:


Failed to initialize Host Interface Networking.
VBox status code: -3100 (VERR_HOSTIF_INIT_FAILED).


Código Resultado:
0x80004005
Componente:
Console
Interface:
IConsole {d5a1cbda-f5d7-4824-9afe-d640c94c7dcf}

arriero dijo...

Primitivo sobre el enlace, ya esta solucionado, disculpa pero como bien digo use varios howtos y entre ellos el del wiki donde si esta el enlace hacia el paquete para jaunty e incluso para karmic.
Sobre el tema de hardware como ya he dicho muchas veces solo tengo nociones de problemas con lo mio, que por cierto no me ha dado ningún problema.
En principio cambia el paquete para jaunty y vuelve ha lanzarlo que puede ser un fallo del kernel pues hardy usa otro kernel diferente.

Primitivo dijo...

Ahora ya está solucionado. Está claro que el problema era que no instalé la versión del Jaunty (9.04), sino la de Hardy (8.04).

Sin embargo, aún me quedan dos problemillas por solucionar:

1º) En el punto 4, "Configuración de puertos USB", dices:

"Después de esto le daremos permisos al dispositivo:
$sudo chmod 666 /dev/vboxdrv"

Yo lo hago tal cual y compruebo que /dev/vboxdrv tiene los permisos "-rw-rw-rw-", sin embargo, despues de reiniciar el ordenador se va el efecto y los permisos quedan así:
"-rw-------".

Creo que la línea "chmod 666 /dev/vboxdrv" hay que ponerla en un script de inicio, pero ¿en cuál?

2º) También en el punto 4, "Configuración de puertos USB", dices:

En "/etc/fstab", añadir las líneas:
"## usbfs para virtualbox
none /proc/bus/usb usbfs devgid=IDusuario, devmode=644 0 0"

Mi problema es que yo tengo 4 usuarios. ¿Qué hago?, ¿repito la línea 4 veces, cada una con el ID de un usuario o pongo los 4 ID seguidos separados por comas "devgid=IDus1,IDus2,IDus3,IDus4,"?

¡Saludos!

arriero dijo...

Primitivo como bien he comentado algunas veces mis conocimientos sobre el tema suelen ser sobre mi hardware, los problemas y consecuencias del uso, suelo aclararlas en los wikis,google,etc. Disculpa por no poder ayudarte mucho sobre el tema lo máximo que puedo hacer al igual que tu es mirar esos sitios donde creo puede estar esa información.
Por ejemplo aquí espero que esto pueda solucionar el tema de los permisos y sobre los usuarios quizás en el mismo lugar puedas encontrar algo. Saludos.

arriero dijo...

Hace como dos días tuve un pequeño problema con virtualbox al hacerse un upgrade parcial del sistema entre ellos el kernel, virtualbox se quedo fuera de combate dio varios errores de kernel, así podéis arreglarlo:

[usuario@desktop ~]$ sudo /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel module [ OK ]
Recompiling VirtualBox kernel module [ OK ]
Starting VirtualBox kernel module [ OK ]

Se supone que se debe de recompilar el kernel y volver a poderse a usar virtualbox.
Esto no lo he probado, para mi la solución fue remover y reinstalar virtualbox y volver a pasar los pasos esta vez solo tuve que usar la imagen windowsxp.vdi que se supone ya estaba en la anterior instalación.

arriero dijo...

Aqui tienes la solución Primitivo, sobre los permisos, este si es definitivo para el problema.

maurobit dijo...

Completísimo tutorial, sólo faltó como configurar la gráfica, aún no he podido hacer que la VM tomé los drivers del host o los de la tarjeta de video, sólo toma los Generic VBox así q el rendimiento gráfico es mínimo como para probar Aero. por más que he intentado instalar los drivers originales de la tarjeta, no consigo que la gráfica funcione :(

arriero dijo...

Pues lo siento yo solo utilizo a vitualbox por el hecho de virtualizar a Xp por el hardware que anteriormente puntualizo para lo demás Linux. Siento no poder ayudar mas.

Primitivo dijo...

Hola, Jose:
Gracias de nuevo por interesarte por mis preguntas.

Tal como dices al principio del punto cuarto "Configuración de Puertos USB", hay posts en internet que dicen que en las versiones recientes de VirtualBox no hace falta hacer nada.

El enlace que añadiste el 25 de octubre con la solución definitiva es un enlace "antiguo" (parece que en informática todo se queda anticuado en un pis pas) y la solución que da es crear un script con el mismo contenido que tú recomiendas añadir en /etc/init.d/mountdevsubfs.sh (la única diferencia que he visto es que tú pones en la última línea "-rbind" y él pone "--rbind"). Pero, además, él manda crear ese script (porque --eso creo yo-- es para versiones anteriores de Ubuntu) y en Ubuntu Jaunty Jacklope ya existe ese script.

En definitiva, para no liarme, he desecho toda la configuración que, siguiendo tus recomendaciones, había añadido para USB, he reiniciado y he comprobado que es cierto, que con la versión 3.0 de VirtualBox funciona el USB sin hacer nada.

Por cierto, para aprender a usar el usb con VirutualBox me he dejado guiar por este post:

http://www.howtoforge.com/virtualbox-2-how-to-pass-through-usb-devices-to-guests-on-an-ubuntu-8.10-host