我无法从主机看到 VirtualBox 来宾虚拟机中的任何 USB 设备。如何启用对来宾虚拟机的访问?
答案1
为了能够访问这些设备,您需要将您的用户名添加到组中vboxusers
。
$ sudo usermod -a -G vboxusers <username>
例子
$ sudo usermod -a -G vboxusers saml
您可以稍后确认更改:
$ groups saml
saml : saml wheel vboxusers wireshark
完成上述操作后,您需要注销并重新登录,以便您的用户帐户可以选择新添加的组。然后,从 VirtualBox GUI 中,您可以右键单击右下图标组中的 USB 图标,然后选择您想要控制正在运行的来宾虚拟机的任何 USB 设备。
检测USB设备
您可以使用 VirtualBox 鲜为人知的命令行工具 VBoxManage 列出可访问的 USB 设备。这也是确认上面添加到您的用户名中的组是否被正确选择的好方法。
例子
无组
$ VBoxManage list usbhost
Host USB Devices:
<none>
与团体
$ VBoxManage list usbhost | head -19
Host USB Devices:
UUID: abcd1234-123a-2345-b1e0-8a0b1c1f2511
VendorId: 0x046d (046D)
ProductId: 0x0809 (0809)
Revision: 0.9 (0009)
SerialNumber: ABC34567
Address: sysfs:/sys/devices/pci0000:00/0000:00:12.2/usb1/1-4//device:/dev/vboxusb/001/004
Current State: Busy
UUID: d2abc46d-123-1234-b8c3-691a7ca551ce
VendorId: 0x046d (046D)
ProductId: 0xc504 (C504)
Revision: 19.16 (1916)
Manufacturer: Logitech
Product: USB Receiver
Address: sysfs:/sys/devices/pci0000:00/0000:00:12.0/usb3/3-3//device:/dev/vboxusb/003/003
Current State: Busy
...
参考
答案2
我更改了以下内容,这对我有用
确保扩展包已安装 在虚拟机设置中的 VirtualBox 中 转到端口,然后转到 USB(基于 Macbook) 启用 USB 控制器 启用 USB 2.0 控制器 这样就成功了:添加一个空过滤器(在右侧)有一个按钮)
如果没有空过滤器,VM 无法识别 USB,但是一旦我添加了空过滤器,USB 现在就可以正常工作了。
答案3
这有时可能很有用。虽然与上述问题没有直接关系,但一旦在 VirtualBox 中检测到 USB 但在来宾操作系统中未显示,这可能是后续问题。
我关注了许多博客,以便在 Windows 7 Pro 的 Mac 上的 Virtual Box(~5.0.28?)上启用 USB。
我做了但未检测到 USB 的事情
1.我确实为 virtualbox 安装了相同的 USB 兼容扩展包 2. 在 Virtual Box Manager 中启用了 USB 3.0(尝试了 2.0,但我确信我有 3.0 端口/USB) 3. 从本机操作系统 (Mac OSX) 中弹出 USB 4.尝试从 Virtual Box Manager 启用过滤器(还尝试从 Virtual Box 底部列出的 USB 中手动选择 USB) 5. 从设备管理器中我尝试检测它,但驱动程序搜索失败。 (网络正常,无防火墙)
什么有效
- 下载了很多intel USB 3.0驱动程序。有些失败说未满足系统要求。但其中一名司机工作了。驱动安装成功。
现在我的 USB 已被检测到(假设您也完成了上面的第一部分)
笔记:我还安装了 VirtualBox Guest Additions 以在 mac/windows 之间共享,但不认为它相关。
答案4
Vitaly Zdanevich(2018 年 4 月 7 日,7:41)在已接受答案下方的评论中的建议对我有用:
我发现 VBoxManage list usbhost 仅使用 sudo 显示我的 USB。
安装 USB2/USB3 支持的扩展包sudo apt install virtualbox-ext-pack
并使用 sudo 启动 VirtualBox 后,用户环境会在首选项和 VM 窗口菜单中显示可用的 USB 设备。
sudo -i -u $user virtualbox
将 $user 替换为您的用户名。
有关检测到的主机 USB 设备类型的详细信息sudo vboxmanage list usbhost
。