2008-05-05

Configurar USB en virtualbox

Debido a que el software de mi Nokia solo corre en Win y que necesito realizar unas cosas en ese software, tuve que en mi maquina virtual instalar el PC Suite, pero oh sorpresa cuando al conectar mi celular no lo reconocio por que no se ven los puertos USB por defecto en virtualbox, pero gracias a esto actualice mi virtualbox que ahora se llama Sun xVM VirtualBox.

Como siempre busque en nuestra gran comunidad y me encontré que mucha gente que es muy dura en esto tenia el mismo problema y me encontré en este blog como resolverlo, esta en ingles pero es clarisimo.

Bueno pero iniciemos con el procedimiento, lo primero es bajar los constructores del Kernel escensiales para los hypervisores como virtualbox, esto lo haces así:

[root@localhost]~#apt-get install build-essential linux-headers-`uname -r`

Cambias el uname -r por lo que te de ese comando si no te funciona así de una. Ahora ya con eso queda bajar los paquetes de virtualbox por el modo grafico opara que bajes la última versión, que es genial, y la URL de la pagina desde que la puedes bajar seleccionando la distribución que tengas, en mi caso Ubuntu 8.04 AMD.

Bueno hay no es mucho que decir, lo bajas y lo instalas con el entorno gráfico y el manejado de paquetes Gdeb que realmente hace el trabajo. Bueno continuemos, debes ingresarte en el grupo de vboxuser o colocas el truco que coloque en el anterior enlace de maquinas virtuales, pero acá voy a acolocar como te colocas en ese grupo, con el siguiente comando

[root@localhost]~#adduser $USER vboxusers

Bueno con esto revisamos que numero de grupo nos asigno el sistema por que es un dato que nos será fundamental

[root@localhost]~#grep vbox /etc/group

Esto nos debe dar un resultado que en mi caso fue así

vboxuser:x:1003:root,samuel

Ese numero en negrilla el 1003 es el que tenemos que tener muy en cuenta de ahora en adelante.

Bueno ahora empezaremos a configurara el USB, que por defecto esta deshabilitado, ingresando y editando el archivo /etc/init.d/mountdevusbfs.sh, lo puedes hacer con vi o con gedit, el que desees. una vez estes ubicado en este archivo buscas el segmento que contenga lo siguiente

#
# 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 lo debes dejar así

#
# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=1003,devmode=664
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb


Listo lo guardas, ten muy en cuenta que ese 1003 que coloco en negrilla es el que tomaste en el paso anterior del GID que te asigno el sistema. Cambias a editar otro archivo, esta vez el /etc/fstab, debes agregar una línea para que siempre coja por defecto la USB como si estubiera montada.

none /proc/bus/usb usbfs devgid=1003,devmode=664 0 0

Acuerdate que los espacios son muy importantes en este archivo y que debes seguir un orden, además fijate que el GID sigue siendo fundamental para el funcionamiento.

Ahora como cosa muy extraña y realmente no se bien por que es, creo que es por la modificación en el kernel deberas reiniciar la maquina, si lo se raro pero toca sino no funciona.

Listo despues de reiniciado ya funciona, pero tiene un truco final, para que en este caso windows la vea hay que decirle a la maquina virtual que dispositivo debe ver, inicando con desirle que active los usb en la configuracion de la maquina en esta pantalla


donde dice USB le das click y lo habilitas, bueno ya arrancada la maquina virtual le das click derecho en la parte inferior izquierda y seleccionas el dispositivo así como lo ves en la siguiete imagen



Y listo ya tu maquina virtual lo ve sin lios.