What Linux distro are you using as the host? And which version of VirtualBox? In recent versions adding them from the settings menu isn't necessary.
When I upgraded to Slackware 12 libusb took control of usb devices and so device information wasn't being stored in /proc. VirtualBox depends on /proc for usb devices. I don't know about "all" devices, but as long as the guest os can find it and load the appropriate drivers I think they should work, even if not in the host.
In the case of disks are you making sure that they are unmounted or unplugged before starting VirtualBox? Normally the guest doesn't automatically attach them during startup. In the VB status bar is an icon for usb activity. If you right-click on it a list of usb devices, those attached to the host, should appear and you can select the one you want to use. It may take two ot three tries.