故障排除
本文中提供的信息可帮助管理员解决 Citrix Workspace 应用程序出现的问题。
连接
您可能会遇到以下连接问题。
ICA 启动 Fedora 29/30
ICA 启动可能会在 Fedora 29/30 上失败。解决方法:按照以下步骤进行操作:
-
使用命令安装
compat-openssl10
。sudo yum install compat-openssl10.x86_64
-
在
~/.bashrc
中设置环境变量以便为每个会话进行加载。此操作指向较旧的libcrypto
库。export LD_PRELOAD=/lib64/libcrypto.so.1.0.2o
注意:
与 Wayland 合成器相比,Citrix Workspace 应用程序在 X.Org 服务器中工作运行。对于将 Wayland 作为默认图形协议的发行版,请取消注释以下任一项:
/etc/gdm/custom.conf
或/etc/gdm3/custom.conf
中的WaylandEnable=false
注销并登录以指向 X.ORG 服务器。
已发布的资源或桌面会话
与 Windows 服务器建立连接时,如果显示带有“正在连接到服务器…”消息的对话框,但以后不显示连接窗口,则可能需要为服务器配置客户端访问许可证 (Client Access License, CAL)。有关许可的详细信息,请参阅许可。
会话重新连接
重新连接到颜色深度高于 Citrix Workspace 应用程序所需的颜色深度的会话时,连接可能会失败。服务器上的可用内存不足时会出现此故障。
如果重新连接失败,Citrix Workspace 应用程序将尝试使用初始颜色深度。否则,服务器将尝试以所请求的颜色深度启动一个新会话,而将初始会话保持在断开连接状态。如果服务器上的可用内存仍然不足,则第二个连接也可能会失败。
完整 Internet 名称
Citrix 建议您在网络上配置 DNS(域名服务器)。此配置使您能够解析要连接的服务器的名称。如果不配置 DNS,则可能无法将服务器名称解析为 IP 地址。您也可以改为按 IP 地址(而非名称)指定服务器。TLS 连接要求完全限定的域名,而非 IP 地址。
代理检测失败
如果将连接配置为使用自动代理检测,但在尝试建立连接时显示“代理检测失败: Javascript 错误”错误消息,请将 wpad.dat
文件复制到 $ICAROOT/util
中。运行以下命令,其中主机名为尝试连接到的服务器主机名:
cat wpad.dat | ./pacexec pac.js FindProxyForURL <http://hostname> hostname 2\>&1 | grep “undeclared variable”
如果未显示命令输出,说明服务器上的 wpad.dat
文件存在严重问题,需要进行调查。但如果显示“赋值给未声明的变量…”等命令输出,则可以解决该问题。打开 pac.js
,为输出中列出的每个变量按以下格式在文件顶部添加一行,其中“…”为变量名。
var ...;
会话速度缓慢
如果某个会话在您移动鼠标后才启动,Linux 内核中的随机数字生成功能可能存在问题。解决方法:运行一个熵生成的后台程序,例如 rngd
(基于硬件)或 haveged
(来自 Magic Software)。
密码套件
如果连接失败,并提供新的加密支持:
- 可以使用各种工具来检查服务器支持的密码套件,包括:
-
Ssllabs.com
(要求服务器具有 Internet 访问权限) -
sslyze
(https://github.com/nabla-c0d3/sslyze
)
-
- 在 Linux 客户端 WireShark 中,使用过滤器 (ip.addr ==
VDAIPAddress
) 查找数据包 (Client Hello, Server Hello) 以查找 SSL 部分。结果包含由客户端发送并由服务器接受的密码套件。
Citrix 优化 SDK 不正确
Citrix Optimization SDK 软件包包含不正确的 UIDialogLibWebKit.so
版本。解决方法:执行以下操作之一:
-
从下载页面下载 Citrix Optimization SDK 软件包版本 18.10。
-
转到路径 CitrixPluginSDK/UIDialogLib/GTK:
cd CitrixPluginSDK/UIDialogLib/GTK
-
删除所有对象文件:
rm -rf *.o
-
转到 WebKit 文件夹:
cd ../WebKit
-
删除现有 UIDialogLibWebKit.so 包:
rm -rf UIDialogLibWebKit.so
-
在 WebKit 目录中使用以下命令:
make all
生成新的 UIDialogLibWebKit.so。
-
将新库复制到 $ICAROOT/lib 目录中。
-
适用于 SSL 连接的弱密码套件
建立 TLS 连接时,Citrix Workspace 应用程序默认情况下将提供一组严格的高级密码套件。
如果要连接到需要较旧的密码套件的服务器,请在配置文件的 [WFClient\] 部分中设置配置选项 SSLCiphers=ALL
。
支持以下高级密码套件:
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)、ALL、GOV
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)、ALL、GOV
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)、ALL、COM
连接中断
使用 EDT 协议时,您可能会看到以下错误消息:与“…”的连接已断开。如果连接是通过适用于 EDT 的最大传输单位小于默认值 1500 字节的路由器建立的,可能会出现此问题。请执行以下操作:
- 在配置文件中设置
edtMSS=1000
。
连接错误
连接错误可能会产生各种不同的错误对话框。示例如下:
- 连接出错: 与身份验证服务通信时出现协议错误
- 无法联系身份验证服务
- 无法使用此服务器地址添加您的帐户
某些问题可能会导致出现此类错误,包括:
- 本地计算机和远程计算机无法协商通用 TLS 协议时。有关详细信息,请参阅 TLS。
- 远程计算机需要对 TLS 连接使用较旧的密码套件时。在这种情况下,您可以在配置文件的
\[WFClient\]
部分中设置配置选项SSLCiphers=ALL
,然后在重新启动连接之前运行killall AuthManagerDaemon ServiceRecord selfservice storebrowse
。 - 远程计算机不恰当地请求客户端证书时。IIS 必须仅接受或要求提供 Citrix、Authentication 和 Certificate 的证书。
- 其他问题。
低带宽连接
Citrix 建议您在服务器上使用最新版本的 Citrix Virtual Apps and Desktops 或 Citrix DaaS(以前称为 Citrix Virtual Apps and Desktops 服务)。此外,请在用户设备上使用最新的 Citrix Workspace 应用程序。
如果使用低带宽连接,则可以更改 Citrix Workspace 应用程序的配置以及 Citrix Workspace 应用程序的使用方法以提高性能。
- 配置 Citrix Workspace 应用程序连接 - 配置 Citrix Workspace 应用程序连接可以降低 ICA 所需的带宽并提高性能
- 更改 Citrix Workspace 应用程序的使用方式 - 更改 Citrix Workspace 应用程序的使用方式还可以降低实现高性能连接所需的带宽
- 启用 UDP 音频 - 此功能可以在阻塞的网络上保持 IP 语音 (VoIP) 连接中延迟的一致性
- 使用最新版本的适用于 Linux 的 Citrix Workspace 应用程序和 Citrix Virtual Apps and Desktops 或 Citrix DaaS - Citrix 不断地增强和提升每个版本的性能,许多性能功能需要最新的 Citrix Workspace 应用程序和服务器软件
显示
屏幕撕裂
在水平块中,两个(或多个)不同的帧的几个部分同时出现在屏幕上时会出现屏幕撕裂的情况。在桌面上内容更改频率非常快的大型区域中此问题最常见。
在 VDA 上捕获数据时可避免屏幕撕裂。当数据传递到客户端时,不会引入屏幕撕裂现象。但是,X11(Linux/Unix 图形子系统)没有提供一致的方式来防止屏幕撕裂。
为防止屏幕撕裂,Citrix 建议您使用将应用程序绘制与屏幕绘制同步的标准方法。即,等待 vsvnc
启动下一帧的绘制。根据客户端上的图形硬件和您使用的窗口管理器,以下两组解决方案可用于防止屏幕撕裂:
- X11 GPU 设置
- 使用组合管理器
X11 GPU 配置
对于 Intel 高清图形,请在名为 20-intel.conf 的 xorg.conf.d 中创建一个包含以下内容的文件:
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "AccelMethod" "sna"
Option "TearFree" "true"
EndSection
对于 NVIDIA 图形,请在 xorg.conf.d 文件夹中找到包含您的配置的“MetaModes”选项的文件。对于所使用的每个以逗号分隔的 MetaMode,请添加以下内容:
{ForceFullCompositionPipeline = On}
例如:
Option “MetaModes” “DFP-0: 1920x1200 +0+0 {ForceFullCompositionPipeline = On}”
注意:
不同的 Linux 分发包使用不同的 xorg.conf.d 路径,例如 /etc/X11/xorg.conf.d 或 /user/share/X11/xorg.conf.d。
组合管理器
使用以下命令:
-
Compiz(嵌入到 Ubuntu Unity 中)。安装“CompizConfig Settings Manager”。
运行“CompizConfig Settings Manager”。
在常规 > 撰写下,取消选中取消重定向全屏窗口。
注意:
使用“CompizConfig Settings Manager”时应谨慎,因为错误地更改值会阻止系统启动。
-
Compton(加载项实用程序)。有关完整的详细信息,请参阅 Compton 的主页/文档。例如,请运行以下命令:
compton --vsync opengl --vsync -aggressive
击键不正确
如果使用的是非英文键盘,屏幕显示与键盘输入可能不匹配。在这种情况下,必须指定所使用的键盘类型和布局。有关指定键盘的详细信息,请参阅 Control keyboard behavior(控制键盘行为)。
过度重绘
移动无缝窗口时,某些窗口管理器会不断报告新的窗口位置,导致过度重绘。要解决此问题,请将窗口管理器切换到在移动窗口时仅绘制窗口轮廓的模式。
图标兼容性
Citrix Workspace 应用程序创建的窗口图标与大多数窗口管理器兼容。但是,这些图标与 X 客户端间通信约定并不完全兼容。
完全图标兼容性
要提供完全图标兼容性,请执行以下操作:
- 打开 wfclient.ini 配置文件。
- 在 [WFClient] 部分中编辑以下行:UseIconWindow=True
- 保存并关闭文件。
光标颜色
如果光标的颜色与背景色相同或相似,则可能难以看到光标。可以将光标区域的颜色强制设置为黑色或白色来修复此问题。
更改光标颜色
-
打开 wfclient.ini 配置文件。
-
在 [WFClient] 部分添加以下行之一:
CursorStipple=ffff,ffff(将光标设置为黑色)
CursorStipple=0,0(将光标设置为白色)
-
保存并关闭文件。
彩色闪光
将鼠标移入或移出连接窗口时,非焦点窗口中的颜色开始闪烁。此问题是将 X Windows 系统与伪彩色显示结合使用时的已知限制。如有可能,请为受影响的连接使用更高的颜色深度。
使用真彩色显示器的颜色变化
连接到服务器时,用户可以选择使用 256 色模式。此选项假定视频硬件支持调色板,使应用程序能够更改调色板颜色,以产生动画显示效果。
真彩色显示没有相应的机制来模拟通过快速更改调色板来产生动画效果的功能。从时间和网络流量角度来说,通过软件模拟此机制的代价非常高。为降低此项成本,Citrix Workspace 应用程序将缓冲快速的调色板更改操作,并每隔几秒钟更新一次实时调色板。
显示错误
Citrix Workspace 应用程序对日语字符使用 EUC-JP 或 UTF-8 字符编码,而服务器则使用 SJIS 字符编码。Citrix Workspace 应用程序无法在这些字符集之间进行转换。此问题可能会导致显示以下对象时出现问题:
- 保存在服务器上并在本地查看的文件
- 保存在本地并在服务器上查看的文件
此问题还会影响在扩展参数传递中所用的参数中的日语字符。
会话宽幅显示
全屏会话默认跨多个显示器,但还可以使用命令行多显示器显示控制选项 -span。通过该选项,可以将全屏会话跨额外的显示器显示。
通过 Desktop Viewer 工具栏功能,您可以在窗口化会话窗口与全屏会话窗口之间切换,包括对相交显示器的多显示器支持。
重要:
对于采用无缝或标准窗口的会话(包括已最大化的窗口中的会话),宽幅显示不起作用。
- span 选项采用以下格式: -span [h][o][a|mon1[,mon2[,mon3, mon4]]]
如果指定了 h
,则将在 stdout
中输出显示器列表。如果 h
是完整的选项值,wfica 将退出。
如果指定了 o
,则会话窗口将带有 override-redirect
属性。
小心:
- 建议不要使用此选项。它旨在作为与不兼容的窗口管理器一起使用的最后一个选项。
- 会话窗口对该窗口管理器不可见,没有图标,也无法重新创建堆栈。
- 只能通过结束会话来删除此值。
如果指定了 a
,Citrix Workspace 应用程序将尝试创建一个在所有显示器中显示的会话。
Citrix Workspace 应用程序假定其余的 -span 选项值为显示器编号的列表:
- 单个值将选择特定的监视器。
- 两个值将选择所需区域左上角和右下角的监视器。
- 四个值将指定区域顶部、底部、左侧和右侧边缘的监视器。
如果未指定 o
,wfica 将使用 _NET_WM_FULLSCREEN_MONITORS 消息从窗口管理器中请求相应的窗口布局(如果支持该功能)。否则,将使用尺寸和位置提示来请求所需的布局。
可以使用以下命令来测试窗口管理器是否支持该功能:
xprop -root | grep \_NET\_WM\_FULLSCREEN\_MONITORS
如果没有输出,说明不支持该功能。如果不支持,可能需要一个覆盖重定向窗口。可以使用 -span o
设置覆盖重定向窗口。
从命令行设置跨额外的显示器的会话:
-
在命令提示符下,键入:
/opt/Citrix/ICAClient/wfica -span h
用户设备当前所连接地显示器编号列表将输出到 stdout 中,然后退出 wfica。
-
请记下这些显示器编号。
-
在命令提示符下,键入:
/opt/Citrix/ICAClient/wfica -span \[w\[,x\[,y,z\]\]\]
w、x、y 和 z 值是上面的步骤中的步骤 1 中的监视器编号。单个值 w 将指定特定的监视器。两个值 w 和 x 指定所需区域的左上角和右下角的监视器。四个值 w、x、y 和 z 指定区域顶部、底部、左侧和右侧边缘的监视器。
重要:
-
在通过浏览器启动自助服务之前,定义 WFICA_OPTS 变量。要定义此变量,请编辑配置文件(通常位于 $HOME/.bash_profile 或 $HOME/.profile),在其中添加一行来定义 WFICA_OPTS 变量。例如:
export WFICA_OPTS="-span a"
- 此更改同时影响虚拟应用程序和桌面会话。
- 如果已启动 selfservice 或 storebrowse,请删除启动的进程,以便新环境变量能够生效。请通过以下命令删除进程:
killall AuthManagerDaemon ServiceRecord storebrowse
-
本地应用程序
您可能不会退出全屏会话以使用本地应用程序或其他会话。出现此问题的原因是客户端系统用户界面被隐藏,键盘透明度功能禁用了常见键盘命令(例如 Alt+Tab),改为将命令发送到服务器。
解决方法:使用 Ctrl+F2 暂时清除键盘透明度功能,直至焦点下次返回会话窗口。备选解决方法为在 $ICAROOT/config/module.ini 中将 TransparentKeyPassthrough 设置为 No。此解决方法将禁用键盘透明度功能。但是,您可能需要通过在 All_regions.ini 文件中添加此设置来覆盖 ICA 文件。
网络摄像机
更新默认网络摄像机
目前,适用于 Linux 的 Citrix Workspace 应用程序中的网络摄像机重定向一次仅支持一个网络摄像机。所选的默认网络摄像机将映射到设备路径 /dev/video0
,通常是便携式计算机中的内置网络摄像机。
要将其他捕获视频设置为默认值,请执行以下操作:
- 导航到
$HOME/.ICAClient/wfclient.ini
配置文件。 -
在 [WFClient] 部分中,添加以下设置。
HDXWebCamDevice
例如,添加 HDXWebCamDevice=/dev/video2
以在系统中设置映射到 /dev/video2
的网络摄像机。
测试功能
在客户端上,网络摄像机重定向模块可以在不同的模式下用于在客户环境条件下测试隔离的组件。
生产和调试模式
此模式将在 VDA 端显示的视频与编码器在客户端产生的实际缓冲区进行比较。它允许测试整个管道。
要启用此模式,请执行以下操作:
- 导航到 $HOME/.ICAClient/wfclient.ini 路径。
-
将
HDXWebcamDebug
值设置为True
。HDXWebcamDebug = True
启用此模式后,编码器将使用缓冲区生成以下文件,具体取决于所使用的编码器:
- 对于 H264 编码器:/tmp/file_mode_buffers.h264
- 对于 Theora 编码器:/tmp/file_mode_buffers.theora
下图描述了生产和调试模式:
网络摄像机测试器模式
此模式允许您测试与其余管线元素隔离的网络摄像机。
要启用网络摄像机测试器模式,请从命令行执行以下操作:
- 导航到 /opt/Citrix/ICAClient/util 路径。
- 运行二进制文件:
$./gst_read --buffers | -b BUFFERS_AMOUNT [ --input_device | -i WEBCAM_DEVICE; default=/dev/video0]
启用此模式后,将显示视频预览,并使用来自网络摄像机的原始缓冲区创建以下文件:
/tmp/wewbcam_buffers.buff
网络摄像即测试器模式所需的唯一开关为 --buffers (-b)
选项。还可以指定要测试的网络摄像机设备。例如,请参阅以下内容:
- ./gst_read -buffers 150
- ./gst_read –buffers 100 –input_device /dev/video2
- ./gst_read -b 100 -i /dev/video0
下图描述了网络摄像机测试器模式:
编码器测试器模式
此模式允许您测试与管道隔离的编码器。
要启用编码器测试器模式,请从命令行执行以下操作:
- 导航到 /opt/Citrix/ICAClient/util 路径。
- 运行二进制文件:
$./gst_read --output_file | -o FILE_NAME [ --buffers | -b BUFFER_AMOUNT; default=100 ] [ --enableH264 | -e ]
此模式所需的唯一开关为 --output_file (-o)
选项。还可以测试 Theora 或 H264 编码器以及要生成的缓冲区量。例如,请参阅以下内容:
- 对于 H264:./gst_read -o ~/file_buffers.h264 -e
- 对于 H264:./gst_read –output_file ~/file_buffers.h264 –buffers 200 –enableH264
- 对于 Theora:./gst_read -o ~/file_buffers.theora -b 100
下图描述了编码器测试器模式:
H264 软件编码器
如果基于软件的 H264 编码器无法正常运行,则必须使用以下步骤验证其依赖项:
-
验证 x264
GStreamer
插件是否作为gstreamer-plugins-ugly
的一部分存在于系统中。如果在libgstx264.so
库中可用,请运行以下命令进行验证:gst-inspect-1.0 x264 <!--NeedCopy-->
-
运行以下命令验证
libgstx264.so
库的依赖项:ldd /<lib path>/libgstx264.so <!--NeedCopy-->
H264 硬件编码器
-
验证
vaapi GStreamer
插件是否作为gstreamer1.0-vaapi
的一部分存在于系统中。如果在libgstvaapi.so
库中可用,请运行以下命令进行验证:gst-inspect-1.0 vaapi <!--NeedCopy-->
-
运行以下命令以验证 libgstvaapi.so 库的依赖项:
ldd /<lib path>/libgstx264.so <!--NeedCopy-->
-
解决任何缺失的依赖项。
要安装和配置 vaapi
,请按照 GStreamer vappi
安装指南进行操作。
收集内部 GStreamer 框架和 gst_read 日志
作为常规 ICAClient
日志的替代方法,您必须从 gst_read
模块中收集日志。
请执行以下操作以收集日志:
-
打开终端并导出
GST_DEBUG=2,gst_read_debug:6
和GST_DEBUG_FILE=<Absolute path>/gst_read.log
。注意:
此变量设置日志记录级别以及用于存储日志的文件。在这种情况下,我们为
GStreamer
框架设置级别 2,为gst_read
模块设置级别 7。有关详细信息,请参阅 文档。建议仅为内部GStreamer
框架设置错误和警告级别,为gst_read
设置日志级别。 - 下载有效 VDA 的 ICA 文件。
-
在同一终端上,运行以下命令以启动 VDA 会话:
<ICAClient Installation Folder>/Citrix/ICAClient/wfica <ICA file path>/vda.ica. <!--NeedCopy-->
gst_read.log
文件是使用内部 GStreamer
框架和 gst_read
日志生成的。
GStreamer 管道检查
要查看 GStreamer
框架正在创建的实际管道,请执行以下操作:
- 创建一个文件夹来存储点文件,例如:
gstIntPipes
。 - 打开终端并导出
GST_DEBUG_DUMP_DOT_DIR=<Absolute path>/gstIntPipes
。此变量指示点文件的存储GStreamer
位置。 - 下载有效 VDA 的 ICA 文件。
-
在同一终端上,运行以下命令以启动 VDA 会话:
<ICAClient Installation Folder>/Citrix/ICAClient/wfica <ICA file path>/vda.ica <!--NeedCopy-->
-
该目录
gstIntPipes
包含点文件。GStreamer
为管道中的每种状态变更生成一个点文件。因此,您可以检查创建管道的所有过程。下面是一组点文件的示例: - 安装点文件实用程序以查看管道的可视化表示。例如,Graphviz。下图是创建管道的优劣的示例:
管道已成功创建:
管道无法链接:
注意:
要放大前面的示意图或任何其他示意图,请右键单击该示意图,选择 Open image in new tab(在新选项卡中打开示意图),然后根据需要缩放浏览器。
如上图所示,第二个管道无法链接 GstCapsFilter
元素和 GstVaapiEncodeH264
元素。这些功能从未经过充分协商。有关详细信息,请参阅 文档。
浏览器
本地浏览器
在 Windows 会话中单击某个链接时,链接内容将显示在本地浏览器中。wfclient.ini 中启用了服务器到客户端内容重定向功能。此重定向将导致本地应用程序运行。要禁用服务器-客户端内容重定向,请参阅服务器-客户端内容重定向。
访问已发布的资源
访问已发布的资源时,您的浏览器会提示保存文件。除 Firefox 和 Chrome 外,可能需要对其他浏览器进行配置才能连接到已发布的资源。但在尝试通过单击该页面上的图标访问资源时,浏览器将提示您保存 ICA 文件。
特定浏览器
如果使用特定 Web 浏览器时遇到问题,请在运行 setupwfc
前,设置环境变量 BROWSER,以指定所需浏览器的本地路径和名称。
Firefox 浏览器
在 Firefox 中启动桌面或应用程序时,如果页面没有响应,请尝试启用 ICA 插件。
Firefox 中的 ICA 插件
在 Firefox 中启用了 ICA 插件时,桌面和应用程序会话可能未启动。在这种情况下,请尝试禁用 ICA 插件。
配置错误
如果某个连接条目配置不正确,可能会出现以下错误。
E_MISSING_INI_SECTION - 验证配置文件:“…”。配置文件中的“…”部分丢失。
配置文件存在编辑错误或已损坏。
E_MISSING_INI_ENTRY - 验证配置文件:“…”。“…”部分中必须包含条目“…”。
配置文件存在编辑错误或已损坏。
E_INI_VENDOR_RANGE - 验证配置文件:“…”。配置文件中的 X 服务器供应商范围“…”无效。
配置文件中的 X 服务器供应商信息已损坏。请与 Citrix 联系。
wfclient.ini 配置错误
如果未正确编辑 wfclient.ini,则可能会出现以下错误。
E_CANNOT_WRITE_FILE - 无法写入文件:“…”
保存连接数据库时出错;例如无磁盘空间。
E_CANNOT_WRITE_FILE - 无法创建文件: …
创建连接数据库时出错。
E_PNAGENT_FILE_UNREADABLE - 无法读取 Citrix Virtual Apps 文件“…”: 无此类文件或目录。
— 或 —
无法读取 Citrix Virtual Apps 文件“…”: 权限被拒绝。
您尝试通过桌面项或菜单访问资源,但该资源对应的 Citrix Virtual Apps and Desktops 或 Citrix DaaS 文件不可用。请在查看菜单中选择应用程序刷新以刷新已发布的资源列表,然后重新尝试访问该资源。如果错误仍然存在:
- 检查桌面图标或菜单项的属性
- 检查图标或项目所引用的 Citrix Virtual Apps and Desktops 或 Citrix DaaS 文件。
PAC 文件错误
如果您的部署使用代理自动配置 (PAC) 文件指定代理配置,则会发生以下错误。
代理检测失败: 自动配置 URL 不正确。
在浏览器中指定的地址属于无效 URL 类型。有效类型为 http:// 和 https://,不支持其他类型。请将地址更改为有效的 URL 类型并重试。
代理检测失败: .PAC 脚本 HTTP 下载失败: 连接失败。
检查是否输入了错误的名称或地址。如果是,请更正地址并重试。否则,服务器可能会关闭。稍后重试。
代理检测失败: .PAC 脚本 HTTP 下载失败: 找不到路径。
服务器上不存在所请求的 PAC 文件。请在服务器上更改此文件,或者重新配置浏览器。
代理检测失败: .PAC 脚本 HTTP 下载失败。
下载 PAC 文件时连接失败。请重新连接并重试。
代理检测失败: 自动配置脚本为空。
PAC 文件为空。请在服务器上更改此文件,或者重新配置浏览器。
代理检测失败: 不支持 JavaScript。
缺少 PAC 可执行文件或 pac.js 文本文件。重新安装 Citrix Workspace 应用程序。
代理检测失败: JavaScript 错误。
PAC 文件包含无效的 JavaScript。请在服务器上修复 PAC 文件。另请参阅连接。
代理检测失败: 代理自动配置脚本结果不正确。
从服务器接收到的响应格式不正确。请在服务器上修复此文件,或者重新配置浏览器。
证书
当您使用具有 SAML 身份验证的应用商店(使用 AUTHv3 协议)时,将显示以下错误消息:“Unacceptable TLS Certificate”(不可接受的 TLS 证书)。
使用 Citrix Workspace 应用程序 1906 及更高版本时会出现此问题。有关故障排除说明,请参阅知识中心文章 CTX260336。
如果 StoreFront 服务器无法提供与所使用的证书匹配的中间证书,或者要安装中间证书以支持智能卡用户,请先执行以下步骤,然后再添加 StoreFront 应用商店:
-
单独获取一个或多个 PEM 格式的中间证书。
提示:
如果找不到 PEM 格式的证书,请使用
openssl
实用程序将 CRT 格式的证书转换为 .pem 文件。 -
以用户身份(通常为 root)安装软件包:
-
将一个或多个文件复制到 $ICAROOT/keystore/intcerts。
-
以安装软件包的用户身份运行以下命令:
$ICAROOT/util/ctx_rehash
-
如果要对证书颁发机构颁发的尚不受用户设备信任的服务器证书进行身份验证,请先按以下说明进行操作,然后再添加 StoreFront 应用商店:
- 获取 PEM 格式的根证书。
提示:如果找不到此格式的证书,请使用
openssl
实用程序将 CRT 格式的证书转换为 .pem 文件。 - 以安装软件包的用户身份(通常为 root)执行以下操作:
-
将该文件复制到 $ICAROOT/keystore/cacerts。
-
运行以下命令:
$ICAROOT/util/ctx_rehash
-
其他
连接问题
您可能还会发现以下问题。
关闭会话
要了解服务器是否已指示 Citrix Workspace 应用程序关闭会话,请使用 wfica 程序。此程序在收到来自服务器的终止会话命令时进行记录。
要通过 syslog 系统记录此信息,请将值为 6 的 SyslogThreshold 添加到配置文件的 [WFClient] 部分中。此设置将启用优先级为 LOG_INFO 或更高的消息日志记录功能。SyslogThreshold 的默认值为 4 (=LOG_WARNING)。
同样,要拥有 wfica,请将消息发送到标准错误,并将值为 6 的 PrintLogThreshold 添加到 [WFClient] 部分。PrintLogThreshold 的默认值为 0 (=LOG_EMERG)。
有关日志记录的详细信息,请参阅日志记录,有关 syslog 配置的详细信息,请参阅 syslog 配置。
配置文件设置
wfclient.ini 中的每个条目都必须在 All_Regions.ini 中有对应的条目,这样该设置才能生效。此外,wfclient.ini 文件的 [Thinwire3.0]、[ClientDrive] 和 [TCP/IP] 部分中的每个条目都必须在 canonicalization.ini 中有对应的条目,该设置才能生效。有关详细信息,请参阅 $ICAROOT/config 目录中的 All_Regions.ini 和 canonicalization.ini 文件。
已发布的应用程序
如果运行访问串行端口的已发布的应用程序时遇到问题,则当该端口被其他应用程序锁定时,该应用程序可能会失败(是否显示错误消息取决于应用程序本身)。在此类情况下,请检查是否有其他应用程序临时锁定了该串行端口,或者是否有锁定该串行端口的应用程序在退出时未释放该端口。
要解决此问题,请停止阻止串行端口的应用程序。对于 UUCP 样式的锁定,应用程序退出后可能会在后面遗留一个锁定文件。这些锁定文件所在的位置取决于使用的操作系统。
启动 Citrix Workspace 应用程序
如果 Citrix Workspace 应用程序未启动,并显示“找不到应用程序默认文件或该文件已过期”消息。原因可能是未正确定义环境变量 ICAROOT 如果将 Citrix Workspace 应用程序安装到非默认位置,则必须设置此变量。要解决此问题,Citrix 建议执行以下操作之一:
-
将 ICAROOT 定义为安装目录。
要检查是否正确定义了 ICAROOT 环境变量,请尝试从终端会话启动 Citrix Workspace 应用程序。如果仍显示该错误消息,则可能未正确定义 ICAROOT 环境变量。
-
将 Citrix Workspace 应用程序重新安装到默认位置。有关安装 Citrix Workspace 应用程序的详细信息,请参阅安装和设置。
如果先前将 Citrix Workspace 应用程序安装到默认位置,请在重新安装前删除
/opt/Citrix/ICAClient
或$HOME/ICAClient/platform
目录。
Citrix CryptoKit(以前称为 SSLSDK)
要查找您正在运行的 Citrix CryptoKit(以前称为 SSLSDK)或 OpenSSL 的版本号,可以使用以下命令:
strings libctxssl.so | grep "Citrix SSLSDK"
还可以在 AuthManagerDaemon 或 PrimaryAuthManager 上运行此命令
键盘快捷方式
如果窗口管理器使用相同的键组合提供本机功能,您的键组合可能不起作用。例如,KDE 窗口管理器使用 Ctrl+Shift+F1 到 Ctrl+Shift+F4 的键组合在桌面 13 到 16 之间切换。如果遇到此问题,请尝试以下解决方案:
- 键盘上的转换模式将一组本地键组合映射到服务器端键组合。例如,在转换模式下,默认将 Ctrl+Shift+F1 映射到服务器端键组合 Alt+F1。要将此映射重新配置为备用本地键组合,请更新 $HOME/.ICAClient/wfclient.ini 的 [WFClient] 部分中的以下条目:此设置会将本地键组合 Alt+Ctrl+F1 映射到 Alt+F1:
- 将 Hotkey1Shift=Ctrl+Shift 更改为 Hotkey1Shift=Alt+Ctrl。
- 键盘上的直接模式将所有键组合直接发送到服务器。这些键组合不在本地处理。要配置直接模式,请在 $HOME/.ICAClient/wfclient.ini 的 [WFClient] 部分中,将 TransparentKeyPassthrough 设置为 Remote。
- 重新配置窗口管理器,使其阻止使用默认键盘组合。
远程 Croatian 键盘
以下过程可确保将 ASCII 字符正确发送到具有 Croatian 键盘布局的远程虚拟机。
- 在相应配置文件的 WFClient 部分中,将 UseEUKSforASCII 设置为 True。
- 将 UseEUKS 设置为 2。
日语键盘
要配置对日语键盘的使用,请更新 wfclient.ini 配置文件中的以下条目:
KeyboardLayout=Japanese (JIS)
ABNT2 键盘
要配置对 ABNT2 键盘的使用,请更新 wfclient.ini 配置文件中的以下条目:
KeyboardLayout=Brazilian (ABNT2)
本地键盘
如果本地键盘上的某些键未按预期运行,请从 $ICAROOT/config/module.ini 的列表中选择最相配的服务器布局。
Windows Media Player
Citrix Workspace 应用程序可能没有 GStreamer 插件,无法处理请求的格式。此问题通常会导致服务器请求其他格式。有时首次检查适用的插件会错误地指出已存在一个插件。此问题通常会被检测到,并且会导致服务器上出现一个错误对话框,指示 Windows Media Player 在播放文件时遇到问题。在会话中重试文件通常有效,因为 Citrix Workspace 应用程序拒绝该格式。因此,服务器会请求其他格式或提供媒体本身。
在少数情况下,尽管进度指示器在 Windows Media Player 中按预期移动,但检测不到恰当的插件,并且无法正确播放文件。
要避免显示此错误对话框,或者避免在将来的会话中播放失败,请执行以下操作:
-
临时将配置选项“SpeedScreenMMAVerbose=On”添加到 $Home/.ICAClient/wfclient.ini(举例)的 [WFClient] 部分。
-
通过已从终端启动的自助服务重新启动 wfica。
-
播放导致出现此错误的视频。
-
记录(在跟踪输出中)与缺失插件跟踪关联的 MIME 类型,或者记录必须受支持但不播放的 MIME 类型(例如“video/x-h264..”)。
-
编辑 $ICAROOT/config/MediaStreamingConfig.tbl。在包含记录的 MIME 类型的行中,在“:”与 MIME 类型之间插入“?”。此设置禁用该格式。
-
对引发此错误情况的其他媒体格式重复(上述)步骤 2 - 5。
-
将修改后的 MediaStreamingConfig.tbl 分发到安装了相同的一组 GStreamer 插件的其他计算机。
注意:
也可以在识别 MIME 类型后安装 GStreamer 插件进行解码。
串行端口设置
要配置一个串行端口,请在 $ICAROOT/config/module.ini 配置文件中添加以下条目:
LastComPortNum=1
ComPort1=device
要配置两个或多个串行端口,请在 $ICAROOT/config/module.ini 配置文件中添加以下条目:
LastComPortNum=2
ComPort1=device1
ComPort2=device2
错误
本主题列出了在使用 Citrix Workspace 应用程序时可能出现的其他常见错误消息。
出现错误。错误代码为 11 (E_MISSING_INI_SECTION)。请参阅相关文档。正在退出。
从命令行运行 Citrix Workspace 应用程序时,此错误通常意味着在 appsrv.ini 文件中未找到命令行中指定的说明。
E_BAD_OPTION - 选项“…”无效。
选项“…”缺少参数。
E_BAD_ARG - 选项“…”具有无效参数: …。
为选项“…”指定了无效参数。
E_INI_KEY_SYNTAX - 密钥“…”(在配置文件“…”中)无效。
配置文件中的 X 服务器供应商信息已损坏。请创建一个配置文件。
E_INI_KEY_SYNTAX - 值“…”(在配置文件“…”中)无效。
配置文件中的 X 服务器供应商信息已损坏。请创建一个配置文件。
E_SERVER_NAMELOOKUP_FAILURE - 无法连接到服务器“…”。
无法解析服务器名称。
无法写入一个或多个文件: …。请更正任何磁盘满载问题或权限问题并重试。
检查是否存在磁盘已满问题或权限问题。如果发现问题,请予以更正,并重试提示此错误消息的操作。
服务器连接已断开。请重新连接并重试。以下文件可能丢失数据: …。
重新连接并重试提示此错误消息的操作。
诊断信息
如果在使用 Citrix Workspace 应用程序时遇到问题,可能需要向技术支持部门提供诊断信息。此信息可帮助此团队尝试诊断问题并提供帮助来修复该问题。
获取与 Citrix Workspace 应用程序有关的诊断信息:
-
在安装目录中,键入 util/lurdump。建议您在会话处于打开状态时以及(如有可能)出现问题时执行此修改。
此时将生成一个包含详细诊断信息的文件,其中包括版本详细信息、Citrix Workspace 应用程序的配置文件内容以及各系统变量的值。
-
将该文件发送给 Citrix 技术支持部门之前,请检查文件中是否包含机密信息。
对与资源的连接进行故障排除
用户可以使用连接中心管理其活动的连接。此功能是一个非常有用的生产力促进工具,通过该工具,用户和管理员可以对速度缓慢或有问题的连接进行故障诊断并解决出现问题。在连接中心中,用户可以通过以下方法管理连接:
- 关闭应用程序。
- 注销会话。此步骤将结束会话并关闭任何打开的应用程序。
- 从会话中断开会话。此步骤将在不关闭任何打开的应用程序的情况下断开与服务器的选定连接(除非服务器配置为在断开连接时关闭应用程序)。
- 查看连接传输统计数据。