您可以在多个配置文件中的任意一个内设置 USB 属性。
- /etc/vmware/config。vmware-view-usbd 服务首先检查该文件。如果该文件中设置 USB 配置属性,则使用这些属性。
- /usr/lib/vmware/config。如果 /etc/vmware/config 中未找到 USB 属性,则检查 /usr/lib/vmware/config 文件。
- ~/.vmware/config。如果其他文件中未找到 USB 属性,则检查 ~/.vmware/config 文件。
使用下面的语法在配置文件中设置这些属性。
viewusb.property1 = "value1"
有些值要求提供 USB 设备的 VID(供应商 ID)和 PID(产品 ID)。要查找 VID 和 PID,可在 Internet 上以产品名称与 vid 和 pid 的组合作为关键字进行搜索。也可以在 Horizon Client 运行过程中将 USB 设备插入本地系统,然后在 /tmp/vmware-root/vmware-view-usbd-*.log 文件中查找。要设置此文件位置,可使用 /etc/vmware/config 文件中的 view-usbd.log.fileName 属性;例如:
view-usbd.log.fileName = "/tmp/usbd.log"
策略名称和属性 | 描述 |
---|---|
允许自动设备拆分 属性: viewusb.AllowAutoDeviceSplitting |
允许复合 USB 设备的自动拆分。 未定义默认值,相当于 false。 |
从拆分操作中排除 Vid/Pid 设备 属性: viewusb.SplitExcludeVidPid |
从拆分中排除供应商和产品 ID 指定的复合 USB 设备。该设置的格式为 vid-xxx1_pid-yyy1[;vid-xxx2_pid-yyy2]... 您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。 例如:vid-0781_pid-55** 未定义默认值。 |
拆分 Vid/Pid 设备 属性: viewusb.SplitVidPid |
将供应商和产品 ID 指定的复合 USB 设备组件视为单独设备。该设置的格式为 vid-xxxx_pid-yyyy([exintf:zz[;exintf:ww ]])[;...] 可以使用 exintf 关键字通过指定接口号禁止重定向组件。您必须以十六进制格式指定 ID 号,以十进制格式(包含前导零)指定接口号。可以使用通配符 (*) 代替 ID 中的单个数字。 例如:vid-0781_pid-554c(exintf:01;exintf:02)
注: 如果复合设备包含自动排除的组件(例如鼠标和键盘组件),则 View 不会自动包含您未明确排除的组件。您必须指定诸如
Include Vid/Pid Device 之类的过滤策略以包含这些组件。
未定义默认值。 |
允许音频输入设备 属性: viewusb.AllowAudioIn |
允许音频输入设备进行重定向。 未定义默认值,相当于 false,因为默认情况下“实时音频-视频”功能用于音频输入和视频设备,USB 重定向不用于这些设备。 |
允许音频输出设备 属性: viewusb.AllowAudioOut |
允许音频输出设备进行重定向。 未定义默认值,相当于 false。 |
允许 HID 属性: viewusb.AllowHID |
允许除键盘或鼠标之外的输入设备进行重定向。 未定义默认值,相当于 true。 |
允许可引导的 HID 属性: viewusb.AllowHIDBootable |
允许开机时除键盘或鼠标之外的其他可用输入设备(又称为可引导的 hid 设备)进行重定向。 未定义默认值,相当于 true。 |
允许设备描述符故障防护 属性: viewusb.AllowDevDescFailsafe |
即使 Horizon Client 未能获取配置/设备描述符,依然允许设备进行重定向。 要在设备出现配置/描述符问题时依然允许它进行重定向,可将其添加到 Include 过滤器中,如 IncludeVidPid 或 IncludePath。 未定义默认值,相当于 false。 |
允许键盘和鼠标设备 属性: viewusb.AllowKeyboardMouse |
允许键盘以及集成指针设备(例如,鼠标、轨迹球或触摸板)进行重定向。 未定义默认值,相当于 false。 |
允许智能卡 属性: viewusb.AllowSmartcard |
允许智能卡设备进行重定向。 未定义默认值,相当于 false。 |
允许视频设备 属性: viewusb.AllowVideo |
允许视频设备进行重定向。 未定义默认值,相当于 false,因为默认情况下“实时音频-视频”功能用于音频输入和视频设备,USB 重定向不用于这些设备。 |
禁用远程配置下载 属性: viewusb.DisableRemoteConfig |
执行 USB 设备过滤时禁用 View Agent 设置。 未定义默认值,相当于 false。 |
排除所有设备 属性: viewusb.ExcludeAllDevices |
禁止任何 USB 设备进行重定向。如果设置为 true,可以使用其他策略设置来允许特定设备或设备系列进行重定向。如果设置为 false,可以使用其他策略设置来防止特定设备或系列设备进行重定向。 如果您在 View Agent 上将Exclude All Devices的值设置为 true,而此设置又传递至 Horizon Client,则 View Agent 设置会覆盖 Horizon Client 设置。 未定义默认值,相当于 false。 |
排除设备系列 属性: viewusb.ExcludeFamily |
禁止设备系列进行重定向。该设置的格式为 系列名称 1[;系列名称 2]... 例如:bluetooth;smart-card 如果您启用了自动设备拆分,则 View 会检查复合 USB 设备每个接口的设备系列,确定应排除哪些接口。如果您禁用了自动设备拆分,则 View 会检查整个复合 USB 设备的设备系列。 未定义默认值。 |
排除 Vid/Pid 设备 属性: viewusb.ExcludeVidPid |
禁止具有指定供应商和产品 ID 的设备进行重定向。该设置的格式为 vid-xxx1_pid-yyy2[;vid-xxx2_pid-yyy2]... 您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。 例如:vid-0781_pid-****;vid-0561_pid-554c 未定义默认值。 |
排除路径 属性: viewusb.ExcludePath |
禁止位于指定集线器或端口路径的设备进行重定向。该设置的格式为 bus-x1[/y1]..._port-z1[;bus-x2[/y2]..._port-z2]... 您必须以十六进制格式指定总线和端口号。在路径中不能使用通配符。 例如:bus-1/2/3_port-02;bus-1/1/1/4_port-ff 未定义默认值。 |
包含设备系列 属性: viewusb.IncludeFamily |
包含可以进行重定向的设备系列。该设置的格式为 系列名称 1[;系列名称 2]... 例如:存储 未定义默认值。 |
包含路径 属性: viewusb.IncludePath |
包含位于指定集线器或端口路径的可重定向设备。该设置的格式为 bus-x1[/y1]..._port-z1[;bus-x2[/y2]..._port-z2]... 您必须以十六进制格式指定总线和端口号。在路径中不能使用通配符。 例如:bus-1/2_port-02;bus-1/7/1/4_port-0f 未定义默认值。 |
包含 Vid/Pid 设备 属性: viewusb.IncludeVidPid |
包含具有指定供应商和产品 ID 的可重定向设备。该设置的格式为 vid-xxx1_pid-yyy2[;vid-xxx2_pid-yyy2]... 您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。 例如:vid-0561_pid-554c 未定义默认值。 |
其他示例
每个示例后都有对 USB 重定向效果的描述。
-
将大多数设备加入鼠标设备系列:
viewusb.IncludeFamily = "mouse" viewusb.ExcludeVidPid = "Vid-0461_Pid-0010;Vid-0461_Pid-4d20"
该示例中的第一个属性指示 Horizon Client 允许鼠标设备重定向到 View 桌面。第二个属性覆盖第一个属性,指示 Horizon Client 将两种特定鼠标设备保留为本地状态,不进行重定向。
-
启用自动设备拆分,但是将其中一个特定设备从拆分操作中排除。对于另外一个特定设备,将其中的一个组件保留为本地状态,其他组件重定向到远程桌面:
viewusb.AllowAutoDeviceSplitting = "True" viewusb.SplitExcludeVidPid = "Vid-03f0_Pid-2a12" viewusb.SplitVidPid = "Vid-0911_Pid-149a(exintf:03)" viewusb.IncludeVidPid = "Vid-0911_Pid-149a"
复合 USB 设备包含两台或更多设备,例如视频输入设备和存储设备。本例中的第一个属性启用了对复合设备的自动拆分。第二个属性则从拆分操作中排除了指定的复合 USB 设备 (Vid-03f0_Pid-2a12)。
第三行指示 Horizon Client 将其他复合设备的组件 (Vid-0911_Pid-149a) 视为独立的设备,但禁止以下组件进行重定向:接口号为 03 的组件。该组件保留为本地状态。
由于该复合设备包含一个默认情况下通常会排除的组件(例如,鼠标或键盘),因此有必要添加第四行,从而使复合设备 Vid-0911_Pid-149a 的其他组件可以重定向到 View 桌面。
前三项属性属于拆分属性。最后一项属性为过滤属性。过滤属性的处理顺序先于拆分属性。