Virtualbox 4.0.6 + Oracle VM VirtualBox Extension Pack [Solucionado]

Me gustaría añadir la solución a un nuevo problema en la versión 4.0.6 de virtualbox, para la parte de USB ya que al actualizar me pidió una Exención de forma obligatoria (Oracle_VM_VirtualBox_Extension_Pack-4.0.6-71344.vbox-extpack) que encuentran en la pagina de Oracle "http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack"

Para instalar la exención de Oracle luego de descargarla pueden hacer lo siguiente desde la terminal:

# cd /home/xxxx/carpeta-donde-se-descago
# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.0.6-71344.vbox-extpack

en mi caso lo hice como root y me funciono.

Esta exención me funciono al rato, pero cuando coloque mi portátil en otro lado con una conexión directa de Internet, el puerto de USB dejo de funcionar y me toco hacer estos arreglos:

1. Editar el archivo /etc/init.d/mountdevsubfs.sh y agregarle 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

2. luego de esto busque el archivo /etc/udev/rules.d/10-vboxdrv.rules y le modifique la siguiente linea:

KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600"

por esto:

KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0666"

Luego de todo esto y de reiniciar, me funciono a la perfección, espero les sirva de algo.

¡Gracias! En mi portátil no llegó a funcionar de ninguna manera. Probaré tu solución a ver si me sirve.

¿En que punto de /etc/init.d/mountdevsubfs.sh haces la incorporación del código?

Incluyo el mismo:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          mountdevsubfs
# Required-Start:    mountkernfs
# Required-Stop:
# Should-Start:      udev
# Default-Start:     S
# Default-Stop:
# Short-Description: Mount special file systems under /dev.
# Description:       Mount the virtual filesystems the kernel provides
#                    that ordinarily live under the /dev filesystem.
### END INIT INFO
#
# This script gets called multiple times during boot
#

PATH=/lib/init:/sbin:/bin
TTYGRP=5
TTYMODE=620
[ -f /etc/default/devpts ] && . /etc/default/devpts

TMPFS_SIZE=
[ -f /etc/default/tmpfs ] && . /etc/default/tmpfs

KERNEL="$(uname -s)"

. /lib/lsb/init-functions
. /lib/init/mount-functions.sh

do_start () {
#
# Mount a tmpfs on /dev/shm
#
SHM_OPT=
[ "${SHM_SIZE:=$TMPFS_SIZE}" ] && SHM_OPT=",size=$SHM_SIZE"
domount tmpfs shmfs /dev/shm tmpfs -onosuid,nodev$SHM_OPT

#
# Mount /dev/pts. Create master ptmx node if needed.
#
# As of 2.5.68, devpts is not automounted when using devfs. So we
# mount devpts if it is compiled in (older devfs didn't require it
# to be compiled in at all).
#
if [ "$KERNEL" = Linux ]
then
#
# Since kernel 2.5.something, devfs doesn't include
# a standard /dev/pts directory anymore. So if devfs
# is mounted on /dev we need to create that directory
# manually.
#
if [ ! -d /dev/pts ]
then
if grep -qs '/dev devfs' /proc/mounts
then
mkdir --mode=755 /dev/pts
[ -x /sbin/restorecon ] && /sbin/restorecon /dev/pts
fi
fi
if [ -d /dev/pts ]
then
if [ ! -c /dev/ptmx ]
then
mknod --mode=666 /dev/ptmx c 5 2
ES=$?
if [ "$ES" != 0 ]
then
log_warning_msg "Failed making node /dev/ptmx with error code ${ES}."
fi
[ -x /sbin/restorecon ] && /sbin/restorecon /dev/ptmx
fi
domount devpts "" /dev/pts devpts -onoexec,nosuid,gid=$TTYGRP,mode=$TTYMODE
fi
fi
}

case "$1" in
  "")
echo "Warning: mountdevsubfs should be called with the 'start' argument." >&2
do_start
;;
  start)
do_start
;;
  restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
  stop)
# No-op
;;
  *)
echo "Usage: mountdevsubfs [start|stop]" >&2
exit 3
;;
esac

En mi caso, desde que actualicé a 4.0.6, aparecen los dispositivos USB de lectura pero no se conectan (Estado no disponible). La impresora sí que aparece (también USB) y puedo utilizarla.

El lector de tarjetas, en anteriores versiones, como lo utilizase en la Virtualbox, era "secuestrado" por ella y dejaba de funcionar en el anfitrión. Recurría al truco de compartir la carpeta donde se montaba en el anfitrión.

En cualquier parte, yo lo hice mas exactamente debajo de este codigo:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          mountdevsubfs
# Required-Start:    mountkernfs
# Required-Stop:
# Should-Start:      udev
# Default-Start:     S
# Default-Stop:
# Short-Description: Mount special file systems under /dev.
# Description:       Mount the virtual filesystems the kernel provides
#                    that ordinarily live under the /dev filesystem.
### END INIT INFO
#
# This script gets called multiple times during boot
#
quilloquepasa escribió:

He aquí un aporte:

http://www.esdebian.org/foro/45781/activar-smart-card-reader-virtualbox?...

Saludos wink

Tanks...