SRSS 4 09/07 on Debian/unstable

From Sun Ray User Group Wiki

Jump to: navigation, search

NOTE: Our suggestions is to setup the /etc/apt/sources.list to something like:

deb http://ftp.dk.debian.org/debian/ unstable main
deb-src http://ftp.dk.debian.org/debian/ unstable main
deb http://ftp.de.debian.org/debian sid main contrib
deb http://ftp.de.debian.org/debian etch main non-free
deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib
(Replace with relevant mirrors.....)
  • apt-get update
  • apt-get install java-package sun-java5-jdk alien

This fixes the problem with config of tomcat-5.5

NOTE: On Ubuntu either use sudo for every command, or give root a password ("sudo passwd root") and then use "su" to operate as root.

  • Install some necessary packages:
apt-get install libldap2 libldap-2.3-0 ldap-utils dhcp3-server nscd gawk iputils-ping pdksh unzip alien \
liburi-perl libgdbm3 libx11-6 libfreetype6 libsasl2-2 libxt6 zlib1g gdm devscripts xkb-data-legacy \
apache2 tomcat5.5 libapache2-mod-jk atftpd
  • Ubuntu 8.04 Install some necessary packages (libldap2 libldap-2.3-0 no longer available):
apt-get install slapd libldap-2.4-2 ldap-utils dhcp3-server nscd gawk iputils-ping pdksh unzip alien \
liburi-perl libgdbm3 libx11-6 libfreetype6 libsasl2-2 libxt6 zlib1g gdm devscripts xkb-data-legacy \
apache2 tomcat5.5 libapache2-mod-jk atftpd
  • If you want to use the Web administration tool, configure an apache/tomcat server:
cp /usr/share/doc/libapache2-mod-jk/httpd_example_apache2.conf /etc/apache2/conf.d/tomcat.conf 

Enable start of apache2 in /etc/default/apache2 and start it:

/etc/init.d/apache2 start 

When later utconfig asks for the "Apache Tomcat installation directory", answer /usr/share/tomcat5.5.

  • Unpack SRSS into some temporary directory:
unzip srss_4.0_linux.zip
  • Convert to deb packages:
find . -name *.rpm | xargs alien -d
[Ubuntu 8.04] sudo find . -name *.rpm | xargs sudo alien -d
  • As /usr/X11R6/bin is deprecated in Debian, it should not be included as a directory in the sunwutu-package. To rebuild the package with the content from /usr/X11R6/bin moved to /usr/bin execute:
SUNWUTU="`echo sunwutu_*`"; echo 'mv usr/X11R6/bin usr/; rmdir usr/X11R6' | deb-reversion -k bash "${SUNWUTU}" move Xnewt to /usr/bin && rm "${SUNWUTU}"

Is this possible with sudo?

  • Install all resulting sunw*-packages:
dpkg -i sunw*deb
  • Install Java for SRSS:
cd /etc/opt/SUNWut/; 
/path/to/srss_4.0/Supplemental/Java_Runtime_Environment/Linux/jre-1_5_0_11-linux-i586.bin;  
ln -s jre1.5.0_11 jre
cd /opt 
patch -p0 < /path/to/Patch-SUNWut.txt
patch -p0 < /path/to/Patch-SUNWutref.txt
patch -p0 < /path/to/Patch-SUNWkio.txt


chmod 755 /etc/init.d/zsunray-init.sh && update-rc.d zsunray-init.sh defaults 99 01
chmod 755 /etc/init.d/zsunray-init && update-rc.d zsunray-init defaults 99 01
/bin/sh Xkbinstall.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
[Ubuntu 8.04] first need to create 2 symlinks
 cd /usr/lib; ln -s libldap-2.4.so.2 libldap-2.3.so.0;ln -s liblber-2.4.so.2 liblber-2.3.so.0
  • Some more odds and ends:
echo "DISTRIB_ID=Debian" > /etc/lsb-release 
ln -s /etc/X11/rgb.txt /usr/lib/X11/rgb.txt 
ln -s /usr/share/X11/XKeysymDB /usr/lib/X11/XKeysymDB
mkdir /var/dt; 
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 documentation for possible options.
  • 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";
  • Kernel modules for audio and usb support:

The modules do not work correctly on "newer" 2.6 kernels (> 2.6.10 for 64 bit mode, > 2.6.16 for USB storage). To fix this, apply Media:Patch-modules-SRSS4-0907.txt patch:

 cd /usr/src; patch -p0 < Patch-modules-SRSS4-0907.txt
  • Install kernel header files:
apt-get install linux-headers-`uname -r`
  • Then compile and install the modules:
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

If compilation fails (which is the case on at least Ubuntu Hardy), apply the patch Media:Patch-modules-SRSS4-0907-phase2.txt (with the above patch applied), then rerun the above commands.

  • To get the SunRay variables (for example $SUN_SUNRAY_TOKEN) set upon login, put Media:10SUNWut.sh into /etc/X11/Xsession.d/ On Debian/Ubuntu this file must be renamed to 10SUNWut, otherwise the SunRay session will not be configured correctly!
  • An /etc/gdm/gdm.conf for SunRays could look like this one: Media:gdm.conf.txt
  • [Ubuntu 8.04] try Media:Ubuntu-8.04-gdm.conf.txt as a starting point for /etc/gdm/gdm.conf for SunRays (all changes from default marked with ##dw)
  • 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

  • If your clients stall on connection with status code 26 when everything above is done, you will probably need to create the following symlink (since utxsun looks for fonts in the wrong directory):
mkdir -p /usr/X11R6/lib/X11/
ln -s /usr/share/fonts/X11 /usr/X11R6/lib/X11/fonts

This will only need to be done once, but your clients might (seem to) stall with status code 26 after restarting the SRSS or GDM.

  • 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.

  • You can activate the XKB extension of the Sun Ray X server
/opt/SUNWut/bin/utxconfig -a -k on
  • When the SunRays do not enter power-saving mode, put the following in a new file called /etc/X11/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
  • Some other useful Gnome configuration options are collected in this Media:gconf.sh shell script.
  • Configure sound support by installing the Enlightenment sound daemon, esd
apt-get install esound

and make sure sure it is started by patching session setup script with this patch Media:Patch-0100.SUNWut.txt

cd /etc/X11/xinit/xinitrc.d
patch -p0 < /path/to/Patch-0100.SUNWut.txt
  • There are some "bashisms" in /etc/X11/xinit/xinitrc.d/0100.SUNWut, which prevents it from loading correctly if you're using another shell than bash as /bin/sh (Ubuntu edgy and above uses dash (Debian Almquist Shell) by default, for example). To fix this, use the patch Media:Patch-0100.SUNWut-bashisms.txt:
cd /etc/X11/xinit/xinitrc.d
patch -p0 < /path/to/Patch-0100.SUNWut-bashisms.txt

Also, using this patch on Ubuntu Hardy, the above patch for esound doesn't seem to be needed! (In fact, esound doesn't seem to work at all on the installation this patch came from...)

  • Getting Flash with sound on a Sun Ray: See [1]. (If that doesn't work, [2] might.)
  • To get token self registering (the -s flag to utpolicy) working, you will need to edit /etc/pam.d/utselfreg to contain the following:
# BEGIN: added to utselfreg by SunRay Server Software -- utselfreg
auth required pam_unix.so

(By default it adresses pam_unix2.so, which doesn't exist.)

Personal tools