当我在 esxi6 主机上向 Linux VM 添加虚拟 xHCI 控制器、将某个 USB3 设备插入服务器上的蓝色 USB 3.0 SuperSpeed 端口并将该设备连接到 VM 时,我只能获得 USB2 速度。
lsusb
报告该设备不仅在 VM 中位于 USB2 控制器上,而且在 esxi6 主机中也位于 USB2 控制器上(USB3 控制器可见,但未使用)。主机:
# lsusb | sort
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 003: ID 0480:d010 Toshiba America Info. Systems, Inc. External Disk 3TB
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
虚拟机:
# lsusb | sort
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 001 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 001 Device 004: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 001 Device 005: ID 0480:d010 Toshiba America Inc External Disk 3TB
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
vmkload_mod xhci
报告:(module is already loaded
不是我写的,而是在 esxi6 启动时自动生成的)。
谷歌搜索显示esxi6不支持USB3.0。
来自官方 VMware 文档:对于具有 Linux 客户机的虚拟机,3.0 超高速设备不支持从 ESXi 主机直通到虚拟机。
那么拥有一个无法使用的虚拟 xHCI 控制器的目的是什么呢?
或者换一种方式提问:
如何在我的虚拟机中使用 xHCI 控制器?
主板上的物理 USB3 控制器的供应商:产品 8086:8c31 报告为USB 控制器 串行总线控制器:Intel Corporation Lynx Point USB xHCI 主机控制器在lspci -v
VMware esxi6 主机上。通用 Linuxpci.ids
文件将此供应商:产品列为8 系列/C220 系列芯片组系列 USB xHCI。
答案1
ESXi 自 5.5 Update 3 版本起支持 USB 3.0。但是,由于某种原因,您需要在 ESXi 中手动加载/激活 xhci 模块以启用支持:
esxcli system module load -m xhci
esxcli system module set -e true -m xhci
有关详细信息,请参阅此博客文章:https://www.v-front.de/2014/11/vmware-silently-adds-native-usb-30.html