Sun Microsystems, Inc.  Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-1001562.1
Update Date:2011-03-16
Keywords:

Solution Type  Problem Resolution Sure

Solution  1001562.1 :   How to permanently set the Sun Ray[TM] screen resolution  


Related Items
  • Sun Ray Hardware
  •  
  • Sun Ray Hardware
  •  
  • Sun Ray Software
  •  
  • Sun Ray Hardware
  •  
  • Sun Ray Hardware
  •  
  • Sun Ray Hardware
  •  
Related Categories
  • GCS>Sun Microsystems>Desktops>Desktop Virtualization>Sun Ray Hardware
  •  
  • GCS>Sun Microsystems>Desktops>Desktop Virtualization>Sun Ray Software
  •  

PreviouslyPublishedAs
202136


Symptoms
On a Sun Ray[TM] appliance, how can I set the default screen resolution to
a value which persists after logouts, hot desking, and powercycle events?


Resolution
On the SRSS 2.0 and higher, either utresadm or utxconfig can be used to define
persistent screen resolution settings.

On the SRSS 1.3 and earlier, only
utxconfig is available. Is is recommended that before you configure
persistent screen resolutions, that the Sun Ray server is configured, i.e.,
that utconfig has been run.

The Sun Ray 150 has a fixed physical resolution of 1024x768.
To change the physical resolution on a Sun Ray 170, you must have
the fix for 6230062 Sun Ray 170 should support multiple resolutions.
This fix is provided with the SRSS 3.1, with the SRSS 2.0 with patch 114880-09,
and with the SRSS 3.0 with patch 118979-01 (on Solaris[TM]/sparc[TM]), resp with patch 119836-01 (on Linux/x86).
The Tadpole Comet has a fixed physical resolution of 1400x1050.

How to use utresadm to define persistent screen resolution settings:

IMPORTANT NOTE: utresadm settings changes might become active
only after a restart of services, which will end all user sessions.
See RFE 4969150 for details.

  • As system administrator, set the desired resolution using /opt/SUNWut/sbin/utresadm. Only resolutions available through /opt/SUNWut/sbin/utresdef are allowed.
  • utresadm settings are active only when autosizing is enabled. Hence, you must enable autosizing, using "/opt/SUNWut/bin/utxconfig [-a] -s on [-t <token>]". The "-a" option changes settings for the default token. Without the "-a" option, settings for specific tokens can be changed.
  • Among conflicting settings, the more specific utresadm setting will prevail. I.e., any appliance specific utresadm setting overrules any utresadm settings made for the default token. The appliance specific setting can, in turn, be overruled for a specific token in combination with the same appliance by specifying the token in the "-t <token>" option rather than "-t default".
  • utresadm allows defining both screen resolution and refresh rate.

To set a default resolution for a specific appliance for all tokens,
use the "-t default" option:

 # /opt/SUNWut/sbin/utresadm -a -c default -t default <resolution>

would set the overall default resolution ("-c default").

 # /opt/SUNWut/sbin/utresadm -a -c IEEE802.080020f84a86 -t default
1280x1024@76

sets a default resolution of 1280x1024@76 for the appliance with MAC
address 080020f84a86, for all tokens which have auto sizing enabled.

A detailed example how to use utresadm:

See IMPORTANT NOTE at the beginning of this section.

 # /opt/SUNWut/sbin/utresadm -o
# 

(there is nothing specified thus far)

 # /opt/SUNWut/sbin/utresadm -a -c IEEE802.0003ba141958 -t default
1152x900@76

Then the user inserted a smartcard, and logged in. As this was a new
user session, the user got the new utresadm settings for the desktop
dimensions:

 % /opt/SUNWut/sbin/utresadm
IEEE802.0003ba141958  default                         --     1152x900@76

As autosizing is enabled, the utxconfig resolution does not apply here:

 % /opt/SUNWut/bin/utxconfig -l
RESOLUTION=1280x1024   <---- ignored because autosizing enabled
ENABLE_PSEUDOCOLOR_VISUAL=no
DEFAULT_PSEUDOCOLOR_VISUAL=no
ENABLE_AUTO_SIZING=yes <---- autosizing enabled
ENABLE_MULTISCREEN=yes
ENABLE_XINERAMA=no
SCREEN_GEOMETRY=1x1    <---- ignored because autosizing enabled
SCREEN_ORDER=0

Hence, the display is indeed running at the 1152x900@76 configured by
utresadm.

With all utresadm configurations, the appliance should also pick up the
resolution defined with utresadm. When a new session has been started,
both the Xsun and the framebuffer resolution initially will be identical
to the one set with utresadm. Especially, utresadm does not check whether
the monitor attached to the appliance supports the resolution configured
with utresadm. Thus, if you use utresadm to configure a screen resolution
for a Sun Ray 150 appliance which differs from the 150's fixed 1024x768
resolution, the user will get a black border resp. the paning effect.

To enter multiple utresadm configurations at once, use the "utresadm -i"
option. It reads from stdin, but you can use a pipe to use a file as input
into utresadm.

Example for utresadm -i:

 # /opt/SUNWut/sbin/utresadm -o > utresadm.out (create example data file)
 # cat utresadm.out
# Resolution export version=1 hostname=labhost
 # Resolution export started at 2003-06-18T13:00:0Z
cid=IEEE802.0003ba141958 token=default res=1152x900@76
cid=IEEE802.0003ba141958 token=MicroPayflex.5000f8ad00130100
res=1024x768@75
# Resolution export ended at 2003-06-18T13:00:0Z
 # /opt/SUNWut/sbin/utresadm -i < utresadm.out
cid=IEEE802.0003ba141958 token=default: Data already exists
cid=IEEE802.0003ba141958 token=MicroPayflex.5000f8ad00130100: Data already
exists

Here, both already exist, and thus are ignored. You can delete them

 # /opt/SUNWut/sbin/utresadm -d -c IEEE802.0003ba141958 -t
MicroPayflex.5000f8ad00130100
# /opt/SUNWut/sbin/utresadm -d -c IEEE802.0003ba141958 -t default
# /opt/SUNWut/sbin/utresadm -o
#

and then re-add them using utresadm -i

 # /opt/SUNWut/sbin/utresadm -i < utresadm.out
IEEE802.0003ba14195   default                         --     1152x900@76
IEEE802.0003ba141958  MicroPayflex.5000f8ad00130100   --     1024x768@75
# /opt/SUNWut/sbin/utresadm -o
# Resolution export version=1 hostname=labhost
# Resolution export started at 2003-06-18T13:02:0Z
cid=IEEE802.0003ba141958 token=default res=1152x900@76
cid=IEEE802.0003ba141958 token=MicroPayflex.5000f8ad00130100
res=1024x768@75
# Resolution export ended at 2003-06-18T13:02:0Z
# 

A non-prileged user cannot run utresadm -a/-i, but he can overrule
the settings for his own token using utxconfig.

How to use utxconfig to define persistent screen resolution settings:

- Once logged in, run

    % /opt/SUNWut/bin/utxconfig -s off -r <resolution>
 such as
    % /opt/SUNWut/bin/utxconfig -s off -r 1280x1024
Xconfig record added/changed.

This will disable autosizing for the current token, thus disabling utresadm resolution settings.

- Then log out and log in again, and confirm with "utxconfig -l":

 % /opt/SUNWut/bin/utxconfig -l
RESOLUTION=1280x1024
ENABLE_PSEUDOCOLOR_VISUAL=no
DEFAULT_PSEUDOCOLOR_VISUAL=no
ENABLE_AUTO_SIZING=no  <---- autosizing disabled, 1280x1024 is active
ENABLE_MULTISCREEN=no
ENABLE_XINERAMA=no
SCREEN_GEOMETRY=1x1
SCREEN_ORDER=0
  • The root user can use "utxconfig -a" to set global defaults, and can change settings for any token using the "-t <token>" option.
  • utxconfig can not change the refresh rate, and utxconfig settings without the "-a" option apply for a specific token. I.e., utxconfig settings for a smartcard token will apply regardless of the appliance at which the session is created.
  • When utxconfig settings are used, the Sun Ray appliance will still use DDC to check for resolutions supported by the monitor.

To delete the utxconfig settings again, use "utxconfig -e [-t <token>]".
Finally, "utxconfig -o" allows seeing the utxconfig configurations for all
tokens. Only resolutions where autosizing is disabled currently apply:

 # utxconfig -o
user.1055330985-7666,1280x1024,-1,no,no,yes,yes,no,1,1,0 <--- enabled
user.1055332426-6402,1280x1024,-1,no,no,no,yes,no,1,1,0  <--- disabled
MicroPayflex.00004acf65000100,1280x1024,-1,no,no,yes,yes,no,1,1,0.
^^^     <--- enabled

Here, only the 1280x1024 for user.1055332426-6402 applies. The utxconfig
resolutions set for user.1055330985-7666 and MicroPayflex.00004acf65000100
are ignored.

Special considerations on multihead displays:

The multihead implementation in the SRSS 3.1 and earlier does not allow
independent screen resolutions for multihead secondary screens. If
autosizing is enabled, the secondary will pick up the resolution of the
primary screen. If autosizing is disabled, and utxconfig is used to define
persistent screen resolutions, then

  • ENABLE_MULTISCREEN must be set to "yes"
  • the SCREEN_GEOMETRY must be set to the size of the multihead group (with the -R option)
    With a misconfiguration of the screen geometry, secondary screens will show a dark
    purple screen (SRSS 1.2, and SRSS 1.3), resp. a black screen (SRSS 2.0 and higher).
  • the numbering of the screen in SCREEN_ORDER begins with 0.
    SCREEN_ORDER=1,0 is a valid dual headed screen ordering.
    SCREEN_ORDER=1,2 is invalid.

Example correct multihead configuration:

 # /opt/SUNWut/bin/utxconfig -t MicroPayflex.5000f8b000130100 -m on -s off
-r 800x600 -x off -R 2x1 

(logout and login)

 % /opt/SUNWut/bin/utxconfig -l
RESOLUTION=800x600
ENABLE_PSEUDOCOLOR_VISUAL=no
DEFAULT_PSEUDOCOLOR_VISUAL=no
ENABLE_AUTO_SIZING=no  <--- autosizing disabled, thus RESOLUTION is active
ENABLE_MULTISCREEN=yes <--- multiscreen enabled
ENABLE_XINERAMA=no     <--- "utxconfig -x off" disables xinerama
SCREEN_GEOMETRY=2x1    <--- screen geometry is set to two columns, one row
SCREEN_ORDER=0         <--- optional

Error messages:

utxconfig is case sensitive. Example error:

 # /opt/SUNWut/bin/utxconfig -a -r 1024X768
utxconfig: invalid resolution specification
 utxconfig: Update failed.

"1024X768" is invalid because of the capital X, a lower case x is necessary.

utresdef requires that the resolution has been defined. Use
/opt/SUNWut/sbin/utresdef to check which resolutions are available.

 # /opt/SUNWut/sbin/utresadm -a -c default -t default 1024x768
res=1024x768: Object not found

1024x768@60, 1024x768@75, and 1024x768@85 are the built-in timings available to utresadm. 1024x768 is not valid.

Abbreviations:

SRSS: Sun Ray[TM] Server Software.

References:

utxconfig(1)
utresadm(1)

How to modify the screen resolution within GNOME Java Desktop.

Go to Launch -> Preferences -> Desktop Preferences -> Display -> Screen Resolution



Additional Information
On Sun Ray[TM], there are two independent screen resolutions, the
resolution used by the Xsun process, also called "virtual resolution",
resp. the "desktop dimensions", and the resolution used by the framebuffer
in the appliance, also called the "physical resolution".

To set persistent screen resolutions on Sun Ray[TM], the desktop dimensions must
be configured. The desktop dimensions are fixed for the duration of a
session, as the Xsun process cannot dynamically change the resolution it
uses.

Upon Sun Ray[TM] session startup, the desktop dimensions are computed as
follows:

1.) Check whether autosizing is enabled for the current token.

2.) If autosizing is disabled, the settings from utxconfig are used.
The settings from utxconfig also are used with the SRSS 1.1 and
the SRSS 1.0, which do not provide the autosizing feature.

3.) If autosizing is enabled, then with the SRSS 2.0 utresadm screen
resolution settings will be evaluated first. With the SRSS 1.2 and
the SRSS 1.3, and also with the SRSS 2.0 and higher if no applicable
utresadm settings are detected, the Sun Ray[TM] appliance will use a
DDC/EDID request to identify the monitor's supported resolutions. If the
DDC/EDID fails, then the system-wide fallback resolution will be used,
which is 1152x900 for the SRSS 1.x, and the VGA 640x480 for the
SRSS 2.0 and higher.



Product
Sun Ray Server Software 2.0
Sun Ray Server Software 1.3
Sun Ray Server Software 1.2
Sun Ray Server Software 3.1
Sun Ray Server Software 3.0
Sun Ray 1g Ultra-Thin Client
Sun Ray 100 Ultra-Thin Client
Sun Ray 150 Ultra-Thin Client
Sun Ray 1 Ultra-Thin Client
Sun Ray 170 Ultra-Thin Client

Internal Comments
List of things which are important to understand:



  • utresadm resolution settings are active only if autosizing is enabled for the current token.

  • utxconfig resolution settings are active only if autosizing is disabled for the current token.

  • 4969150 prevents utresadm resolution settings from becoming active without a services restart.

  • utxconfig -l and utresadm will print the settings as in the datastore, not the settings of the current session.

  • the "desktop dimensions" are persistent for the duration of a session, only the "physical resolution" can be changed on-the-fly.


Many users will try utresadm with autosizing disabled, or try

utxconfig with autosizing enabled. Or they will try utsettings/shift+props

which changes the physical resolution rather than the desktop

dimensions, and does not create persistent screen resolution settings.




Troubleshooting:


1.) Collect ut_gather, explorer does not collect the necessary information.


2.) Ask the customer what resolution settings they would like to have,

and which actual resolutions for which tokens are different to their

expectations. Also ask the customer whether they observed any error

messages when running utresadm and/or utxconfig.


3.) Check autosizing settings in utxconfig-o.out.

Example


 utxconfig -o output:

 pseudo.0003ba141958,1024x768,-1,no,no,yes,yes,yes,1,1,0
default.xconfig,1280x1024,-1,no,no,no,yes,no,1,1,0
Payflex.00002d0000111110,1024x768,-1,no,no,yes,yes,no,1,1,0

In this example output, autosizing is turned off for the default

token, and turned on for pseudo.0003ba141958 and Payflex.00002d0000111110.

Thus, for every session utxconfig resolution settings will be used, except

for "pseudo terminal" sessions at appliance 0003ba141958, and

for smartcard sessions on Payflex.00002d0000111110.

For pseudo.0003ba141958 and Payflex.00002d0000111110, the existing

1024x768 utxconfig resolution settings will be ignored, as autosizing

is disabled. For all other tokens, utresadm settings will be ignored,

and the 1280x1024 from the default utxconfig token will be used.


4.) For those tokens where utresadm settings are used, check the

actual resolution file against the rescache file. If

the actual resolution in the rescache file is different,

check whether the problem persists after a restart of

services (see 4969150). Note that a services restart ends all

Sun Ray sessions, and thus requires sceduling an outage.

In 2.0, the rescache is in /tmp/SUNWut/config/rescache.


Example:


 appliance 080020f08c33 has 800x600@75 default utresadm settings:

In utresadm -o output, this looks as follows:


 cid=IEEE802.080020f08c33 token=default res=800x600@75

 # ls /tmp/SUNWut/config/rescache/pseudo.080020f08c33 IEEE802.080020f08c33
# cat /tmp/SUNWut/config/rescache/pseudo.080020f08c33/IEEE802.080020f08c33
RESNAME=800x600@75

I also have overruled this default for smartcard

MicroPayflex.00004acf65000100. In utresadm -o output:


 cid=IEEE802.080020f08c33 token=MicroPayflex.00004acf65000100
res=1280x1024@76

The corresponding rescache file is in a separate directory.

If it looks like this


 # cat  /tmp/SUNWut/config/rescache/MicroPayflex.00004acf65000100/IEEE802.080020f08c33 RESNAME=800x600@75
#

then the smartcard session got the default utresadm resolution for

IEEE802.080020f08c33 despite the more specific utresadm settings.


If this was caused by 4969150, the utresadm resolution setting will become

active only after a services restart:


 # /opt/SUNWut/sbin/utrestart -c
Restarting servers... messages will be logged to
/var/opt/SUNWut/log/messages.

[one minute later, and MicroPayflex.00004acf65000100 still inserted at IEEE802.080020f08c33]


 # cat
/tmp/SUNWut/config/rescache/MicroPayflex.00004acf65000100/IEEE802.080020f08c33
RESNAME=1280x1024@76



Additional Information:


The additional tools such as utresdef are not fully implemented in

the SRSS 2.0. You need the SRSS 3.0 or higher to use utresdef.


There is an open RFE 4764050 utresadm should allow modifications rather than requiring delete/add against utresadm.


Sun Ray, SunRay, utresadm, utxconfig, utsettings, utset, resolution, screen resolution
Previously Published As
22076

Change History
Date: 2007-09-26
User Name: 91286
Action: Update Canceled
Comment: *** Restored Published Content *** Won't get this one reworked before the migration to
IBIS.
Version: 0

Attachments
This solution has no attachment
  Copyright © 2011 Sun Microsystems, Inc.  All rights reserved.
 Feedback