VMware:无法将USB设备通过ESXi vSphere 5.5连接到VM
时间:2020-02-23 14:45:18 来源:igfitidea点击:
我最近在尝试将USB设备连接到虚拟机时遇到了VMware ESXi vSphere 5.5虚拟机管理程序的以下问题。
主机服务器实际上可以看到USB设备:
lsusb
Bus 02 Device 04: ID 1058:0748 Western Digital Technologies, Inc. Bus 02 Device 03: ID 09eb:0131 IM Networks, Inc. Bus 02 Device 02: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 02 Device 01: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 01 Device 04: ID 0624:0249 Avocent Corp. Bus 01 Device 03: ID 0624:0248 Avocent Corp. Bus 01 Device 02: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 01 Device 01: ID 1d6b:0002 Linux Foundation 2.0 root hub
我可以在日志中观察到以下错误:
/var/log/usb.log
2014-02-19T14:45:16Z usbarb[33760]: W110: USBArb: Error in rules file at line 1:0, '[' or '{' expected near end of file. 2014-02-19T14:45:16Z usbarb[33760]: I120: VMware USB Arbitration Service Version 11.1.6 2014-02-19T14:45:16Z usbarb[33760]: I120: USBArb: Attempting to connect to existing arbitrator on /var/run/vmware/usbarbitrator-socket. 2014-02-19T14:45:16Z usbarb[33760]: I120: SOCKET creating new socket, connecting to /var/run/vmware/usbarbitrator-socket 2014-02-19T14:45:16Z usbarb[33760]: W110: SOCKET connect failed, error 2: No such file or directory 2014-02-19T14:45:16Z usbarb[33760]: I120: USBArb: Failed to connect to the existing arbitrator. 2014-02-19T14:45:31Z usbarb[33760]: I120: USBArb: UsbArbPipeConnected: Connected to client, socket:13 2014-02-19T14:45:31Z usbarb[33760]: I120: USBArb: Client 33882 connected (version: 6)
不管发生什么事,我都可以将USB控制器添加到VM,但是没有显示设备本身是作为虚拟硬件添加到该特定VM的。
最后,最终导致USB仲裁程序脚本出现脚本错误。
若要更正此问题,请按照以下步骤操作:
1.将系统管理程序置于维护模式。
2.进入以下目录:
cd /etc/init.d/
3.复制usbarbitrator脚本(我们这样做是因为原始文件是只读的):
cp -p usbarbitrator usbarbitrator.bak
4.编辑刚复制的脚本:
vi usbarbitrator.bak
5.修改第四行,如下所示:
# chkconfig: 3 70 70
要这样并保护文件:
# chkconfig: 3 17 83
6.禁用并启用usbarbitrator:
chkconfig usbarbitrator off chkconfig usbarbitrator on
7.重新启动ESXi服务器。
8.停止托管服务:
/etc/init.d/hostd stop
9.停止,然后启动usbarbitrator服务:
/etc/init.d/usbarbitrator stop /etc/init.d/usbarbitrator start
10.启动托管服务:
/etc/init.d/hostd start
11.转到VM硬件列表,现在应该显示USB设备,只需添加它并启动VM。