NI-VISA relies on a Linux kernel feature for its USB support. This feature is called usbfs, and was referred to as usbdevfs on older Linux kernels. For NI-VISA to support USB devices, this feature must be present and mounted (like a virtual file system). Most major Linux distributions such as Red Hat, SuSE, and Mandrake support this feature. You can use the mount command to display the currently mounted file systems to see if your system currently supports this feature.
Also, the VISA user must have write access to the file that represents the USB device, which is typically somewhere in a subdirectory in /proc/bus/usb. If this is not the case, VISA cannot access the USB device (it cannot be found using viFindRsrc, and viOpen fails). On most systems, the root user has write access by default; however, no other user has this access.
There are several options for providing a nonroot user access to a USB device:
<VXIPNPPATH>/linux/NIvisa/USB/AddUsbRawPermissions.sh
For more information about the hotplug package, refer to http://linux-hotplug.sourceforge.net/.
As long as no other driver on the system claims the USB device, you can use NI-VISA to access it. No special setup is required.