我正在使用qemu-system-x86_64
. 我知道通过 USB 设备的两种方法。
例如,我有一只鼠标出现在 lsusb 中,例如
Bus 003 Device 011: ID 6ade:9582 Amazing Mouse Maker
我可以通过使用
-device usb-host,vendorid=0x6ade,productid=0x9582
或者
-device usb-host,hostbus=3,hostaddr=11
这两个我都不是很喜欢。如果我通过供应商/产品 ID 获取它,那么在关闭 VM 之前,我将永远无法收回该鼠标。
如果我通过 BUS 和设备号获取它,那么如果我拔掉它,我将不得不告诉 Qemu 重新获取它。
我可以通过端口(实际的物理插槽)发送它吗?假设它已插入总线 3 端口 2。我可以通过它吗?
由于某种原因,Qemu 2.12.50 用户文档中没有记录,我必须学习从这个人那里学到的东西
他们提到:
但他们没有提到你也可以这样做:
例如...
运行
lsusb -t
,我得到:我可以决定通过这些:
这些对应于物理插槽。
但是,USB 3.0 插槽的总线和端口会有所不同,具体取决于插入的是 USB 2.0 设备还是 USB 3.0 设备,但每个设备的端口将保持一致。
USB 2.0 插槽不存在这种差异。
对于 USB 集线器,使用点分隔端口。所以如果你有...
你会用
-device usb-host,hostbus=3,hostport=2.1