12.1. 多监视器

12.1.1. 如何使用最佳设置来设置 Sun Ray Client 的多监视器配置
12.1.2. 如何使用定制设置来设置 Sun Ray Client 的多监视器配置

本部分介绍了针对带有双视频连接器的 Sun Ray 2FS Client 和 Sun Ray 3 Plus Client 的多监视器支持。图 12.1 “多监视器示例”展示了使用多监视器功能和 Windows 连接器的 Sun Ray 3 Plus Client。

图 12.1. 多监视器示例

一幅展示 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 配置造成负面影响。

12.1.1. 如何使用最佳设置来设置 Sun Ray Client 的多监视器配置

下面的命令使用 xrandr 提供的最佳设置来设置 Sun Ray Client 的多监视器配置。如果启用了动态会话大小调整,则不需要执行此命令。

/opt/SUNWut/bin/utscreenresize -s all

12.1.2. 如何使用定制设置来设置 Sun Ray Client 的多监视器配置

有时,您可能要为 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。