There is a work-around that re-enables /proc/bus/usb/devices:
Support for /proc/bus/usb/* was removed in the initscripts package (part of sysvinit), as per this changelog entry:
sysvinit (2.86.ds1-14.1ubuntu22) gutsy; urgency=low
* Drop /proc/bus/usb again; software should all be ported to check
/dev/bus/usb first by now.
-- Scott James Remnant <email address hidden> Wed, 11 Jul 2007 13:47:24 +0100
To re-enable it edit the file '/etc/init.d/mountdevsubfs.sh' and uncomment the code after line 40 so it reads:
# 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
Execute the script manually to enable the change before a system reboot:
$ sudo /etc/init.d/mountdevsubfs.sh start
I'm adding the sysvinit package to this bug-report since the changelog entry says applications should now use /dev/bus/usb, but it seems that usb is the only 'bus' using that location. Everything else uses /sys/bus/. Therefore it directly causes the qemu/kvm problem. It seems illogical to require all applications that access USB to be patched for this.
There's a related bug report for VirtualBox with a comment by Scott, but no rationale to why it was done.
Bug #151585 "USB Devices unrecognised by virtualbox (/proc/bus/usb missing)"