对于 Linux 桌面,您可以通过编辑 /etc/vmware/config 文件、/etc/vmware/viewagent-custom.conf 文件和 /etc/vmware/viewagent-greeter.conf 文件中的相应条目来配置某些选项。

Horizon Agent 安装过程中,安装程序会将以下配置模板文件复制到 /etc/vmware

  • config.template
  • viewagent-custom.conf.template
  • viewagent-greeter.conf.template

此外,如果 /etc/vmware/config/etc/vmware/viewagent-custom.conf/etc/vmware/viewagent-greeter.conf 不存在,安装程序将执行以下操作:

  • config.template 复制到 config
  • viewagent-custom.conf.template 复制到 viewagent-custom.conf
  • viewagent-greeter.conf.template 复制到 /etc/vmware/viewagent-greeter.conf

配置文件会列出并记录所有 Horizon Agent for Linux 的配置选项。要设置某个选项,请移除注释并根据需要更改值。

例如, /etc/vmware/config 中的以下行用于启用构建无损 PNG 模式。
RemoteDisplay.buildToLossless=TRUE

在进行配置更改后,重新引导 Linux 以使更改生效。

/etc/vmware/config 中的配置选项

VMware BlastServer 和 BlastProxy 进程及其相关插件和进程使用 /etc/vmware/config 配置文件。
注: 下表介绍了 Horizon Agent 配置文件中的各个代理强制执行的 USB 设备策略设置。 Horizon Agent 会使用这些设置, Horizon Agent 还会将这些设置传递到 Horizon Client 进行解释和执行。根据您是指定合并 (m) 修改符以同时应用 Horizon Agent 筛选策略设置和 Horizon Client 筛选策略设置,还是覆盖 (o) 修改符以使用 Horizon Agent 筛选策略设置而不使用 Horizon Client 筛选策略设置来执行。
表 1. /etc/vmware/config 中的配置选项
值/格式 默认 说明
appScanner.logLevel errorwarninfodebug info

使用此选项可指定 appScanner 日志文件中报告的详细信息级别,该日志文件记录了与远程应用程序会话相关的活动。有效值范围从最不详细的“error”级别到最详细的“debug”级别。

您可以在 /tmp/vmware-root/vmware-appScanner-<pid>.log 中找到 appScanner 日志,其中 <pid> 是 appScanner 进程的 ID。

选项 errorwarninfoverbosedebugtrace info

使用此选项可指定 BlastProxy 日志文件中报告的详细信息级别。有效值范围从最不详细的“error”级别到最详细的“trace”级别。

您可以在 /tmp/vmware-root/vmware-BlastProxy-<pid>.log 中找到 BlastProxy 日志,其中 <pid> 是 BlastProxy 进程的 ID。

BlastProxy.UdpEnabled truefalse true 使用此选项可指定 BlastProxy 是否通过安全端口 22443 将 UDP 请求转发到 Horizon Agenttrue 表示启用 UDP 转发。false 表示停用 UDP 转发。
cdrserver.cacheEnable truefalse true 设置该选项以启用或停用从代理向客户端的写入缓存功能。
cdrserver.customizedSharedFolderPath folder_path /home/ 使用此选项可将客户端驱动器重定向共享文件夹位置从默认的 /home/user/tsclient 目录更改为自定义目录。

例如,如果用户 test 要将客户端驱动器重定向共享文件夹放在 /mnt/test/tsclient(而不是 /home/test/tsclient)中,则该用户可以指定 cdrserver.customizedSharedFolderPath=/mnt/

注: 为了使此选项生效,指定的文件夹必须存在且已使用正确的用户权限进行配置。
cdrserver.forcedByAdmin truefalse false 设置该选项以控制客户端是否可以共享未通过 cdrserver.shareFolders 选项指定的文件夹。
cdrserver.logLevel errorwarninfodebugtraceverbose info 使用该选项设置 vmware-CDRserver.log 文件的日志级别。
cdrserver.permissions R RW 使用该选项应用 Horizon AgentHorizon Client 共享的文件夹具有的读取/写入权限。例如:
  • 如果 Horizon Client 共享的文件夹具有 readwrite 权限,而您设置了 cdrserver.permissions=R,则 Horizon Agent 只具有 read 访问权限。
  • 如果 Horizon Client 共享的文件夹只具有 read 权限,而您设置了 cdrserver.permissions=RW,则 Horizon Agent 仍然只具有 read 访问权限。Horizon Agent 无法更改 Horizon Client 设置的仅 read 属性。Horizon Agent 只能移除写入访问权限。
典型用法如下:
  • cdrserver.permissions=R
  • #cdrserver.permissions=R(例如,将其注释掉或删除该条目)
cdrserver.sharedFolders file_path1,R;file-path2,; file_path3,R; ... 未定义 指定客户端可与 Linux 桌面共享的一个或多个文件夹的文件路径。例如:
  • 对于 Windows 客户端:C:\spreadsheets,;D:\ebooks,R
  • 对于非 Windows 客户端:/tmp/spreadsheets;/tmp/ebooks,;/home/finance,R
Clipboard.Direction 0, 1, 2,3 2 使用该选项指定剪贴板重定向策略。有效值如下:
  • 0 - 停用剪贴板重定向。
  • 1 - 启用双向剪贴板重定向。
  • 2 - 仅启用从客户端到远程桌面的剪贴板重定向。
  • 3 - 仅启用从远程桌面到客户端的剪贴板重定向。
collaboration.enableControlPassing truefalse true 设置该选项以允许或限制协作者控制 Linux 桌面。要指定只读协作会话,请将该选项设置为 false
collaboration.enableEmail truefalse true 设置该选项以启用或停用通过使用已安装的电子邮件应用程序发送协作邀请的功能。如果停用该选项,您无法使用电子邮件邀请协作者,即使安装了电子邮件应用程序也是如此。
collaboration.logLevel errorinfodebug info 使用此选项设置协作会话所使用的日志级别。如果日志级别为 debug,则会记录对 collabui 函数和 collabor 列表内容进行的所有调用。
collaboration.maxCollabors 小于或等于 20 的整数 5 指定可邀请加入会话的协作者的最大数量。
collaboration.serverUrl [URL] 未定义 指定要包含在协作邀请中的服务器 URL。
Desktop.displayNumberMax 整数 159

指定要分配给用户会话的 X Windows 系统显示器数量的范围上限。SLED/SLES 桌面不支持此功能。

要将分配限制为单个显示器数量,请将 Desktop.displayNumberMaxDesktop.displayNumberMin 设置为相同的值。

注: 如果指定的范围包含 0 到 9 之间的任意显示器编号,则 X 服务器可能会发生冲突。请采用 VMware 知识库 (KB) 文章 81704 中所述的解决办法。
Desktop.displayNumberMin 整数 100

指定要分配给用户会话的 X Windows 系统显示器数量的范围下限。SLED/SLES 桌面不支持此功能。

要将分配限制为单个显示器数量,请将 Desktop.displayNumberMaxDesktop.displayNumberMin 设置为相同的值。

注: 如果指定的范围包含 0 到 9 之间的任意显示器编号,则 X 服务器可能会发生冲突。请采用 VMware 知识库 (KB) 文章 81704 中所述的解决办法。
DesktopWorker.ttyNum 介于 2 到 12 之间的整数 7

分配用于在 Linux 物理主机上显示图形桌面的 TTY 功能键。默认值为 7,即分配 Ctrl+Alt+F7 作为显示图形桌面的快捷方式。

该选项仅适用于物理主机。

mksVNCServer.useUInputButtonMapping truefalse false

设置该选项以在 Ubuntu 和 SLED/SLES 桌面上,以及运行 MATE 的 RHEL 桌面上启用左手鼠标支持。有关更多信息,请参阅 VMware 知识库 (KB) 文章 90098

mksvhan.clipboardSize 整数 1024 使用该选项指定用于复制和粘贴操作的剪贴板最大大小。
pcscd.maxReaderContext 整数 使用 PC/SC 智能卡守护进程 (pcscd) 定义的值 指定智能卡重定向允许的最大读取器上下文数或插槽数。使用此选项可确保最大读取器上下文数与自定义 PC/SC Lite 库指定的值相匹配。
pcscd.readBody truefalse 使用 PC/SC 智能卡守护进程 (pcscd) 定义的值

指定是否在 CMD_WAIT_READER_STATE_CHANGECMD_STOP_WAITING_READER_STATE_CHANGE PC/SC Lite 消息处理程序中读取 wait_reader_state_change 的正文。

指定 true 可读取消息正文。指定 false 可跳过读取消息正文。

使用此选项可确保智能卡重定向功能的消息读取设置与自定义 PC/SC Lite 库指定的设置相匹配。只有在配置了 pcscd.maxReaderContext 时,此选项才会生效。

printSvc.customizedPpd printer_name_1=ppd_path_1;printer_name_2=ppd_path_2... 未定义

使用此选项为通过 VMware Integrated Printing 重定向的打印机指定自定义 PPD 文件的文件路径。您必须为没有使用本机打印机驱动程序 (Native Printer Driver, NPD) 或通用打印机驱动程序 (Universal Printer Driver, UPD) 的每台打印机定义自定义 PPD 文件路径。

输入在客户端系统上定义的打印机名称,并输入代理计算机上自定义 PPD 文件的绝对文件路径。在列表中的条目之间使用分号。

printSvc.defaultPrintOptions

以空格分隔的打印设置列表:

ColorMode= ColorMono

Duplex= NoneDuplexTumbleDuplexNoTumble

PageSize= 表示介质大小的字符串

number-up= 整数

number-up-layout= Nonelrtblrbtrltbrlbttblrtbrlbtlrbtrl

OutputOrder= NormalReverse

page-set= allevenodd

noCollateCollate

ColorMode=Color

Duplex=None

PageSize=A4

number-up=1

number-up-layout=None

OutputOrder=Normal

page-set=all

noCollate

使用此选项指定源应用程序检测不到打印设置时用于通过 VMware Integrated Printing 打印输出的默认打印设置。输入区分大小写的值,并使用空格分隔列表中的条目。

注: 仅当从适用于 Windows 的 Horizon Client、适用于 Linux 的 Horizon Client 或适用于 Mac 的 Horizon Client 打印时,才支持此选项。
  • ColorMode 指定是彩色打印还是灰度打印 (Mono)。
  • Duplex 指定是仅在纸张的一面上进行打印 (None)、使用短边翻转页面进行双面打印 (DuplexTumble) 还是使用长边翻转页面进行双面打印 (DuplexNoTumble)。
  • PageSize 指定纸张的页面尺寸。有关允许的值,请参阅“Adobe PostScript 打印机说明文件格式规范”中列出的已注册的 mediaOption 关键字。
  • number-up 指定要在拼版版面中排列在一张纸上的页数。
  • number-up-layout 指定要在拼版版面中使用的排列方式。例如,如果 number-up=4number-up-layout=lrtb,则将第 1 页放在纸张的左上角,将第 2 页放在右上角,将第 3 页放在左下角,然后将第 4 页放在右下角。
  • OutputOrder 指定是从第一页开始打印到最后一页 (Normal),还是从最后一页开始打印到第一页 (Reverse)。
  • page-set 指定是打印所有页 (all)、仅打印偶数页 (even) 还是仅打印奇数页 (odd)。
  • noCollate/Collate 指定是否在多份打印作业中自动分页。
printSvc.enable truefalse true

启用或停用 VMware Integrated Printing 功能,其中包括客户端打印机重定向。

注: 要启用 VMware Integrated Printing,您必须将以下这 两个配置选项设置为 true
  • /etc/vmware/config 中的 printSvc.enable
  • /etc/vmware/viewagent-custom.conf 中的 PrintRedirEnable

如果将其中的任一选项设置为 false,那么即使另一个选项设置为 true,也会停用 VMware Integrated Printing。

printSvc.jobOwnerAsLocal truefalse false 为 VMware Integrated Printing 功能定义要将哪个用户名设置为打印作业所有者名称。指定 true 可将本地用户名设为打印作业所有者名称。指定 false 可将用于登录远程会话的名称设为打印作业所有者名称。
printSvc.logLevel errorwarninfodebug info 设置 VMware Integrated Printing 事件日志的日志级别。
printSvc.paperListFile 包含可打印纸张大小列表的配置文件的文件路径 未定义

使用此选项可定义可用于通过 VMware Integrated Printing 打印输出的纸张大小列表。指定格式正确的配置文件的路径时,只有配置文件中列出的那些纸张大小才可用作打印时的选项。

注: 仅当从适用于 Windows 的 Horizon Client 中进行打印时才支持此选项。此选项全局应用于 Windows 客户端系统上的所有重定向打印机。

创建配置文件时,必须遵循以下格式规则。

  • 配置文件中的每一行都对应一个特定的纸张大小定义,且必须采用以下格式:keyword, name, widthMm*10, heightMm*10, widthPts, heightPts
  • keyword:输入用于标识纸张大小的唯一字符串。关键字的最大长度为 40 个字符,并且只能包含十进制数 33 到十进制数 126(含)范围内的可打印 ASCII 字符。有关行业标准关键字字符串的准则,请参阅“Adobe PostScript 打印机说明文件格式规范”中列出的已注册的 mediaOption 关键字。
  • name:指定要在应用程序打印设置中显示的纸张大小的显示名称。
  • widthMm*10:以毫米为单位输入纸张的宽度并乘以 10。
  • heightMm*10:以毫米为单位输入纸张的高度并乘以 10。
  • widthPts:以磅为单位输入纸张的宽度。
  • heightPts:以磅为单位输入纸张的高度。

请参阅以下格式正确的配置文件示例:

Letter, Letter, 2159, 2794, 612, 792
A3, A3, 2970, 4200, 842, 1191
A4, A4, 2100, 2970, 595, 842
printSvc.printerFilter 一个或多个搜索查询的逻辑组合 未定义

使用此选项可定义一个筛选器,用于指定要从 VMware Integrated Printing 重定向中排除的客户端打印机。筛选器中指定的打印机将不会重定向,并且不会在 Linux 桌面上显示为可用打印机。

定义打印机筛选器时,请遵循以下准则。

  • 您可以根据打印机名称 (PrinterName)、驱动程序名称 (DriverName) 或驱动程序供应商名称 (DriverVendorName) 构建搜索查询。
  • 支持正则表达式和通配符。
    • 要指定字符范围,请使用方括号 [ ],例如 [a-z]
    • 要指定通配符,请使用 .*.?
  • 支持以下逻辑运算符:
    • =
    • AND
    • OR
    • NOT!=
  • 使用单引号将单个匹配表达式括起来。
  • 使用双引号将整个搜索查询括起来。
例如,以下筛选器将排除打印机名称中包含前面带有通配符的字符串“Port”或“DFCreator”以及驱动程序名称中包含字符串“Acme”的所有打印机。
printSvc.printerFilter="(PrinterName='Port' OR  PrinterName='.?DFCreator') AND DriverName='Acme'"
printSvc.usePdfFilter truefalse true 更新或不更新重定向打印机的 PPD 文件以使用 PDF 作为打印格式。
注: 仅当从适用于 Linux 的 Horizon Client 或适用于 Mac 的 Horizon Client 打印时,才支持此选项。此选项全局应用于 Linux 或 Mac 客户端系统上的所有重定向打印机。
printSvc.watermarkEnabled truefalse false 设置该选项以启用或停用在使用 VMware Integrated Printing 打印的作业中包含水印的功能。有关更多信息,请参阅在 Linux 桌面上使用 VMware Integrated Printing 添加水印
rdeSvc.allowDisplayScaling truefalse false 设置该选项以启用或停用显示缩放,这将更改文本、图标和导航元素的大小。
rdeSvc.blockedWindows 应用程序可执行文件的分号分隔路径列表 N/A

使用此选项可阻止特定应用程序作为远程应用程序会话启动。

指定每个应用程序可执行文件的路径,并使用分号分隔列表中的条目。例如:rdeSvc.blockedWindows=/usr/libexec/gnome-terminal-server;

rdeSvc.enableOptimizedResize truefalse true 设置该选项以为适用于 Windows 的 Horizon Client 中的已发布应用程序会话启用或停用优化的窗口大小调整。启用此选项后,Windows 客户端用户将可以调整已发布应用程序窗口的大小,而不会遇到屏幕项目。
rdeSvc.enableWatermark truefalse false 启用或停用数字水印功能。有关此功能的信息,请参阅VMware Horizon 8 中 Linux 桌面的功能
rdeSvc.watermark.fit

0:图块

1:中心

2:多个

0 定义屏幕上数字水印的布局,分为九个方块:
  • 0 = 图块:水印显示在所有九个方块中。应用程序会话始终使用此布局。
  • 1 = 中心:水印显示在中心方块中。
  • 2 = 多个:水印显示在中心和四个角的方块中。如果水印大小超出方块大小,则会对其进行缩放以保持纵横比。
rdeSvc.watermark.font

serif

sans-serif

cursive

fantasy

monospace

serif 定义用于数字水印的字体。
rdeSvc.watermark.fontSize 位于值范围 8–72 内的一个整数 12 定义数字水印的字体大小(以点为单位)。
rdeSvc.watermark.margin 位于值范围 0–1024 内的一个整数 50 定义“图块”布局的数字水印四周的空间大小(以像素为单位)。随着水印的缩放,边距也会按比例进行缩放。
rdeSvc.watermark.opacity 位于值范围 0–255 内的一个整数 50 定义数字水印文本的透明度级别。
rdeSvc.watermark.rotation 位于值范围 0–360 内的一个整数 45 定义数字水印文本的显示角度。
rdeSvc.watermark.template 使用任意可用的信息变量构建的字符串:

$BROKER_USER_NAME

$BROKER_DOMAIN_NAME

$USER_NAME

$USER_DOMAIN

$MACHINE_NAME

$REMOTE_CLIENT_IP

$CLIENT_CONNECT_TIME

$USER_DOMAIN\

$USER_NAME\n

$MACHINE_NAME

On

$CLIENT_CONNECT_TIME

\n$REMOTE_CLIENT_IP

定义要为数字水印显示的文本。使用按任意顺序组合的信息变量构建水印。字符限制为 1024 个字符,扩展后为 4096 个字符。如果文本超过最大长度,则会被截断。
RemoteDisplay.allowAudio truefalse true 设置该选项以启用或停用音频输出。
RemoteDisplay.allowH264 truefalse true 设置该选项以启用或停用 H.264 编码。
RemoteDisplay.allowH264YUV444 truefalse true 设置该选项以启用或停用 H.264 YUV 4:4:4 编码和高色彩精度(如果客户端支持)。
RemoteDisplay.allowHEVC truefalse true 设置该选项以启用或停用高效视频编码 (HEVC)。
RemoteDisplay.allowHEVCYUV444 truefalse true 设置该选项以启用或停用 HEVC YUV 4:4:4 和高色彩精度(如果客户端支持)。
RemoteDisplay.allowVMWKeyEvent2Unicode truefalse true

设置该选项以允许或禁止 Horizon Agent 处理来自客户端的表示键盘输入的 Unicode 事件。

如果启用此选项,客户端系统会将表示键盘输入的 Unicode 值发送到远程桌面。由于 Linux 本机不支持 Unicode 输入,因此 Horizon Agent 会先将 Unicode 值转换为 KeyCodes,然后再将 KeyCodes 发送到操作系统,以显示相应的 Unicode 字符。

如果停用此选项,Horizon Agent 将不会处理从客户端发送的任何 Unicode 事件。

RemoteDisplay.buildToLossless truefalse false 图形应用程序(尤其是图形设计应用程序)要求图像在 Linux 桌面的客户端显示器中呈现时精确至像素级别。您可以为在 Linux 桌面上生成并在客户端设备上呈现的图像和视频回放配置无损构建模式。该功能会占用客户端与 ESXi 主机之间额外的带宽。启用该选项将停用 H.264 编码。
RemoteDisplay.cursorWarpingMaxDelayMsec 大于或等于 250 的整数 1000 此设置可调整鼠标光标变形检测。它表示自用户测试代理端鼠标移动以进行光标变形的最新鼠标交互以来的最长延迟。较高的值可提高变形检测的准确性,并可防止在代理和客户端鼠标移动之间出现争用。较低的值可提高非源自 Horizon Client 的鼠标移动的检测速度,例如远程用户在与 Zoom 或 Microsoft Teams 共享屏幕期间进行的鼠标移动。
RemoteDisplay.cursorWarpingSimulateUserInput truefalse false 此设置可解决不支持光标变形的应用程序中的限制,例如,Microsoft Teams 和 Zoom 的屏幕共享功能。如果设置为 true,则当 Horizon Agent 检测到鼠标光标变形(例如源自 Horizon Agent 而不是 Horizon Client 的突然鼠标移动)时,它将模拟该鼠标移动,就像在 Horizon Client 中一样。如果用户正在使用 Microsoft Teams 或 Zoom 共享其 Horizon Agent 桌面屏幕,并希望与其共享屏幕的用户看到光标变形,这会非常有用。
RemoteDisplay.enableCursorWarping truefalse false 将此选项设置为 true 可激活光标变形检测功能。激活该设置后,远程代理会检测代理上发生的突然鼠标位置变化,并通过移动用户的本地鼠标光标将这些更改反映到客户端。如果停用此设置,客户端将忽略远程代理中的突然光标移动。默认情况下停用此设置(设置为 false)。
RemoteDisplay.enableNetworkContinuity truefalse true 设置该选项以在 Horizon Agent for Linux 中启用或停用持续网络连接功能。
RemoteDisplay.enableNetworkIntelligence truefalse true 设置该选项以在 Horizon Agent for Linux 中启用或停用网络智能功能。
RemoteDisplay.enableStats truefalse false 启用或停用 mks 日志中的 VMware Blast 显示协议统计信息,例如带宽、FPS、RTT 等。
RemoteDisplay.enableUDP truefalse true 设置该选项以在 Horizon Agent for Linux 中启用或停用 UDP 协议支持。
RemoteDisplay.maxBandwidthBurstMsec 整数 1000

为发送到客户端的数据指定带宽突发时间间隔。此选项用于配置网络带宽可暂时超出 RemoteDisplay.maxBandwidthKbps 设置的带宽上限的时间间隔,以毫秒为单位。

例如,如果 RemoteDisplay.maxBandwidthKbps = 4000 且 RemoteDisplay.maxBandwidthBurstMsec = 1000,则在一秒的时间间隔之内,输出不得超过 4 Kb。但是,这 4 Kb 的数据可以在 1 秒时间间隔开始时作为集中突发输出,也可以在 1 秒时间间隔内根据需要进行分发。

RemoteDisplay.maxBandwidthKbps 整数 1000000

指定 VMware Blast 会话的最大带宽以千比特/秒 (Kbps) 为单位。此带宽包括所有图像处理、音频、虚拟通道以及 VMware Blast 控制流量。有效值必须小于 4 Gbps (4096000)。

注: 实际允许的最大带宽是以下值中的 较小者
  • RemoteDisplay.maxBandwidthKbps 中明确配置的最大带宽
  • 根据 RemoteDisplay.maxBandwidthKbpsPerMegaPixelOffsetRemoteDisplay.maxBandwidthKbpsPerMegaPixelSlope 计算的最大带宽上限
RemoteDisplay.maxBandwidthKbpsPerMegaPixelOffset 整数 0

根据可用于 VMware Blast 会话的总屏幕区域,指定用于确定该会话的最大带宽上限的偏移和斜率值,以千比特/秒 (kbps) 为单位。此最大带宽上限根据以下方程式得出

MaxBandwidthCap = Offset + (Slope * ScreenArea)

其中

  • OffsetRemoteDisplay.maxBandwidthKbpsPerMegaPixelOffset 定义的值,以 Kbps 为单位
  • SlopeRemoteDisplay.maxBandwidthKbpsPerMegaPixelSlope 定义的值,以每百万像素的 Kbps 为单位
  • ScreenArea 是指用于显示 Blast 会话的显示器的总可用屏幕区域,以百万像素为单位。在会话期间会自动检测此百万像素屏幕区域。
注: 实际允许的最大带宽是以下值中的 较小者
  • RemoteDisplay.maxBandwidthKbps 中明确配置的最大带宽
  • 根据 RemoteDisplay.maxBandwidthKbpsPerMegaPixelOffsetRemoteDisplay.maxBandwidthKbpsPerMegaPixelSlope 计算的最大带宽上限
RemoteDisplay.maxBandwidthKbpsPerMegaPixelSlope 100 到 100000 之间的整数 6200
RemoteDisplay.minBandwidthKbps 整数 256 指定 VMware Blast 会话的最小带宽,以千比特/秒 (Kbps) 为单位。此带宽包括所有图像处理、音频、虚拟通道以及 VMware Blast 控制流量。
RemoteDisplay.maxFPS 整数 30 指定屏幕更新的最大速率。使用此设置可管理用户占用的平均带宽。有效值必须介于 3 到 60 之间。默认值为每秒更新 30 次。
RemoteDisplay.maxQualityJPEG 可用值范围:1-100 90 指定使用 JPEG/PNG 编码时桌面显示的图像质量。高质量设置用于较为静态的屏幕区域,从而产生更好的图像质量。
RemoteDisplay.midQualityJPEG 可用值范围:1-100 35 指定使用 JPEG/PNG 编码时桌面显示的图像质量。用于设置桌面显示的中等质量设置。
RemoteDisplay.minQualityJPEG 可用值范围:1-100 25 指定使用 JPEG/PNG 编码时桌面显示的图像质量。低质量设置用于经常变化的屏幕区域,例如,发生滚动时。
RemoteDisplay.qpmaxH264 可用值范围:0-51 36 使用此选项可设置 H264minQP 量化参数,该参数用来为配置为使用 H.264 或 HEVC 编码的远程显示指定最佳图像质量。应将该值设置为大于为 RemoteDisplay.qpminH264 设置的值。
RemoteDisplay.qpminH264 可用值范围:0-51 10 使用此选项可设置 H264maxQP 量化参数,该参数用来为配置为使用 H.264 或 HEVC 编码的远程显示指定最低图像质量。应将该值设置为小于为 RemoteDisplay.qpmaxH264 设置的值。
RemoteDisplay.updateCacheSizeKB 整数 256000 使用此选项可设置编码器映像缓存的最大大小(以千字节为单位)。
  • 缓存的最终大小是此处设置的值和客户端的关联配置中的较小者。
  • 缓存的最终大小不能超过运行 Horizon Agent for Linux 的计算机上可用 RAM 的一半。
UsbRedirPlugin.log.logLevel errorwarninfodebugtraceverbose info 使用该选项设置 USB 重定向插件的日志级别。
UsbRedirServer.log.logLevel errorwarninfodebugtraceverbose info 使用该选项设置 USB 重定向服务器的日志级别。
vdpservice.log.logLevel fatal errorwarninfodebugtrace info 使用该选项设置 vdpservice 的日志级别。
viewusb.AllowAudioIn {m|o}:{true|false} 未定义,等同于 true 使用该选项允许或禁止对音频输入设备进行重定向。示例:o:false
viewusb.AllowAudioOut {m|o}:{true|false} 未定义,等同于 false 设置该选项以允许或禁止对音频输出设备进行重定向。
viewusb.AllowAutoDeviceSplitting {m|o}:{true|false} 未定义,等同于 false 设置该选项以允许或禁止自动拆分复合 USB 设备。

示例:m:true

viewusb.AllowDevDescFailsafe {m|o}:{true|false} 未定义,等同于 false 设置该选项以便即使在 Horizon Client 未能获取配置或设备说明符时,也允许或禁止对设备进行重定向。要在设备未能获取配置或设备说明符时也仍然允许对其进行重定向,可将该设备包含在 Include 筛选器中,例如 IncludeVidPidIncludePath
viewusb.AllowHIDBootable {m|o}:{true|false} 未定义,等同于 true 使用该选项允许或禁止对引导时除键盘或鼠标之外的其他可用输入设备(又称为可引导的 HID 设备)进行重定向。
viewusb.AllowKeyboardMouse {m|o}:{true|false} 未定义,等同于 false 使用该选项允许或禁止对键盘以及集成指针设备(例如,鼠标、轨迹球或触摸板)进行重定向。
viewusb.AllowSmartcard {m|o}:{true|false} 未定义,等同于 false 设置该选项以允许或禁止对智能卡设备进行重定向。
viewusb.AllowVideo {m|o}:{true|false} 未定义,等同于 true 使用该选项允许或禁止对视频设备进行重定向。
viewusb.DisableRemoteConfig {m|o}:{true|false} 未定义,等同于 false 设置该选项以停止或允许在执行 USB 设备筛选时使用 Horizon Agent 设置。
viewusb.ExcludeAllDevices {true|false} 未定义,等同于 false 使用该选项在重定向中排除或包含所有 USB 设备。如果设置为 true,可以使用其他策略设置来允许对特定设备或设备系列进行重定向。如果设置为 false,可以使用其他策略设置来防止特定设备或系列设备进行重定向。如果将 Horizon Agent 上的 ExcludeAllDevices 值设置为 true,并将该设置传递到 Horizon ClientHorizon Agent 设置将覆盖 Horizon Client 设置。
viewusb.ExcludeFamily {m|o}:family_name_1[;family_name_2;...] 未定义 使用该选项从重定向中排除设备系列。例如:m:bluetooth;smart-card

如果您启用了自动设备拆分,则 Horizon 8 会检查复合 USB 设备每个接口的设备系列,以确定必须排除哪些接口。如果您停用了自动设备拆分,则 Horizon 8 会检查整个复合 USB 设备的设备系列。

注: 默认情况下会从重定向中排除鼠标和键盘。因而您不必配置此设置来排除鼠标和键盘设备。
viewusb.ExcludePath {m|o}:bus-x1[/y1].../ port-z1[;bus-x2[/y2].../port-z2;...] 未定义 使用该选项从重定向中排除位于指定集线器或端口路径的设备。您必须以十六进制格式指定总线和端口号。在路径中不能使用通配符。

例如:m:bus-1/2/3_port- 02;bus-1/1/1/4_port-ff

viewusb.ExcludeVidPid {m|o}:vid-xxx1_ pid-yyy1[;vid-xxx2_pid-yyy2;..] 未定义 设置该选项以从重定向中排除具有指定供应商和产品 ID 的设备。您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。

例如:o:vid-0781_pid- ****;vid-0561_pid-554c

viewusb.IncludeFamily {m|o}:family_name_1[;family_name_2]... 未定义 设置该选项以包含可重定向的设备系列。

例如:o:storage; smart-card

viewusb.IncludePath {m|o}:bus-x1[/y1].../ port-z1[;bus-x2[/y2].../portz2;...] 未定义 使用该选项包含位于指定集线器或端口路径的可重定向设备。您必须以十六进制格式指定总线和端口号。在路径中不能使用通配符。

例如:m:bus-1/2_port- 02;bus-1/7/1/4_port-0f

viewusb.IncludeVidPid {m|o}:vid-xxx1_ pid-yyy1[;vid-xxx2_pid-yyy2;...] 未定义 设置该选项以包含具有指定供应商和产品 ID 的可重定向设备。您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。

例如:o:vid-***_pid-0001;vid-0561_pid-554c

viewusb.SplitExcludeVidPid {m|o}:vid-xxx1_pid-yyy1[;vid-xxx2_pid-yyy2;...] 未定义 使用该选项按供应商和产品 ID 在拆分中排除或包含指定的复合 USB 设备。该设置的格式为 vid-xxx1_pid-yyy1[;vid-xxx2_pid-yyy2;...]。您必须以十六进制格式指定 ID 号。可以使用通配符 (*) 代替 ID 中的单个数字。

示例:m:vid-0f0f_pid-55**

viewusb.SplitVidPid {m|o}: vid-xxxx_pid-yyyy([exintf:zz[;exintf:ww]])[;...] 未定义 设置该选项以将由供应商和产品 ID 指定的复合 USB 设备的组件视为单独设备。该设置的格式为 vid-xxxx_pid-yyyy(exintf:zz[;exintf:ww])

可以使用 exintf 关键字通过指定组件的接口号从重定向中排除组件。您必须以十六进制格式指定 ID 号,以十进制格式(包含前导零)指定接口号。可以使用通配符 (*) 代替 ID 中的单个数字。

示例:o:vid-0f0f_pid-***(exintf-01);vid-0781_pid-554c(exintf:01;exintf:02)

注: Horizon 8 不会自动包含您未明确排除的组件。您必须指定一个筛选策略(如 Include VidPid Device)来包含这些组件。
VMWPkcs11Plugin.log.enable truefalse false 设置该选项以启用或停用 True SSO 功能的日志记录模式。
VMWPkcs11Plugin.log.logLevel errorwarninfodebugtraceverbose info 使用该选项为 True SSO 功能设置日志级别。
VVC.logLevel fatal errorwarninfodebugtrace info 使用该选项设置 VVC 代理节点的日志级别。
VVC.RTAV.Enable truefalse true 设置该选项以启用/停用实时音频-视频重定向。
VVC.RTAV.WebcamDefaultResHeight 可用值范围:32-2160 未定义 使用该选项设置用于实时音频-视频重定向的默认图像高度(以像素为单位)。
VVC.RTAV.WebcamDefaultResWidth 可用值范围:32-4096 未定义 使用该选项设置用于实时音频-视频重定向的默认图像宽度(以像素为单位)。
VVC.RTAV.WebcamMaxFrameRate 可用值范围:1-30 未定义,相当于不限制最大帧速率 使用该选项设置实时音频-视频重定向允许的最大帧速率(以每秒帧数 (fps) 为单位)。
VVC.RTAV.WebcamMaxResHeight 可用值范围:32-2160 未定义,相当于不限制最大图像高度 使用该选项设置实时音频-视频重定向允许的最大图像高度(以像素为单位)。
VVC.RTAV.WebcamMaxResWidth 可用值范围:32-4096 未定义,相当于不限制最大图像宽度 使用该选项设置实时音频-视频重定向允许的最大图像宽度(以像素为单位)。
VVC.ScRedir.Enable truefalse true 设置该选项以启用/停用智能卡重定向。

/etc/vmware/viewagent-custom.conf 中的配置选项

Java Standalone Agent 使用配置文件 /etc/vmware/viewagent-custom.conf

表 2. /etc/vmware/viewagent-custom.conf 中的配置选项
选项 默认 说明
CDREnable truefalse true 使用该选项启用或停用客户端驱动器重定向功能。
AppEnable truefalse true 使用该选项启用或停用对单会话应用程序池的支持。
BlockScreenCaptureEnable truefalse false 使用此选项阻止用户使用 Windows 或 macOS 设备从其终端捕获其虚拟桌面或已发布应用程序的屏幕截图。
CollaborationEnable truefalse true 使用该选项在 Linux 桌面上启用或停用会话协作功能。
DPISyncEnable truefalse true 设置该选项以启用或停用 DPI 同步功能,从而确保远程桌面中的 DPI 设置与客户端系统的 DPI 设置相匹配。
EndpointVPNEnable truefalse false 设置该选项以指定在根据 Dynamic Environment Manager 控制台中使用的端点 IP 地址范围评估端点 IP 地址时,是使用客户端的物理网卡 IP 地址还是 VPN IP 地址。如果将该选项设置为 false,将使用客户端的物理网卡 IP 地址。否则,将使用 VPN IP 地址。
HelpDeskEnable truefalse true 设置该选项以启用或停用技术支持工具功能。
KeyboardLayoutSync truefalse true 使用该选项指定是否将客户端的系统区域设置列表和当前键盘布局与 Horizon Agent for Linux 桌面同步。

启用或未配置此设置时,允许同步。停用此设置时,不允许同步。

只有适用于 Windows 的 Horizon Client 支持该功能,并且该功能仅适用于英语、法语、德语、日语、韩语、西班牙语、简体中文和繁体中文区域设置。

LogCnt 整数 -1 使用该选项设置在 /tmp/vmware-root 中保留的日志文件计数。
  • -1 - 全部保留
  • 0 - 全部删除
  • > 0 - 保留的日志计数。
MaxSessionsBuffer

介于 1 和场配置向导中为每个 RDS 主机的最大会话数指定的值之间的整数。

51

在配置场时,请使用此选项指定每台主机的预启动会话数。正确配置后,此选项有助于加快桌面和应用程序会话的启动速度。

对于非 vGPU 场,默认值为 5;对于 vGPU 场,默认值为 1。值越大,意味着 vGPU 或非 vGPU 环境中预消耗的资源越多。

在使用较低 vGPU 配置文件的负载均衡 vGPU 环境中,不建议配置高值,因为预消耗 vGPU 资源的高比率会影响负载均衡器的行为。例如,如果在负载均衡环境中使用配置文件 2Q,则使用较高的 MaxSessionBuffer 值可能会阻止负载均衡器从该场分配桌面和应用程序。

NetbiosDomain 全部为大写形式的文本字符串 未定义 在配置 True SSO 时,可以使用该选项设置您的组织的域的 NetBIOS 名称。
OfflineJoinDomain pbissamba pbis 可使用此选项来设置即时克隆脱机域加入。可执行脱机域加入的方法包括 PowerBroker Identity Services Open (PBISO) 身份验证和 Samba 脱机域加入。如果此属性的值不是 pbissamba,则将忽略脱机域加入。
PrintRedirEnable truefalse true

启用或停用 VMware Integrated Printing 功能,其中包括客户端打印机重定向。

注: 要启用 VMware Integrated Printing,您必须将以下这 两个配置选项设置为 true
  • /etc/vmware/config 中的 printSvc.enable
  • /etc/vmware/viewagent-custom.conf 中的 PrintRedirEnable

如果将其中的任一选项设置为 false,那么即使另一个选项设置为 true,也会停用 VMware Integrated Printing。

RunOnceScript 用于将虚拟机加入 Active Directory 的脚本 未定义

使用该选项将克隆的虚拟机重新加入 Active Directory。

设置主机名更改后的 RunOnceScript 选项。指定的脚本只在首次主机名更改后运行一次。如果在安装代理后更改了主机名,在代理服务启动时,将以 root 权限运行该脚本。

例如,对于 Winbind 解决方案,您必须通过 Winbind 将基础虚拟机加入 Active Directory,并将该选项设置为一个脚本路径。该脚本必须包含域重新加入命令 /usr/bin/net ads join -U <ADUserName>%<ADUserPassword>。在虚拟机克隆后,操作系统自定义将更改主机名。代理服务启动时,将执行该脚本以将克隆的虚拟机加入 Active Directory。

RunOnceScriptTimeout 120 使用此选项设置 RunOnceScript 选项的超时时间,以秒为单位。

例如,设置 RunOnceScriptTimeout=120

SSLCertName 文本字符串 vmwblast:cert

使用 DeployBlastCert.sh 脚本部署 VMwareBlastServer 证书时,可使用此选项指定将在 Linux 密钥环中显示的证书名称。

有关更多信息,请参阅在 Linux 计算机上安装 VMwareBlastServer 的 CA 签名证书

SSLKeyName 文本字符串 vmwblast:key

使用 DeployBlastCert.sh 脚本部署 VMwareBlastServer 证书时,可使用此选项指定将在 Linux 密钥环中显示的私钥名称。

有关更多信息,请参阅在 Linux 计算机上安装 VMwareBlastServer 的 CA 签名证书

SSLCiphers 文本字符串 kECDH+AESGCM:ECDH+AESGCM:RSA+AESGCM:kECDH+AES:ECDH+AES:RSA+AES:TLS13-AES-256-GCM-SHA384:TLS13-AES-128-GCM-SHA256

使用此选项指定与 TLSv1.1 和 TLSv1.2 一起使用的密码列表。仅当为 SSLProtocols 指定 TLSv1.1 或 TLSv1.2 时,此选项才生效。

密码列表包含一个或多个按首选项顺序排列的密码字符串(以冒号分隔)。密码字符串区分大小写。

您必须使用 OpenSSL 标准定义的格式。要查找有关 OpenSSL 定义的格式的信息,请在 Internet 搜索引擎中键入以下关键字:OpenSSL 密码字符串

SSLProtocols 文本字符串

TLSv1.3:TLSv1.2(在非 FIPS 模式下)

TLSv1.2(在 FIPS 模式下)

使用该选项以指定安全协议。支持的协议是 TLSv1.1、TLSv1.2 和 TLSv1.3。
TLSCipherSuites 文本字符串 TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256

使用此选项指定与 TLSv1.3 一起使用的密码列表。仅当为 SSLProtocols 指定 TLSv1.3 时,此选项才生效。

密码列表包含一个或多个按首选项顺序排列的密码字符串(以冒号分隔)。密码字符串区分大小写。

您必须使用 OpenSSL 标准定义的格式。要查找有关 OpenSSL 定义的格式的信息,请在 Internet 搜索引擎中键入以下关键字:OpenSSL 密码字符串

SSODesktopType UseGnomeClassicUseGnomeFlashbackUseGnomeUbuntuUseMATEUseKdePlasma 未定义

此选项指定在启用了 SSO 时要使用的桌面环境,而不是默认桌面环境。

在指定使用所选的桌面环境之前,您必须先确保桌面上已安装该桌面环境。如果在 Ubuntu 桌面中设置此选项,无论是否启用 SSO 功能,此选项都会生效。如果在 RHEL/CentOS 7.x 桌面中设置此选项,则仅当启用 SSO 时才使用选定的桌面环境。

注: RHEL 9.x/8.x 桌面不支持此选项。 Horizon 8 仅支持 RHEL 9.x/8.x 桌面上的 Gnome 桌面环境。
SSOEnable truefalse true 设置该选项以启用/停用单点登录 (Single Sign-On, SSO)。
SSOUserFormat 文本字符串 [username] 使用该选项以指定用于单点登录的登录名称格式。默认值只包含用户名。如果还需要域名,请设置该选项。通常,登录名称是域名加上一个特殊字符,再加上用户名。如果特殊字符是反斜杠,则必须使用另一个反斜杠对其进行转义。登录名称格式的示例如下:
  • SSOUserFormat=[domain]\\[username]
  • SSOUserFormat=[domain]+[username]
  • SSOUserFormat=[username]@[domain]
Subnet 采用 CIDR IP 地址格式的值 [subnet] 如果启用了 IPv4 支持,请将此选项设置为其他计算机可用于连接到 Horizon Agent for Linux 的 IPv4 子网。如果存在多个具有不同子网的本地 IP 地址,则将使用所配置的子网中的本地 IP 地址连接到 Horizon Agent for Linux。您必须指定 CIDR IP 地址格式的值。例如,Subnet=123.456.7.8/24。
Subnet6 采用前缀/长度 IP 地址格式的值 [subnet6] 如果启用了 IPv6 支持,请将此选项设置为其他计算机可用于连接到 Horizon Agent for Linux 的 IPv6 子网。如果存在多个具有不同子网的本地 IP 地址,则将使用所配置的子网中的本地 IP 地址连接到 Horizon Agent for Linux。您必须指定前缀/长度 IP 地址格式的值。例如,Subnet6=2001:db8:abcd:0012::0/64。
DEMEnable truefalse true

设置该选项以启用或停用在 Dynamic Environment Manager 中创建的智能策略。

要使 Dynamic Environment Manager 策略生效,您必须将此选项设置为 true,并且必须配置 DEMNetworkPath 选项。

Dynamic Environment Manager 策略生效并且满足某个智能策略中的条件时,将强制执行该策略。

DEMNetworkPath 文本字符串 未定义

您必须将此选项设置为与在 Dynamic Environment Manager 控制台中设置的相同网络路径。路径格式必须类似于 //10.111.22.333/view/LinuxAgent/DEMConfig

网络路径必须与不需用户名和密码凭据即可进行访问的公共共享文件夹相对应。

注: VMwareBlastServer 进程使用 SSLCiphers、SSLProtocols 和 SSLCipherServerPreference 安全选项。在启动 VMwareBlastServer 进程时,Java Standalone Agent 将这些选项作为参数传递。启用 Blast 安全网关 (BSG) 时,这些选项会影响 BSG 和 Linux 桌面之间的连接。如果未启用 BSG,这些选项将影响客户端和 Linux 桌面之间的连接。

/etc/vmware/viewagent-greeter.conf 中的配置设置

/etc/vmware/viewagent-greeter.conf 文件中的设置支持 True SSO 和智能卡 SSO 功能。停用 SSO 后,这些设置也适用于 VMware Greeter。配置文件包含两个部分:[SSOFailed][PKCS11]

[SSOFailed] 下的 defaultUsername 设置指定了在 True SSO 或智能卡 SSO 失败时 VMware Greeter 如何获取默认用户名。

[PKCS11] 下的设置用于在智能卡 SSO 身份验证失败时从智能卡证书中获取默认用户名。

注: [PKCS11] 设置仅在将 defaultUsername 设置为 false 时才会生效。
表 3. /etc/vmware/viewagent-greeter.conf 中的配置设置
部分 设置 值/格式 默认 说明
[SSOFailed] defaultUsername truefalse true

使用此设置可指定在单点登录过程失败时如何获取用户名。此设置的行为在 True SSO 和智能卡 SSO 之间有所不同。

当 True SSO 失败时 -

  • 如果设置为 true,Greeter 将获取用于登录 Horizon Connection Server 的默认用户名。
  • 如果设置为 false,Greeter 不会尝试获取默认用户名。用户必须在 Greeter 屏幕中手动输入用户名。

当智能卡 SSO 失败时 -

  • 如果设置为 true,Greeter 将获取用于登录 Horizon Connection Server 的默认用户名。
  • 如果设置为 false,Greeter 会从智能卡上的证书获取默认用户名,前提是已正确配置 /etc/vmware/viewagent-greeter.conf 中的 PKCS #11 设置。然后,Greeter 会提示用户输入智能卡 PIN。
注: PKCS#11 设置仅在将 defaultUsername 设置为 false 时才会生效。
[SSOFailed] scAuthTimeout 整数 120 使用此设置可指定智能卡 SSO 身份验证的超时时限(以秒为单位)。下列准则适用:
  • 如果将该值设置为 0,则可无限期尝试进行智能卡 SSO 身份验证,不会超时。
  • 如果未配置此设置,则智能卡 SSO 将使用默认超时值 120 秒。
[PKCS11] module 文件路径 未定义 使用此设置可指定智能卡驱动程序的路径。此设置是必需的。
[PKCS11] slotDescription 文本字符串 未定义

使用此设置可指定智能卡读卡器所使用的插槽标签。指定 "none" 则会使用具有可用身份验证令牌的第一个插槽。此设置是可选的。

注: 您可以使用 slotDescriptionslotNum 设置来指定插槽。下列准则适用:
  • 如果同时指定这两个设置,则 slotDescription 设置优先。
  • 如果未指定这两个设置,Greeter 会将第一个插槽与可用令牌一起使用。
[PKCS11] slotNum 整数 -1(未定义插槽号)

使用此设置可指定智能卡读卡器所使用的插槽号。此设置是可选的。

有关此设置与 slotDescription 设置有何关系的信息,请参阅此表中的上一个条目。

注: 仅当 PKCS #11 实施可确保插槽编号一致时,才使用此设置。
[PKCS11] service 文件路径 未定义 使用此设置可指定用于智能卡身份验证的 PAM 模块的路径。此设置是必需的。
[PKCS11] mapper 文件路径 未定义 使用此设置可指定用于智能卡身份验证的公用名 (CN) 映射程序文件的路径。此设置是必需的。
[PKCS11] waitForToken 整数 10000

使用此设置可指定分配用于在智能卡插槽中检测身份验证令牌的时间段(以毫秒 (ms) 为单位)。如果 Greeter 无法在此时间段内检测到令牌,则会取消当前尝试,并且 Greeter 会开始新的检测尝试。

请遵循以下内容:

  • 如果将该值设置为 -1,则 Greeter 会无限期地尝试检测令牌,而不会超时。
  • 如果未配置,此设置将使用默认超时值 10000 毫秒。