Virtual Machines and usbfs

Some time ago I wrote a post on getting Palm sync to work in a Windows guest on a CentOS/RedHat Enterprise host. Ironically, the main source for that article was the Ubuntu Forum: proving that Linux is, after all, still Linux, no matter who distributes it. Since moving to Ubuntu Intrepid Ibex (8.10), I’ve found this needs some updating.

While under Hardy Heron (8.04) inserting the following line in mountkernfs.sh, at a point just after the /proc filesystem is mounted (note line continuation character is for this narrow column space only, in real life this would all be on one line)

domount usbfs "" /proc/bus/usb usbdevfs -onoexec,nosuid,nodev,
devgid=46, devmode=664

under Intrepid, what’s needed is the following line in /etc/fstab

none /proc/bus/usb usbfs devgid=46,devmode=666 0 0</code

to cause the deprecated usbfs filesystem, relied upon by some virtualization software (VMware and VirtualBox, to name two) for usb connectivity, to be automatically mounted.

(Note gid 46 is the plugdev group)

Picked up this update from here.

Note: For making Palm sync work with a virtualized Win XP machine, all I had to do was add the line detailed above to my /etc/fstab. It turns out that a “blacklist visor” statement is already included in /etc/modprobe.d/libpisock9 for Ubuntu 8.10 (don’t think it was under 8.04). Of course, I already had added the necessary usb.generic.SkipSetConfig = "TRUE" to my .vmx file.