我有一台新的 Dell XPS 13 (9350) 笔记本电脑,主机运行 Windows 10,客户机运行 Ubuntu 16.04 LTS,运行 Oracle VirtualBox 5.0.20。我安装了扩展包和 Linux 的客户机附加组件。
我有一个 PNY 128 GB USB 3.0 驱动器。当我插入它时,Windows 会检测到它,我可以访问文件。当我尝试通过 VM(设备 -> USB -> PNY USB 3.0 FD)访问它时,Windows 主机会释放它,但它在客户端中不可用。当我使用时dmesg
,我得到如下输出:
usb 1-1: new high-speed USB device number 6 using ehci-pci
usb 1-1: device descriptor read/64 error 18
usb 1-1: device descriptor read/64 error 18
usb 1-1: new high-speed USB device number 7 using ehci-pci
usb 1-1: device descriptor read/64 error 18
usb 1-1: device descriptor read/64 error 18
usb 1-1: new high-speed USB device number 8 using ehci-pci
usb 1-1: invalid ep0 maxpacket: 9
usb 1-1: new high-speed USB device number 9 using ehci-pci
usb 1-1: invalid ep0 maxpacket: 9
usb usb1-port1: unable to enumerate USB device
对于这个特定实例,我将虚拟机的 USB 设置设为 USB 2.0。如果我设置为 USB 3.0,似乎会得到基本相同的结果。
我还有一台较旧的 Dell XPS 台式电脑,运行 Windows 7,VirtualBox 和 Ubuntu 的配置相同。在那台机器上,同一个 USB 驱动器在主机和 Ubuntu 客户机上都能完美运行。此外,我还有一台非常旧的 Gateway 笔记本电脑,运行最新版本的 lubuntu(没有 VirtualBox),它也能毫无问题地处理同一个 USB 驱动器。这让我认为驱动器本身没有问题。
此时,我不确定我的问题出在 Windows 10 作为主机还是笔记本电脑上。我搜索了其他有此问题的人,但我发现的是较早的帖子,这些帖子的发布日期是在 VirtualBox 5.0.20 版本支持 USB 3.0 之前。(我看到的错误在我看来与人们在旧版本的 VirtualBox 上遇到的错误相同,但我并不声称在这方面有很多专业知识。)
对于调试或纠正这个问题有什么建议吗?
答案1
如果您在尝试寻求有关 VMware Fusion 或 VMware 工作站的帮助时偶然发现了这一点(我是前 VMware 员工,所以我更喜欢它而不是 VirtualBox),这里有类似的答案。我在使用带有雷电端口的 MacBook Pro,并且遇到了 Genesys Logic 的 USB 3.0 读卡器问题:
slogan@slogan-virtual-machine:~$ lsusb
Bus 004 Device 002: ID 05e3:0748 Genesys Logic, Inc.
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0e0f:000b VMware, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0008 VMware, Inc.
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
它生成的错误消息与问题中 VirtualBox 看到的一样。
为了解决这个问题,我关闭了虚拟机,进入虚拟机 -> USB 和蓝牙 -> USB 和蓝牙设置 -> 高级 USB 选项,并将 USB 兼容性从 2.0 切换到 3.0。然后,在重新启动虚拟机并连接设备后,一切正常。
答案2
您将 USB 插入哪种端口?根据我的经验(运行带扩展的 VirtualBox 5.0.26),VirtualBox 无法处理插入 USB 3.0 端口的东西。尝试将 USB 3 设备连接到 USB 3 端口会引发错误,将同一设备连接到 USB 2 端口(或通过 USB 2 集线器连接到 USB 3 端口)则没有问题。
答案3
我在 Dell Latitude 7480 和 WD 15 扩展坞上遇到了完全相同的问题。我使用 Windows 10 作为主机操作系统,Ubuntu 18.04 作为客户机。我的 VirtualBox 是 5.2.18,设置为在 VM 中模拟 USB 3.0 (xHCI)。
笔记本电脑本身的所有端口都无法工作,出现 OP 所示的错误 18 和枚举问题。WD 15 底座上还有两个 USB 3.0 端口无法工作。它们与耳机插孔位于底座的同一侧。我还尝试在 VirtualBox 中使用 USB 1.0 和 2.0 仿真。
在 WD 15 扩展坞的背面,电源输入和以太网端口之间有两个 USB 2.0 端口。使用 USB 1.0 仿真时,这些端口可以正常工作。在 VirtualBox 中将 USB 重新设置为 3.0 可使这些端口继续工作。
如果您想在 Ubuntu 18.04 客户机中使用 USB,答案似乎是使用 USB 2.0 硬件端口。USB 仿真设置无关紧要。
答案4
当我通过 USB 将外部硬盘连接到在 ESXI 中运行的 Ubuntu 20 时,也发生了同样的情况。在 dmesg 中:
[70765.496217] usb 1-1: new high-speed USB device number 6 using ehci-pci
[70765.524544] usb 1-1: Invalid ep0 maxpacket: 9
[70765.532265] usb usb1-port1: unable to enumerate USB device
在虚拟机的设置中,我点击“添加其他设备 > USB 控制器”,然后选择“USB 3.0”。这解决了问题,磁盘被识别并通过“fdisk -l”列出