sunray-faq - Interesting tidbits for SunRay users


SunRay is a graphical terminal from sun. This document lists interesting things we found while using these beasts.

This Information refers to SunRay 1.2 and may not be accurate for later or earlier releases.


Magic Keystrokes

Ethernet Number
Press the three gray keys in the top right-hand corner of the keyboard, next to the crescent moon to see the last few digits of the SunRays Ethernet number.

Kill XSession
[Ctrl]+[Alt]+[Backspace] pressed twice kills the current XSession.

Reboot the SunRay
[Ctrl]+[cresent moon (top right corner)] Power Cycles the SunRay.

Get Information about all SunRays Connected

 echo status | mconnect localhost -p 7010

Gives a list of devices and lots of information about each device. Note, this works remote as well.

Stop Autologout

When you use a Token card to be able to move your session between different SunRays, you may have noticed that your session can suddenly disappear while the token is not inserted in any SunRay. The reason for this is, that as soon as you pull the token from the SunRay utaction starts a 900 second wait period and then kills your session. This default can be changed to some other value by editing the /usr/dt/config/Xsetup file and raise the 900 seconds value to some more appropriate value.

Information about the current SunRay


 xprop -root |grep "_SUN"

you can get some interesting information ... for example the IP number of _your current SunRay in the SUN_SUNRAY_CONN_INFO property.

Setting Screen Resolution for non DDC Displays

If you attach a non DDC enabled display to a SunRay, it assumes that the display wants a resolution of 1024x768. You can then use utsettings to change to resolution. If your screen can not display a resolution of 1024x768 you have a problem. Using the following procedure you can change the default resolution for a SunRay.

Edit the /var/dhcp/dhcptab file and add the following symbol:

 DispRes s       Vendor=SUNW.NewT.SUNW,32,NUMBER,4,1

You can now use DispRes=X in all the macro definitions of your dhcptab file. X is a value between 2 and 15 depending on the resolution you desire.

  X  Width Height  Hz
  2   640 x  480 @ 85
  3   800 x  600 @ 85
  4  1024 x  768 @ 60
  5  1024 x  768 @ 75
  6  1152 x  900 @ 66
  7  1152 x  900 @ 76
  8  1280 x 1024 @ 60
  9  1280 x 1024 @ 66
 10  1280 x 1024 @ 75
 11  1280 x 1024 @ 76
 12  1280 x 1024 @ 85
 13  1024 x  768 @ 85
 14   640 x  480 @ 60
 15   800 x  600 @ 60

If you wanted to change the default for all SunRays to 1280x1024@75 just add :DispRes=10: to the SunRay-I macro in your /var/dhcp/dhcptab. I is the name of the interface where the Sunrays are attached.

You can also add macros targeted at specific SunRays by using their ethernet address as macro name:

 01080020F95B1A  m       :DispRes=10:

Note the 01 before the actual ethernet address.

Reviving a 'dead lizard' SunRay

Sometimes it is not possible to revive a SunRay even by pressing [ctrl]+[alt]+[Back Space]. The symptom is that only the green lizard shows on the screen of the SunRay device. Sun suggests to run

 /opt/SUNWut/sbin/utpolicy  -i clear

this has the unfortunate effect of killing off all SunRay sessions as it goes and if only one SunRay is to be revived this is a bit much. We found that the following procedure helps as well:

  1. Determine the ethernet address of the SunRay either by pressing the three grey keys next to the crescent moon key in the top right hand corner of the SunRay keyboard or by reading it off the label on the back of the SunRay device.

  2. Run the following script
     cd /tmp/SUNWut || exit 1
     . `find . -name "pseudo*$target"'`
     [ x$DISPLAY = x ] && exit 1
     find . -name $DISPLAY -o -name "*${target}" | xargs rm -rf
     grep -v "^:$DISPLAY" config/xconfig/Xservers > Xservers.clean
     mv Xservers.clean config/xconfig/Xservers
     grep -v _$DISPLAY.environment config/xconfig/Xconfig Xconfig.clean
     mv Xconfig.clean config/xconfig/Xconfig

    where f8be86 stands for the Ethernet address you determined in step 1.

  3. Reboot the SunRay device by pressing [ctrl]+[alt]+[crescent moon]

More than 128 Windows per session

If you are running SunRays in a multi head configuration with virtual desktops you may have encountered the situation that the XServer refuses to create new windows. This limit can be raised by starting the Xsun process with the option

 -clients 1024

this option has to show up in the /etc/dt/config/Xservers config line of the SunRay where this feature should be enabled. This file is managed by the script /opt/SUNWut/lib/utdtsession. Edit this script and replace the line

 xsdesc=":%d SunRay local@none $SUNWUTLIB/utxsun :%d -nobanner"


 xsdesc=":%d SunRay local@none $SUNWUTLIB/utxsun :%d -nobanner -clients 1024"

The utxsun server seems to be able to deal with most options accepted by Xsun. Check the Xsun manpage for inspiration. Now, all new entries in Xservers will have the added option. For existing entries in /etc/dt/config/Xservers use your favorite editor.

Virtual Screen and Programs 'disappear'

When programms 'disappear' then it is very possible that you have turned on the multiscreen option and you changed by accident the screen, having only one screen. Another thing that is 'painful' is to work with a virtual screen. To set things like that on the sunray you are working use the following command.

 /opt/SUNWut/bin/utxconfig -r 1280x1024 -s on -m off

This sets the Autosize on (-s on) i.e. disables virtual screen. (-m off) disables multiscreen. To see all options use:



Tobias Oetiker <>


 2001-06-06 to Initial Version
 2001-07-29 to Added Resolution DHCP Info
 2001-09-25 to Added RayClean info
 2001-09-25 to Added utdtsession -clients info
 2001-11-09 aw added utxconfig