No USB devices available in VirtualBox
Solution 1
Please add your user name to the vboxusers
group with this command:
sudo adduser $USER vboxusers
After that you must logout and login. (For Ubuntu 20.04, a reboot is required)
Please check this for more details:
https://help.ubuntu.com/community/VirtualBox/USB
Solution 2
If you don't have the adduser
command, you can do this instead:
sudo usermod -aG vboxusers $USER
Logout and login again in order to reload user's group info and usb device will now show up in the list.
Solution 3
First of all, @csorig's answer is right. You need to be in the vboxusers
group. That's the basic.
But if it still doesn't work for any reason... it's not documented anywhere, but I found that USB host device sharing does not work if the system has run out of inotify
resources.
You can try running tail -f /var/log/syslog
or something like that. If it shows up a message like:
tail: inotify cannot be used, reverting to polling: Too many open files
then you need to increase your inotify
watch limit or disable software that is consuming them. In my case it was a continuous backup software running in background.
The basic method to increase this limit is:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Solution 4
After numerous searching I've concluded with the help of this wiki to the below script that fixed the problem:
#!/bin/bash
#
# Heavily inspired by https://github.com/dnschneid/crouton/wiki/VirtualBox-udev-integration
#
vbox_usbnode_path=$(find / -name VBoxCreateUSBNode.sh 2> /dev/null | head -n 1)
if [[ -z $vbox_usbnode_path ]]; then
echo Warning: VBoxCreateUSBNode.sh file has not been found.
exit 1
fi
chmod 755 $vbox_usbnode_path
chown root:root $vbox_usbnode_path
vboxusers_gid=$(getent group vboxusers | awk -F: '{printf "%d\n", $3}')
vbox_rules="SUBSYSTEM==\"usb_device\", ACTION==\"add\", RUN+=\"$vbox_usbnode_path \$major \$minor \$attr{bDeviceClass} $vboxusers_gid\"
SUBSYSTEM==\"usb\", ACTION==\"add\", ENV{DEVTYPE}==\"usb_device\", RUN+=\"$vbox_usbnode_path \$major \$minor \$attr{bDeviceClass} $vboxusers_gid\"
SUBSYSTEM==\"usb_device\", ACTION==\"remove\", RUN+=\"$vbox_usbnode_path --remove \$major \$minor\"
SUBSYSTEM==\"usb\", ACTION==\"remove\", ENV{DEVTYPE}==\"usb_device\", RUN+=\"$vbox_usbnode_path --remove \$major \$minor\""
echo "$vbox_rules" > /etc/udev/rules.d/virtualbox.rules
rm -f /etc/udev/rules.d/*-virtualbox.rules
udevadm control --reload
adduser `logname` vboxusers
echo All actions succeeded.
echo Log out and log in to see if the issue go fixed.
Be sure to have VM VirtualBox Extension Pack installed and at least USB 2.0 (EHCI) Controller enabled at VM's USB settings.
After these, run the above script with sudo
.
Solution 5
There's a lot of things that can go wrong when sharing USB to guests. In any case, the checklist I did was:
- install the
Extension Pack
on the host andGuest Additions
on the guest. - add current user to
vboxusers
group. - manually add the corresponding
USB filter
in VirtualBox settings and only connect the device after finish booting the guest OS. - under VirtualBox, select
USB 3.0 (xHCI) Controler
.
I've successfully managed to share a USB stick to a Windows XP guest on a Linux Mint 19 host after some initial failed attempts. Good luck !
Related videos on Youtube
mguassa
Updated on September 18, 2022Comments
-
mguassa over 1 year
Oracle VirtualBox is unable to list/filter the USB devices attached to my system. As a result, the guest OS is not able to see any USB device either.
This is my configuration:
- Host: VirtualBox 5.0.0 r101573 on Ubuntu 14.04, with Oracle VM VirtualBox Extension Pack installed
- Guest: Windows 7, with VirtualBox Guest Additions installed
I've been trying with a USB flash drive and a Garmin sports watch: when connected to the host, they are both recognised by the system, i.e. they are in the list outputted by the
lsusb
command.However, when running VirtualBox, no USB device is actually detected (
Enable USB Controller
is obviously checked). If I select the VM, thenSettings
->USB
and I try to add a filter, a tooltip is displayed:<no devices available>
I've tried different options as USB controller, even tried to attach the devices to different USB ports (2.0 instead of 3.0), but that didn't change anything. Since no USB devices are listed there I assume the problem is with the host, not with the guest.
The USB mouse I have is working in both the host and the guest, but that's probably a device that is treated differently.
The VBox.log does not report anything suspicious regarding the USB, and VirtualBox does not throw any error either.
The same problem occurred when I had VirtualBox 4.3.30 installed.
Is there a way to resolve the issue?
-
akhmed about 7 yearsmost likely you don't have access rights to
/dev/bus/usb/XXX/YYY
. try runningvirtualbox
as a root as a temporary measure to confirm.
-
Calin over 8 yearsI have the same issue in opensuse adding myself to vboxusers group did not solve the problem
-
Olaf Dietsche over 7 years@Calin Adding your account to group
vboxusers
works only, if/dev/bus/usb/XXX/YYY
belongs to groupvboxusers
too. -
sequielo over 7 yearsYou can also check if this is working with following command:
VBoxManage list usbhost
-
ntninja over 6 yearsThanks @kFYatek! Found the problem much faster because of your comment! Just wanted to note that in my case the error happened even though
tail -f /var/log/syslog
worked just fine (no warning)… -
user391339 about 6 yearsthis is an incredibly common usecase, just curious how we were supposed to figure this out
-
vpetersson about 6 yearsPro-tip: Use
su yourself -c 'virtualbox'
to avoid having to log out (source) -
Frank Nocke about 6 years@olaf-dietsche All that
/dev/bus/usb/…
belongs to user root, group root... any advice, what to do then? -
Olaf Dietsche about 6 years@FrankNocke As always, it depends. You can add your own udev rule, e.g. SUBSYSTEMS=="usb", GROUP="vboxusers" or some other convenient group.
-
Raghu almost 6 years@FrankNocke I ran into this just today. Adding the GID to the udev rules file installed by vbox does the trick. See github.com/dnschneid/crouton/wiki/VirtualBox-udev-integration. It does feel kludgy though.
-
James Hirschorn almost 4 yearsI'm still getting the
inotify cannot be used
after increasing the limit. -
James Hirschorn almost 4 yearsI fixed the
inotify
issue withfs.inotify.max_user_instances
. However, this did not help with the missing USB devices. -
Hopping Bunny almost 4 yearsJust remember that after you add a user to the vboxusers group, that user needs to log off and log back in for the changes to take effect.
-
Margus Pala almost 4 yearsIn Ubuntu 20.04 I had to restart the machine. Relogin did not help
-
Luke Hutchison almost 4 yearsThis answer is the only complete and correct one. Note that you need a recent VirtualBox Extension Pack installed to get USB 3.0 support.
-
Anthony over 3 yearsWorked for me. Ubuntu 20.04
-
Bithellio over 2 yearsAfter trying a bunch of things, this finally worked in Ubuntu 21.04 w/ VirtualBox 6.1.26.
-
Supernormal over 2 yearsRe-login should work also on 20.04. After logging in again,
groups
shows that I am in thevboxusers
group. -
Adrian Bienias over 2 yearsRe-login didn't show
vboxusers
ongroups
command. I had to restart the system. -
Community about 2 yearsYour answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
-
Ganton about 2 yearsThis comment is added because of the "leave a comment below their post". I understand this is an answer to the question (the proposed way was useful, it avoided me trying a lot of futile methods for my case).
-
void about 2 yearsThis one worked for me.
-
Admin almost 2 yearsJFYI: I didn't have to restart on my Ubuntu 20.04.2 box. Log-off -> Log-in did it for me.