virtualbox
我在以用户身份启动时添加 USB 设备时遇到问题。以 root 身份启动它似乎工作正常,但是当我以用户身份启动它时,我得到:
$ VBoxManage list usbhost
Host USB Devices:
<none>
作为根我得到:
$ sudo VBoxManage list usbhost
Host USB Devices:
UUID: 4483e9b4-ab99-45ff-ad5c-32b8c61971b9
VendorId: 0x058f (058F)
ProductId: 0x6362 (6362)
Revision: 1.0 (0100)
Port: 0
USB version/speed: 2/High
Manufacturer: Generic
Product: Mass Storage Device
SerialNumber: 058F63626420
Address: sysfs:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1//device:/dev/vboxusb/001/003
Current State: Busy
...
...
结果<no devices available>
在 virtualbox UI 中(当以用户身份启动时)我已将我的用户添加到vboxusers
组中(并多次注销并重新启动):
$ groups ron
ron : ron sudo netdev vboxusers wireshark docker
但我不太确定如何解释以下信息:
$ id
uid=1001(ron) gid=1001(ron) groups=1001(ron)
我正在运行的版本:virtualbox-6.0_6.0.0-127566_Ubuntu_xenial_amd64.deb
我从 virtualbox.org 网站下载的。 (我apt
在我安装的那个的基础上安装了它deb http://download.virtualbox.org/virtualbox/debian xenial contrib
)
我的主机正在运行xenial
,我的客人正在运行Windows 10
答案1
我也遇到了同样的问题,就我而言,这是因为我的手表用完了inotify
。
tail -f
如果是这种情况,您在尝试长文件时会看到错误,如中所建议的https://askubuntu.com/questions/154255/how-can-i-tell-if-i-am-out-of-inotify-watches。然后,您可以查看哪些进程正在使用 inotify 监视for foo in /proc/*/fd/*; do readlink -f $foo; done | grep inotify | sort | uniq | awk -F'/' '{ print $3}' | xargs ps
,改编自谁在消耗我的 inotify 资源?。
我最终通过sudo strace -f VBoxManage list usbhost 2> root.strace
与作为普通用户运行的版本进行比较来发现这一点。
答案2
错误是
[pid 21648] access("/dev/vboxusb", R_OK|X_OK) = -1 EACCES (Permission denied)
从我的strace
日志中。
所以我修改了文件/usr/lib/virtualbox/VBoxCreateUSBNode.sh
以获得/dev/vboxusb
许可。
然后,重新启动电脑即可解决此问题。