SRSS 4.1 Beta on Debian/unstable

From Sun Ray User Group Wiki

Jump to: navigation, search

Note1: This version of SRSS now includes 64bit versions of the PAM modules. So it should also run on a Linux installation with 64bit userland. I didn't test this, we use 64bit kernel + 32bit userland.

Note 2: All commands should be executed as root. Ubuntu users can use "sudo -i" to get a root prompt.

  • Install some necessary packages:
apt-get install alien atftpd dhcp3-server gawk gdm iputils-ping ldap-utils libgdbm3 \
libldap-2.4-2 module-assistant pdksh tomcat5.5 sun-java6-jre unzip  xkb-data
  • Unpack SRSS into some temporary directory:
unzip srss_4.1_linux.zip
  • Convert the 32bit packages to deb packages:
find . -name SUNW*i386.rpm | xargs alien -d
  • Install all resulting sunw*-packages:
dpkg -i sunw*deb
  • Install Java for SRSS:
ln -s /usr/lib/jvm/java-6-sun/jre /etc/opt/SUNWut
cd /opt 
patch -p0 < /path/to/Patch-SUNWut41b.txt
patch -p0 < /path/to/Patch-SUNWutref.txt
patch -p0 < /path/to/Patch-SUNWkio.txt
chmod 755 /etc/init.d/zsunray-init && update-rc.d zsunray-init defaults 99 01
/bin/sh Xkbinstall41b.sh
  • If you have not already configured the DHCP-server on your machine for other clients, you should empty the current config, so the Sun Ray Server Software adds its entries to a clean config and not the debian example one:
mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.sample; touch /etc/dhcp3/dhcpd.conf 

If you have already configured the dhcp-server, make a backup-copy of your old config, just in case.

  • Create some library compatibility symlinks:
/opt/SUNWut/lib/utctl.d/features/utcompatlinksctl enable; ldconfig
  • Some more odds and ends:
echo "DISTRIB_ID=Debian" > /etc/lsb-release 
mkdir /var/dt
sed -i -e 's/\\\$PLATFORM/i686/'  /etc/opt/SUNWut/xinitrc.d/0100.SUNWut
sed -i -e 's/\$PLATFORM/i686/'    /etc/pam.d/gdm


ln -s /opt/SUNWut/lib/libutdev.so.1 /usr/lib;  ldconfig
  • You can now configure the server with /opt/SUNWut/sbin/utconfig and /opt/SUNWut/sbin/utadm, see the SRSS documentation for possible options.

When you want to use the SRSS Web administration tool and utconfig asks for the "Apache Tomcat installation directory", answer /usr/share/tomcat5.5.

  • For dhcp to work, the utadm script should have added some lines to your /etc/dhcp3/dhcpd.conf and restarted the dhcp-server. Example:
include "/etc/opt/SUNWut/net/dhcp/SunRay-options";
include "/etc/opt/SUNWut/net/dhcp/SunRay-interface-eth2";
  • Use Debian's module-assistant to prepare the system for kernel module builds:
m-a -t prepare
sed -i -e 's/CFLAGS/EXTRA_CFLAGS/' /usr/src/SUNWut/utadem/Makefile
sed -i -e 's/CFLAGS/EXTRA_CFLAGS/' /usr/src/SUNWut/utio/Makefile
sed -i -e 's/CFLAGS/EXTRA_CFLAGS/' /usr/src/SUNWut/utdisk/Makefile
sed -i -e 's/ioctl32.h/ioctl.h/' /usr/src/SUNWut/utadem/utadem.h
sed -i -e 's/ioctl32.h/ioctl.h/' /usr/src/SUNWut/utio/utio.h
sed -i -e 's/ioctl32.h/ioctl.h/' /usr/src/SUNWut/utdisk/utdiskctl.h
sed -i -e 's/if __W.*/ifdef CONFIG_64BIT/' /usr/src/SUNWut/utdisk/utdiskctl.h
sed -i -e 's/error __W/warning __W/' /usr/src/SUNWut/utdisk/utdiskctl.h
sed -i -e 's/\(bio_endio(.*, \).*, /\1/' /usr/src/SUNWut/utdisk/utdisk.c
sed -i -e 's/\(bio_endio(.*, \).*, /\1/' /usr/src/SUNWut/utdisk/utdiskctl.c
make -C /usr/src/SUNWut/utadem clean default install
make -C /usr/src/SUNWut/utio  clean default install
make -C /usr/src/SUNWut/utdisk clean default install
depmod -a
  • To get the SunRay variables (for example $SUN_SUNRAY_TOKEN) set upon login, put Media:10SUNWut.41b.sh into /etc/X11/Xsession.d/10SUNWut (Without the .sh suffix!)
  • Remember: After (re-)starting GDM, you also need to restart the SunRay server software:
/etc/init.d/zsunray-init stop; /etc/init.d/zsunray-init start
  • You are now ready to start the Sun Ray Server Software with: /etc/init.d/zsunray-init start

Some odds and ends

  • Debian man should find all the SRSS manpages: add the lines
MANDATORY_MANPATH               /opt/SUNWut/share/man
MANDATORY_MANPATH               /opt/SUNWuttsc/share/man
MANDATORY_MANPATH               /opt/SUNWkio/share/man

to /etc/manpath.config.

  • Activate the XKB extension of the Sun Ray X server
/opt/SUNWut/bin/utxconfig -a -k on
  • If you feel that the Alt and Meta keys should be exchanged, but the following in a new file called /etc/X11/Xsession.d/53xmodmap:
/usr/bin/xmodmap -e "clear Mod1" \
                 -e "clear Mod4" \
                 -e "add Mod1 = Alt_L" \
                 -e "add Mod4 = Meta_L" \
                 -e "add Mod4 = Meta_R"
  • When the SunRays do not enter power-saving mode, put the following in a new file called /etc/opt/SUNWut/gdm/SunRayInit/helpers/xset and make it executable:
#!/bin/sh
/usr/bin/X11/xset s 600 0
  • Screen savers waste not only CPU cycles but also network bandwith in a SunRay environment. Install the gnome-screensaver package and deinstall xscreensaver. Then make a blank screen the mandatory screen saver mode under Gnome by
gconftool-2 --direct  --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /apps/gnome-screensaver/mode blank-only


Installation of the Sun Ray Connector for Windows

unzip srwc_2.1_linux.zip
cd srwc_2.1
find . -name *.rpm | xargs alien -d
dpkg -i sunw*.deb
/opt/SUNWuttsc/sbin/uttscadm -c

When the last command asks for the location of libcrypto.so.0.9.7, answer /usr/lib/libcrypto.so.0.9.8

Bugs and workarounds

  • Bug: utadm generates an invalid /etc/dhcp3/dhcpd.conf file. One of the necessary #include ... lines is missing. Workaround: add the line by hand (see above for an example)
  • Bug: The "<>|" key is not working on German Sun type 7 keyboards with XKB extension enabled. Workaround: add the line
 key <LSGT> { [ less, greater, bar, bar ] }; 

to the basic section of the file /opt/SUNWut/lib/xkb/symbols/de.

  • Bug: This version of SRSS added a new feature to hotdesking. From the release notes: "Remote Hotdesk Authentication (RHA) is a new security policy feature, turned on by default. Before connecting to a pre-existing session, the Authentication Manager now asks the Session Manager to create a temporary new session for authentication of the user." Under Debian, this authentication session does not start and the DTU oscillates between 14D and 26D error states. Workaround: use utpolicy -D to revert to the old behaviour:
$ utpolicy
# Current Policy:
 -a -g -z both
$ utpolicy -D -a -g -z both; utrestart
Personal tools