Your Ad Here

Saturday, March 13, 2010

Mount USB in SUN Virtual Box for LINUX

Virtual Box have 2 Edition :
1. VBox Open Source Edition(OSE) [USB will not work in this edition]
2. Vbox Closed Source Edition [USB is working fine in this edition]


So make sure to used this tutorial in Closed Source Edition.
1. Find out what group id(gid) of the Vboxusers
    root@me:$ grep vbox /etc/group
    It will show this :
    vboxusers:x:<gid>:david

2. Enable the deprecated /proc/bus/usb inteface:
    root@me:$ sudo gedit /etc/init.d/mountkernfs.sh
    
   
It will show this :
    #! /bin/sh
    ### BEGIN INIT INFO
    # Provides:          mountkernfs
    # Required-Start:
    # Required-Stop:
    # Default-Start:     S
    # Default-Stop:
    # Short-Description: Mount kernel virtual file systems.
    # Description:       Mount initial set of virtual filesystems the kernel
    #                    provides and that are required by everything.
    ### END INIT INFO

    PATH=/lib/init:/sbin:/bin

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

    do_start () {
    #
    # Mount proc filesystem on /proc
    #
    #for hardy:
    domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=<gid>,devmode=664
    #for intrepid:
    domount usbfs "" /proc/bus/usb usbdevfs -onoexec,nosuid,nodev,devgid=<gid>,devmode=664

    #
    # Mount sysfs on /sys
    #
    domount sysfs "" /sys -onodev,noexec,nosuid

    # Mount /var/run and /var/lock as tmpfs.
    domount tmpfs "" /var/run -omode=0755,nodev,noexec,nosuid
    domount tmpfs "" /var/lock -omode=1777,nodev,noexec,nosuid

    # Mount spufs, if Cell Broadband processor is detected
    if mountpoint -q /proc && grep -qs '^cpu.*Cell' /proc/cpuinfo; then
        mkdir -p /spu
        domount spufs "" /spu -ogid=spu
    fi

    # Propagate files from the initramfs to our new /var/run.
    for file in /dev/.initramfs/varrun/*; do
        [ -e "$file" ] || continue
        cp -a "$file" "/var/run/${x#/dev/.initramfs/varrun/}"
    done
}

case "$1" in
  "")
    echo "Warning: mountvirtfs 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: mountvirtfs [start|stop]" >&2
    exit 3
    ;;



Note : replacing <gid> with the <gid> you found in the first step. 


4. Reboot and it is done.


Enjoy It....

No comments:

Post a Comment