PVE 中 对 KVM虚拟机的USB设备设置为直通

Proxmox支持将USB设备直接映射给KVM虚拟机使用,也就是所谓的USB Passthrough。

配置步骤可以参考Proxmox wiki上的有关说明,具体地址是https://pve.proxmox.com/wiki/USB_physical_port_mapping

参考Proxmox wiki上的步骤,用u盘进行了测试,整理如下:

1、将需要直通给虚拟机使用的USB设备插到Proxmox服务器上。

2、查看USB设备的总线和端口号。

方法一是依次执行qm monitor ,info usbhost,使用虚拟机监视器查看。示例如下:

qm monitor 

qm> info usbhost

Bus 1, Addr 4, Port 1.6, Speed 480 Mb/s

    Class 00: USB device 0930:6545, DataTraveler 108

分别是Bus=1和Port=1.6。

方法二是在Proxmox服务器上执行lsusb -t命令。输出示例如下:

lsusb -t

Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_pci/2p, 480M

    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/6p, 480M

        |__ Port 6: Dev 4, If 0, Class=Mass Storage, Driver=usbfs, 480M

总线号和端口号,分别是Bus=1和Port=1、Port=6。

以上两种方法是等效的,任意选用一种查到的总线号和端口号就可以。使用lsusb -t查到的端口号是分开显示的,连到一起也是1.6,实际上和第一种方法的结果一致。

3、编辑虚拟机配置文件。

在/etc/pve/qemu-server下找到虚拟机的配置文件,在最后添加usb设备配置信息,格式为“usb0: 总线号-端口号”。对于前面找到的总线号和端口号,应该按如下格式添加

usb0: host=1-1.6

如果有多个设备,可以继续添加“usb1: host=总线号-端口号”、“usb2: host=总线号-端口号”,这里不再赘述。

4、先关闭再开启虚拟机。

注意,这里不是重新启动,而是执行关机操作,再开启虚拟机。这主要是为了强制虚拟机重新读取第3步修改后的配置文件。

5、在虚拟机中查看USB设备,安装驱动程序。

可以在虚拟机中查看USB设备是否已经被发现。对于windows系统,可以使用设备管理器查看,对于linux系统,可以执行lsusb查看。当然,如果虚拟机操作系统没有自带设备驱动程序,还需要你动手安装。具体步骤就参照你的USB设备手册咯。

参考 https://chuansongme.com/n/652459551030



发表评论

电子邮件地址不会被公开。 必填项已用*标注

5 + 4 =