此部分提供 Sun Ray Client 和 Oracle Virtual Desktop Client 的常见管理任务列表或功能信息。有关特定于每种客户端的信息,请参见第 13.2 节 “Sun Ray Client”和第 13.3 节 “Oracle Virtual Desktop Client”。
如果您拥有现有的使用 Sun Ray Software 命令的脚本,或者您计划创建脚本,则必须了解 Oracle Virtual Desktop Client 和 Sun Ray Client 之间客户端 ID 的区别。
在 Sun Ray Software 管理工具中,所有客户端都以客户端 ID 表示,客户端 ID 又称 CID、终端 CID 或客户端标识符。客户端 ID 有完整 ID 和短 ID 两个版本:
完整客户端 ID:namespace
.id-part
短客户端 ID:id-part
namespace
值为决定 id-part
值格式的标记。通常使用和接受短客户端 ID,因为当前的名称空间(一个用于 Sun Ray Client,一个用于 Oracle Virtual Desktop Client)使用不同的 id-part
格式。完整客户端 ID 用于帮助更轻松地区分这些不同类型的客户端。
有关客户端 ID 的详细信息,请参见表 13.1 “Oracle Virtual Desktop Client ID 详细信息”。
表 13.1. Oracle Virtual Desktop Client ID 详细信息
客户端 |
|
|
|
---|---|---|---|
Sun Ray Client | IEEE802 | Sun Ray Client 的 MAC 地址 | 12 位十六进制数字 |
Oracle Virtual Desktop Client | MD5 | 客户端密钥的 MD5 散列 | 32 位十六进制数字 |
客户端密钥是 Oracle Virtual Desktop Client 配置文件的一部分,因此每个 Oracle Virtual Desktop Client 配置文件都有其自己的客户端 ID。
有关客户端 ID 的示例,请参见表 13.2 “Sun Ray Client ID 示例”和表 13.3 “Oracle Virtual Desktop Client ID 示例”。
表 13.2. Sun Ray Client ID 示例
短 ID | 完整 CID |
---|---|
0003badc1b9d | IEEE802.0003badc1b9d |
00144f85f52f | IEEE802.00144f85f52f |
080020b5ca55 | IEEE802.080020b5ca55 |
表 13.3. Oracle Virtual Desktop Client ID 示例
短 ID | 完整 CID |
---|---|
1bd97b44ea9458fac256a7a778a282fe | MD5.1bd97b44ea9458fac256a7a778a282fe |
d8b3a4eb29497e0c6fbb0f2a810267f5 | MD5.d8b3a4eb29497e0c6fbb0f2a810267f5 |
Oracle Virtual Desktop Client 的客户端 ID 格式与 Sun Ray Client 的客户端 ID 格式不同。有关更多信息,请参见第 13.1.1 节 “Oracle Virtual Desktop Client 和 Sun Ray Client 之间客户端 ID 的区别”。
可以通过以下方式显示 Sun Ray Client 的短 ID:
Oracle 键盘-Stop-N
非 Oracle 键盘-Ctrl-Pause-N
可以通过以下方式显示 Oracle Virtual Desktop Client 的短 ID:
键盘-Host-N(默认情况下,Host 为右侧的 Ctrl 键。)
命令-使用 ovdc 命令的 -i
或 --clientid
命令选项。
动态会话大小调整允许对远程桌面自动进行大小调整以适合本地桌面客户端会话的最佳大小。当漫游办公到不同设备的会话时,或使用平板电脑等可旋转客户端设备时,会检测新屏幕的配置并相应地调整会话屏幕尺寸。有关使用动态会话大小调整的情景列表,请参见第 13.1.2.1 节 “大小调整情景”。
使用动态会话大小调整,可以检测到桌面客户端屏幕配置的任何更改,然后相应地自动对远程桌面进行更改。桌面客户端屏幕配置的更改可以包括监视器的数量、监视器分辨率、监视器方向、平板电脑旋转或屏幕模式(例如窗口模式或全屏模式)。这些更改可以在会话期间随时发生,例如,在平板电脑的方向从横向变为纵向时。
要对 Sun Ray 会话启用动态会话大小调整,必须使用以下方法之一调用 utscreenresize 命令的 -l
选项,它在会话的后台运行 utscreenresize:
GNOME 自动启动-对于使用常规 Oracle Solaris 或 Oracle Linux 会话的用户,可以在初始化用户的 GNOME 桌面时使用 GNOME 自动启动配置调用 utscreenresize -l 命令。由于此方法使用标准 GNOME 自动启动配置,所以用户将能够通过 GNOME 桌面首选项对其进行禁用。有关详细信息,请参见第 13.1.2.2 节 “如何使用 GNOME 自动启动启用动态会话大小调整”。
会话初始化脚本-对于所有其他非常规会话(例如 kiosk 会话),可以使用会话初始化脚本在会话初始化时调用 utscreenresize -l 命令。有关详细信息,请参见第 13.1.2.3 节 “如何使用会话初始化脚本启用动态会话大小调整”。
对于 Oracle Virtual Desktop Client,用户还可以在客户端通过配置设置启用或禁用该功能,而默认情况下启用该功能。
如果对会话启用了动态会话大小调整,则会忽略所有其他显示大小调整操作,例如 utxconfig -r 或 xrandr 命令。如果用户想要配置自己的特定屏幕配置或桌面分辨率,则必须针对这些用户禁用动态会话大小调整,以便他们可以使用其他命令和工具管理其屏幕或桌面配置。或者,如果是通过 GNOME 自动启动配置启用的,则用户可以自行禁用。
动态会话大小调整适用于所有 Sun Ray Client、Oracle Virtual Desktop Client、Oracle Virtual Desktop Client for iPad 1.2 或更高版本和 Oracle Virtual Desktop Client for Android 1.2 或更高版本。要在以窗口模式调整窗口大小时向用户提供最佳显示,必须具有 Oracle Virtual Desktop Client 3.2 或更高版本。
如果启用了 Xinerama 扩展,动态会话大小调整则不起作用。有关更多详细信息,请参见第 12.2.9 节 “如何启用和禁用 Xinerama”。
动态会话大小调整将在以下情况中自动调整远程桌面的大小:
从一个 Sun Ray Client 漫游办公到具有不同监视器配置、监视器分辨率或监视器方向的另一 Sun Ray Client。
从 Sun Ray Client 漫游办公到客户端计算机上运行的 Oracle Virtual Desktop Client,反之亦然。
在窗口模式下运行 Oracle Virtual Desktop Client 时调整窗口大小。会话的显示自动调整为新的窗口大小。如果在未启用桌面会话大小调整时缩小窗口的大小,则必须使用滚动条查看整个显示,因为会话的显示不会自动调整大小,因此太大而无法在较小的窗口中全部显示。
运行 Oracle Virtual Desktop Client 应用程序时将平板电脑从横向旋转为纵向,反之亦然。远程桌面自动随平板电脑一起旋转。
此过程说明如何为所有用户在其 GNOME 桌面启动时启用动态会话大小调整。此方法最适合常规 Oracle Solaris 和 Oracle Linux 会话。
在 Sun Ray 服务器上成为超级用户。
(仅限 Sun Ray Client)如果任何 Sun Ray Client 的监视器采用非标准方向,请使用连接监视器的有效方向值(orient1
和 orient2
)设置 Sun Ray Client 的固件。
使用 utfwadm 命令的 -e
选项更新特定 Sun Ray Client 的固件。有关详细信息,请参见第 13.2.1 节 “如何集中更新 Sun Ray Client 配置 (.parms)”。
将带有 -s all -l
选项的 utscreenresize 命令添加到 GNOME 自动启动目录。
将下面名为 utscreen.desktop
的文件添加到 /usr/share/gnome/autostart
目录。
[Desktop Entry] Type=Application Exec=/opt/SUNWut/bin/utscreenresize -s all -l Hidden=false X-GNOME-Autostart-enabled=true Name[en_US]=Sun Ray Session Screen Resize Name=Sun Ray Session Screen Resize Comment[en_US]=Start utscreenresize on login. Comment=Start utscreenresize on login.
此文件部署到位后,所有用户都将默认启用动态会话大小调整。各个用户可以通过选择 System(系统)> Preferences(首选项)> Startup Applications(启动应用程序)
并取消选中 Sun Ray Screen Resize(Sun Ray 屏幕大小调整)
应用程序来禁用此功能。用户必须注销并重新登录来使更改生效。
如果动态会话大小调整未通过 /usr/share/gnome/autostart
为所有用户启用,则各个用户仍可以通过为 utscreenresize -s all -l 命令创建启动应用程序来启用此功能。他们可以选择 System(系统)> Preferences(首选项)> Startup Applications(启动应用程序)
并单击 "Startup Applications Properties" 窗口中的 Add(添加)
。
要启用动态会话大小调整,各个用户必须为 utscreenresize -s all -l 命令创建启动程序。单击 Launch(启动)> Preferences(首选项)> Desktop Preferences(桌面首选项)> Sessions(会话)
,单击 Startup Programs(启动程序)
选项卡,然后单击 Add(添加)
。
此过程说明如何在用户会话初始化时启用动态会话大小调整。非常规会话(例如 kiosk 会话)需要使用此方法。
在 Sun Ray 服务器上成为超级用户。
(仅限 Sun Ray Client)如果任何 Sun Ray Client 的监视器采用非标准方向,请使用连接监视器的有效方向值(orient1
和 orient2
)设置 Sun Ray Client 的固件。
使用 utfwadm 命令的 -e
选项更新特定 Sun Ray Client 的固件。有关详细信息,请参见第 13.2.1 节 “如何集中更新 Sun Ray Client 配置 (.parms)”。
将目录转到会话初始化目录。
Oracle Solaris 10:
# cd /usr/dt/config/Xsession.d
Oracle Linux 或 Oracle Solaris 11:
# cd /etc/X11/xinit/xinitrc.d
创建以下定制脚本以启用动态会话大小调整(在此过程中脚本名为 0050.desktopresize.sh
)。
#!/bin/sh # Enable dynamic session resizing each time a user hotdesks /opt/SUNWut/bin/utscreenresize -s all -l &
脚本名应具有 0050.
前缀以确保在正确的时间运行。对于 Oracle Linux 和 Oracle Solaris 11,脚本名必须具有 .sh
扩展名,否则将无法调用脚本。
保存脚本并允许所有人执行该脚本。
# chmod 775 0050.desktopresize.sh
启动新的会话,以便调用脚本。
此过程介绍如何在 Sun Ray 服务器上列出所有可用的 Sun Ray Client 和 Oracle Virtual Desktop Client。
在 Sun Ray 服务器上成为超级用户。
显示所有可用的客户端。
# utdesktop -l
启动管理 GUI。
单击 "Desktop Units"(桌面单元)选项卡。
将显示可用客户端列表。您可以使用下拉菜单和 "Search"(搜索)字段显示您想要查看的特定客户端。
此过程说明如何查看有关注册桌面客户端的详细信息,包括其客户端 ID。如果您具有物理 Sun Ray Client 的访问权限,那么您可以按 Stop-V 查看客户端的当前信息。
在 Sun Ray 服务器上成为超级用户。
显示有关客户端的信息。
# utdesktop -p clientID
其中
是客户端的短 ID(如第 13.1.1 节 “Oracle Virtual Desktop Client 和 Sun Ray Client 之间客户端 ID 的区别”中所述)。您可以使用 utdesktop -l 命令列出所有的桌面客户端及其客户端 ID。
clientID
为了简化搜索过程,可以使用管理 GUI 编辑桌面客户端属性。单击 DTU 标识符,再单击 "edit"(编辑)。然后可以提供位置或其他信息。
启动管理 GUI。
单击 "Desktop Units"(桌面单元)选项卡。
从 "Desktop Units"(桌面单元)选项卡中,选择要显示的信息:
要显示有关特定桌面客户端的信息,请单击 DTU 标识符(MAC 地址)或在文本字段中输入搜索字符串。
要显示有关一组桌面客户端的信息,请从下拉式菜单中选择一个选项("All Connected Desktop Units"(所有连接的桌面单元)、"Token Readers"(令牌读取器)或 "Multihead Groups"(多显示端组)),并且/或者在文本字段中输入搜索字符串以缩小搜索范围。
此过程允许添加有关桌面客户端的位置和其他信息。这对于各种应用程序(例如位置识别功能)非常有用。
此部分提供运行 Oracle Solaris 10 或 Oracle Linux 5 会话的 Sun Ray Client 和 Oracle Virtual Desktop Client 的音频输出故障排除信息。
桌面客户端可以使用应用程序需要的任何音频频率,这样您可以配置应用程序音频要求以帮助减少带宽和提高可伸缩性。例如,如果 VoIP 应用程序请求 8kHz 单声道,那么桌面客户端将仅传输 8kHz 单声道。
用户每次登录到桌面客户端时,脚本都会自动将 $AUDIODEV
环境变量分配给会话。系统会为每个会话分配一个 utaudio 进程。有关更多信息,请参阅 utaudio
和 audio
手册页。
漫游办公期间,仿真音频设备会跟随用户至新会话。仿真设备名称包含在环境变量 $AUDIODEV
中。检查 $AUDIODEV
并将其输出定向到该设备是音频应用程序的职责。
仿真音频设备会被创建为 /tmp/SUNWut/dev/utaudio
目录中的设备节点。此目录树会在引导时重建。
请勿删除 /tmp/SUNWut/dev/utaudio
目录。如果删除该目录,则具有 utaudio 会话的用户将无法使用自己的音频伪设备节点。
使用 Oracle 键盘音频键(位于键盘的右上方)并检查音量和静音按钮。
显示 Sun Ray 会话的音频设置:
$ utsettings
然后检验是否正确选择了音频输出,例如耳机或扬声器。
确保在桌面会话中音量未设为静音。
试一下插入到 Sun Ray Client 的音频输出或耳机端口的一组外部扬声器是否可用。如果可用,则 Sun Ray Client 的扬声器可能已损坏。
要测试音频是否工作,请键入以下内容:
$ cat audiofile
> $AUDIODEV
Oracle Solaris 在 /usr/share/audio/samples/au
中提供了合适的样例 PCM 编码音频文件,因此举例而言,此命令:
$ cat /usr/share/audio/samples/au/gong.au > $AUDIODEV
应能产生锣声。
Linux 一般不提供 PCM 编码的音频文件。如果找不到适合的文件,则此命令可用来生成连续的声音:
$ perl -e 'foreach(-8..8){push(@v,pack("n",4*$_))} while(1){print @v}' > $AUDIODEV
如果 cat 或 perl 命令挂起,则可能需要退出当前试图播放音频的任何其他应用程序(例如浏览器)。
检查 Flash 插件的当前发行版本,确保它是 9.0.r125 版或更高版本。要检查 Flash 插件的版本,请在浏览器中键入 about:plugins
作为 URL。
尝试退出 Firefox 并在终端窗口中显式重新启动。
如果所有其他尝试都失败,请退出 Firefox,转至 .mozilla
目录,并将 "firefox" 目录重命名为其他内容,例如 firefox.jan09
。然后,重新启动 Firefox,查看音频在全新配置下是否工作。
如果音频在全新配置下正常工作,则说明浏览器的先前配置存在错误。
此问题有可能会发生,因为您使用的是最新版本的 Firefox 或 Adobe Flash Player,它仅提供 ALSA 声音支持。Oracle Linux 5 仅提供 OSS 声音支持。有关此问题的解决方法,请参见知识库文章 1464502.1。
某些应用程序无法使用 $AUDIODEV
,并会无条件地使用特定音频设备节点,例如 /dev/audio
或 /dev/dsp
。为解决此不足,Sun Ray Software 提供可预先载入的共享库 libc_ut.so
,该库可用于介入应用程序并将其活动重定向到 $AUDIODEV
所指定的设备中。要使此重定向生效:
导航至从中启动音频播放器的 shell 或包装。
设置播放器应用程序环境中的环境变量 LD_PRELOAD
以引用 libc_ut.so
介入库:
$ LD_PRELOAD=libc_ut.so $ export LD_PRELOAD
重新启动应用程序。
要配置 xmms 播放器以播放 mp3 文件,请执行以下步骤:
更改 xmms 输出插件的首选项以添加更多的缓冲。
将缓冲区大小更改为 10000 ms,并将预缓冲百分比更改为 90。
从命令行或菜单中运行 xmms
时,单击面板左侧的 O
(字母 O)以显示 Preferences(首选项)
菜单。
在 Audio I/O Plugins(音频 I/O 插件)
按钮下,选择 Output Plugin OSS Driver(输出插件 OSS 驱动程序)
并单击 Configure(配置)
。
选择 "Buffering"(缓冲)。
默认缓冲区大小为 3000 ms。将该值更改为 10000 ms。
默认预缓冲百分比为 25。将该值更改为 90。
单击 OK(确定)
,然后单击 Preferences(首选项)
面板上的 OK(确定)
。
退出 xmms 并重新启动。
此部分提供运行 Oracle Solaris 11 或 Oracle Linux 6 会话的 Sun Ray Client 和 Oracle Virtual Desktop Client 的音频输出故障排除信息。
PulseAudio 声音服务器用于在使用这些平台时为桌面客户端会话提供音频输出。系统针对每个会话创建一个在 PulseAudio 模式下运行的 utaudio 实例,以便从 PulseAudio 服务器提供音频。
在此环境中,应用程序不使用 $AUDIODEV
将音频发送到 PulseAudio 声音服务器。$AUDIODEV
仅适用于需要打开音频设备文件的情况,例如 /dev/audio
或 /dev/dsp
。
这里提供了 Oracle Solaris 11 和 Oracle Linux 6 的音频输出的一些其他注意事项和限制。
使用 Oracle Solaris 11 时,根据需要自动开放 Oracle Solaris 10 SADA 音频接口以实现兼容性。系统针对每个会话启动一个附加的特定于 SADA 的 utaudio 进程。有关更多详细信息,请参见第 13.1.7 节 “音频输出故障排除(Oracle Solaris 10 和 Oracle Linux 5)”。
对于 Oracle Solaris 11,Adobe Flash Player 是使用 $AUDIODEV
接口的 SADA 应用程序。如果多个 SADA 应用程序共享相同的 $AUDIODEV
,则可能会发生设备锁定。要解决此问题,请针对每个 SADA 应用程序启动单独的 utaudio 命令。
对于 Oracle Solaris 11 Trusted Extensions,设备分配管理器中应显示两种音频设备,一种对应于 SADA 接口设备,而另一种对应于 PulseAudio。确保同时分配两种音频设备。
使用 Oracle 键盘音频键检查音量和静音按钮。
显示 Sun Ray 会话的音频设置:
$ utsettings
然后检验是否正确选择了音频输出,例如耳机或扬声器。
确保在桌面会话中音量未设为静音。
试一下插入到 Sun Ray Client 的音频输出或耳机端口的一组外部扬声器是否可用。如果可用,则 Sun Ray Client 的扬声器可能已损坏。
确保 pulseaudio
进程正在运行。如果用户会话没有启动该进程,则删除 $HOME/.pulse
目录并退出会话,然后重新启动会话。
确保存在通过 -p
选项运行的 utaudio
进程,以接受来自 PulseAudio 声音服务器的流。如果该进程不存在,则检查 /var/opt/SUNWut/log/messages
日志文件以查看是否有任何来自 pulseaudio 或 utaudio 命令的错误消息。
如果使用基于 GStreamer 的程序(例如 Totem 或 Rhythmbox)时音频不工作,则确保通过运行 gstreamer-properties 来将 GStreamer 配置为使用 PulseAudio。必须为音频输入和输出选择 PulseAudio 声音服务器设置。
对于 Oracle Linux 6,确保将 ALSA 配置为使用 PulseAudio。要验证配置,请确保 /etc/asound.conf
(服务器首选项)或 $HOME/.asoundrc
文件(用户首选项)包括以下内容:
pcm.pulse { type pulse } ctl.pulse { type pulse } pcm.!default { type pulse } ctl.!default { type pulse }
如果两个文件都存在,则 $HOME/.asoundrc
文件优先。
如果音频在 Oracle Linux 6 上的 OSS 应用程序中不工作,则确保将 $AUDIODEV 环境变量设置为 utaudio 的实例。对于 Oracle Linux 6,默认情况下不定义 $AUDIODEV
环境变量。下面是设置 $AUDIODEV
的示例:
$ export AUDIODEV=`/opt/SUNWut/bin/utaudio`
Oracle Linux 6 上的 OSS 应用程序也可以通过 OSS 包装 (padsp) 使用 PulseAudio:
$ padsp OSS_program