11.0, VirtualBox-1.6.2 non-OSE and USB Success

After trying all the 10.3 tricks and failing to get my VirtualBox usb hardware up on 11.0, I finally stumbled on a process that works. Here is my howto/workaround:

1st I am talking of the “VirtualBox-1.6.2-Linux_amd64.run” install, not the rpm (which is OSE and usb won’t work by design).

2nd you have to add your username to the vboxuser group in Yast.

Then, do:


grep vboxuser /etc/group

that will yield something like:

vboxusers:!:114:john

Yours will be different!

Now we must edit /etc/fstab to include:

 /sys/bus/usb/drivers /proc/bus/usb usbfs devgid=xxx,devmode=664 0 0 

Where xxx is the number from the grep above.
Mine looks like this:


/dev/disk/by-id/scsi-SATA_ST3500320AS_5QM02D0H-part3 swap                 swap       defaults              0 0
/dev/disk/by-id/scsi-SATA_SAMSUNG_HD501LJS0MUJ1MP885841-part3 swap                 swap       defaults              0 0
/dev/disk/by-id/scsi-SATA_ST3500320AS_5QM02D0H-part5 /                    ext3       acl,user_xattr        1 1
/dev/disk/by-id/scsi-SATA_ST3500320AS_5QM02D0H-part2 /data                ext3       defaults              1 2
/dev/disk/by-id/scsi-SATA_ST3500320AS_5QM02D0H-part6 /home                ext3       acl,user_xattr        1 2
/dev/disk/by-id/scsi-SATA_Maxtor_6Y080M0_Y2G4VQ6E-part1 /windows/C           ntfs-3g    users,gid=users,fmask=133,dmask=022,locale=en_US.UTF-8 0 0
/dev/disk/by-id/scsi-SATA_Maxtor_6Y080M0_Y2G4VQ6E-part5 /windows/D           vfat       users,gid=users,umask=0002,utf8=true 0 0
/dev/disk/by-id/scsi-SATA_SAMSUNG_HD501LJS0MUJ1MP885841-part5 /windows/E           vfat       users,gid=users,umask=0002,utf8=true 0 0
proc                 /proc                proc       defaults              0 0
sysfs                /sys                 sysfs      noauto                0 0
debugfs              /sys/kernel/debug    debugfs    noauto                0 0
/sys/bus/usb/drivers  /proc/bus/usb       usbfs      devgid=115,devmode=664  0 0
# usbfs                /proc/bus/usb        usbfs      noauto                0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0

Note that I commented out the original usbfs statement.

Now we must edit " /etc/init.d/boot.local" to include “mount -a” ( to make it active at boot) else we have to manually mount it each time we use it.

If you have started VirtualBox before, it may be wise to do:

rm -r /tmp/.vbox-yourname-ipc/

as user
to clean up the previous entries; it will rebuild just fine

“Reboot” to make the new “fstab” active.

Now I have my usb printer & usb-HDD available in winxp guest on 11.0 x86-64 host:D

Have fun:)

You’re the second one to advocate this method. On my system the only thing that works is to leave the original usbfs ftab entry alone and add the mount statement to by boot.local file.

Allan

I’m doing what they advocated on the VirtualBox FAQ, and it seems to work with no problems. It also gets around the need to do anything in boot.local.

USB on openSUSE: Add the following entry to /etc/fstab:

none /proc/bus/usb usbfs auto,busgid=XXX,busmode=0775,devgid=XXX,devmode=0664 0 0

Replace XXX by the group ID of the group vboxusers. You can determine this value by executing

grep vboxusers /etc/group

A fresh OpenSUSE 11 install seems to have 1000 as the group id, just for reference.

I also left the original usbfs fstab entry intact.

Good to know:) Though, I didn’t find that in the -1.6.2 manual which is the 1st place I usually look for help with problems; probably better than my workaround too.

can you explain a little more this point ??? where should I include “mount -a” in boot.local file ?? in what line ???

greetings !!!

My /etc/init.d/boot.local


#! /bin/sh
#
# Copyright (c) 2002 SuSE Linux AG Nuernberg, Germany.  All rights reserved.
#
# Author: Werner Fink <werner@suse.de>, 1996
#         Burchard Steinbild, 1996
#
# /etc/init.d/boot.local
#
# script with local commands to be executed from init on system startup
#
# Here you should add things, that should happen directly after booting
# before we're going to the first run level.
#
mount -a

I followed instructions, and usb support really works. However, if I detach usb stick, or usb camera during session in VM, and put it back again, then instead VM - suse detects the new media. Normaly, in this case new media for VM doesn’t exist at all.

Any ideas to avoid this?

F.

We were talking VBox in this thread:)

Have you added VM tools?

Try seeing how it comes up in “My Computer” & maybe right click & mount
or
mount it from the command line
then
refresh VM devices in settings outside windows then refresh explorer

I was talking about vbox, but by mistake I used “vm” thinking about virtual machine…

So, the problem stays, mount -a does not do a trick. Again, I did step by step everything you advised in post, and everything works except the situation I mentioned before:

its not possible to mount same usb controller (stick or camera in my case) twice per vbox session.

If I use usb memory stick on vbox, after removing it (safely, or brutally, never mind :slight_smile: second attempt of plugging it (on my computer) ends with opensuse’s pop-up about new media detected, and vbox with XP ignores it. I am very new in suse, so I don’t know how to restart vbox driver, the only solution for me is complete restart of computer (logof->login does not help).

I can live with the only one possibility to mount usb into vbox per session, but I have a feeling that there is some catch how to order suse to ignore usb each time while vbox is running.

Thanks, F.

Hei Snake,
You are da man. :smiley: After following your instructions I NOW have a printer that works in Vbox.:wink:

Now to get Win4Lin to print.

Many Thanks,
Ron

thanks, it works great … now usb works very fine in virtual machines with virtualbox.

Before i read your answer i’ve made an script to do the same thing, if someone wants it (if you use mount -a in boot.local then there is no need for my script and if you use my script there is no need for mount -a in boot.local) here is it:

#!/bin/sh

BEGIN INIT INFO

Provides: virtualbox-usb

Required-Start:

Required-Stop:

Default-Start: 3 5

Default-Stop:

Description: It mounts usb subsystem so that virtualbox can use it in virtual machines

END INIT INFO

. /etc/rc.status

rc_reset

case “$1” in
start)
echo -n “Mounting usb subsystem”
mount -t usbfs none /proc/bus/usb -o devgid=1000,devmode=664
rc_status -v
;;
stop)
umount /proc/bus/usb
rc_failed 0
rc_status
;;
restart|force-reload)
$0 stop
$0 start
;;
*)
echo “Usage: $0 {start|stop|restart}”
exit 1
;;
esac

Set exit status

rc_exit

name this script virtualbox-usb, copy it to /etc/init.d/ and make it executable … then go to yast -> system -> services and there you can activate it to start at boot.

greetings !!

oh ho,
Maybe I spoke up to soon,
Afater closing vbox now Suse doesn’t see the usb drives.
waa?
Ron

Upon a reboot of the computer Suse will see the usb hdd’s again. Then after booting Vbox and closing it, it appears that vbox doesn’t release it’s hold on the usb drives.

that’s rare … i’ve started vbox, i put my pendrive and use it on my virtual machine then i unplug it and use it in my opensuse host without need for reboot and it works very fine … i will try it again tomorrow, now it is time to sleep.

greetings !!!

If I have used a usb-drive in Vbox (and clear the detect window in OS host) and turn it off/remove it and then shut down Vbox, that drive is not immediately shown in My Computer. However, if I cycle power on my usb-HDD or unplug/plugin my Flashdrives they pop right back up; no need to reboot.

Hotplugger/PolicyKit should detect a changed state and seems that it does. I think it’s working as it would be expected to work.

Thanks! this method worked for me too, now i can sync my ipod in windows. Before editing the fstab and changing the usb line the VM machine would start but the items in the ‘USB Devices’ menu would be greyed out. Now its all working great.

danorske schrieb:

>> After closing vbox now Suse doesn’t see the usb drives.
>
> Upon a reboot of the computer Suse will see the usb hdd’s again. Then
> after booting Vbox and closing it, it appears that vbox doesn’t release
> it’s hold on the usb drives.

I also noticed VirtualBox stealing USB devices (in my case, an ISDN
adapter) via usbfs and not returning them when it’s terminated. Perhaps
restarting the vboxdrv service (/etc/init.d/vboxdrv restart) would help.
I haven’t tried that yet.

HTH
T.


Tilman Schmidt t.schmidt@phoenixsoftware.de
Phoenix Software GmbH www.phoenixsoftware.de
Adolf-Hombitzer-Str. 12 Amtsgericht Bonn HRB 2934
53227 Bonn, Germany Geschäftsführer: W. Grießl

Nope, Just tried that and it did not help. This is a really disappointing:(.
Ron

This worked like a charm.
Thanks:)

WOW!

Honestly, the least I can do, is to bow in front of you snakedriver for this post.

I did exactly what you mentioned. It simply works!

I have to admit, I have tried several times before to get my external USB HDD to work with no success.

But to be completely honest, I have to mention that same bow goes to ken_yap as I have installed the software he recomended here

Thanks a lot guys.