本部分介绍了针对带有双视频连接器的 Sun Ray 2FS Client 和 Sun Ray 3 Plus Client 的多监视器支持。图 12.1 “多监视器示例”展示了使用多监视器功能和 Windows 连接器的 Sun Ray 3 Plus Client。
Sun Ray Client 的多监视器支持由 X Resize、Rotate 和 Reflect (RandR) 1.2 扩展共同提供,它提供了将多台监视器用作一个屏幕的方法。其功能包括:
配置更改可动态应用到会话。
应用程序窗口可感知监视器边界,从而避免位置问题。
无尺寸限制。监视器分辨率更高或更低的其他客户端也支持漫游办公。
默认 Xserver Xnewt 提供 RandR 1.2 支持,Xnewt 会随 Sun Ray Software 一起自动安装并配置。Sun Ray Client 会话启动时,除非系统已使用 utxconfig -r 命令设置 DIMENSIONS 参数,否则其会自动应用最佳的多监视器配置。在这种情况下,utxconfig 值会用于确定屏幕大小。
会话的多监视器配置在漫游办公后会保留,这意味着在具有不同监视器配置的客户端之间漫游办公可能会产生不可接受的结果。动态会话大小调整功能可以解决此问题,它自动根据新的屏幕配置重新配置会话的显示。有关详细信息,请参见第 13.1.2 节 “动态会话大小调整”。
如果未启用动态会话大小调整,则可以通过两种方式在漫游办公后对新显示配置进行更新,一种是自动使用最佳设置,另一种是手动配置定制设置。有关详细信息,请参见第 12.1.1 节 “如何使用最佳设置来设置 Sun Ray Client 的多监视器配置”和第 12.1.2 节 “如何使用定制设置来设置 Sun Ray Client 的多监视器配置”。
不得在 Oracle Solaris 或 Oracle Linux 上使用 gnome-display-properties GUI 监视器配置工具。使用该工具可能会对客户端的 RandR 1.2 配置造成负面影响。
下面的命令使用 xrandr 提供的最佳设置来设置 Sun Ray Client 的多监视器配置。如果启用了动态会话大小调整,则不需要执行此命令。
/opt/SUNWut/bin/utscreenresize -s all
有时,您可能要为 Sun Ray Client 创建特定多监视器配置。本示例展示了如何使用 xrandr 命令来查看和设置特定多监视器配置。有关更多详细信息,请参阅 xrandr
手册页。如果启用了动态会话大小调整,则此过程无效。
Sun Ray Software 为 Oracle Linux 提供了 xrandr 命令的更新版本,在安装期间它会安装在 /opt/SUNWut/bin
目录中。/opt/SUNWut/bin/xrandr 命令提供 Sun Ray Software 环境所需的功能。
发出不带任何选项的 xrandr 命令可显示客户端当前的多监视器配置。例如,以下是在某个客户端上创建的会话的 xrandr 输出,该客户端带有一个显示分辨率为 1280x1024 的监视器:
(use /opt/SUNWut/bin/xrandr on Oracle Linux)
% xrandr
Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 10240 x 10240
DVI1 connected 1280x1024+0+0 (normal left inverted right) 361mm x 288mm
1280x1024 59.9*+ 74.9 65.9
1152x900 65.8
1024x768 74.9 69.8 59.9
800x600 59.9
640x480 59.4
在该输出中,"Screen"(屏幕)行提供了当前的整体屏幕分辨率 (1280x1024) 及可用的最高分辨率 (10240x10240)。名为 DVI1 的单个输出表明有一个分辨率为 1280x1024 的监视器已连接到客户端的 DVI 端口(或双 DVI 客户端的第一个 DVI 端口)。所有可用于此输出的分辨率都已列出。当前模式以 "*" 表示,最佳模式以 "+" 表示。
对双监视器客户端进行漫游办公后,客户端的 "Screen"(屏幕)配置不会更改,但 RandR 信息会进行更新,以反映最佳模式。例如,对监视器分辨率分别为 1600x1200 和 1920x1200 的客户端进行漫游办公将显示以下 xrandr 输出:
(use /opt/SUNWut/bin/xrandr on Oracle Linux)
% xrandr
Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 10240 x 10240
DVI1 connected 1280x1024+0+0 (normal left inverted right) 451mm x 338mm
1600x1200 59.9 +
1280x1024 74.9* 65.9 59.9
1152x900 75.8 75.0 65.8
1024x768 74.9 59.9
800x600 59.9
640x480 59.4
DVI2 connected (normal left inverted right)
1920x1200 59.9 +
1600x1200 59.9
1280x1024 74.9 65.9 59.9
1152x900 75.8 75.0 65.8
1024x768 74.9 59.9
800x600 59.9
640x480 59.4
此处列出了该新客户端的两个输出:DVI1 和 DVI2。虽然 DVI2 的状态为 "connected"(已连接),但其并未配置当前模式。尽管两个输出的最佳模式均以 "+" 表示,但 DVI1 的当前模式仍为 1280x1024。
针对 DVI1 和 DVI2 为此屏幕重新配置最佳模式的最佳方法是使用在上一部分中所述的 utscreenresize 命令。然而,如果要为每个监视器选择特定分辨率,则需要使用 xrandr 命令的 --output
选项。例如,如果您希望两个监视器都使用 1600x1200,则可以发出以下 xrandr 命令:
(use /opt/SUNWut/bin/xrandr on Oracle Linux)
% xrandr --output DVI1 --mode 1600x1200 --output DVI2 --mode 1600x1200 --right-of DVI1
下面是新的多监视器配置,其中 DVI1 和 DVI2 的分辨率都是 1600x1200,并且 DVI2 在屏幕上的起点为 1600,0:
(use /opt/SUNWut/bin/xrandr on Oracle Linux)
% xrandr
Screen 0: minimum 640 x 480, current 3200 x 1200, maximum 10240 x 10240
DVI1 connected 1600x1200+0+0 (normal left inverted right) 451mm x 338mm
1600x1200 59.9*+
1280x1024 74.9 65.9 59.9
1152x900 75.8 75.0 65.8
1024x768 74.9 59.9
800x600 59.9
640x480 59.4
DVI2 connected 1600x1200+0+0 (normal left inverted right) 519mm x 324mm
1920x1200 59.9 +
1600x1200 59.9*
1280x1024 74.9 65.9 59.9
1152x900 75.8 75.0 65.8
1024x768 74.9 59.9
800x600 59.9
640x480 59.4
请注意,系统仍将 1920x1200 标记为 DVI2 的最佳分辨率,但是它当前使用 1600x1200。