#!/bin/bash # # Sample startup script for FreeNX server # # Coypright (c) 2007 by Fabian Franz <freenx@fabian-franz.de>. # # License: GNU GPL, version 2 # # SVN: $Id: freenx-server-r104-fixes.patch,v 1.2 2009/11/23 11:59:50 athimm Exp $ # # Modified to be chkconfig compatible by Johnny Hughes <johnny@centos.org> # # chkconfig: 2345 91 35 # description: Creates /tmp/.X11-unix/ if required and cleans up dead \ # NX sessions. # Read the config file . /usr/libexec/nx/nxloadconfig -- # Source function library. . /etc/init.d/functions prog="freenx-server" start() { runuser -s /bin/bash - nx -c "$PATH_BIN/nxserver --cleanup" > /dev/null 2>&1 < /dev/null if [ ! -d "/tmp/.X11-unix" ]; then mkdir -m1777 /tmp/.X11-unix/ [ ! -x /sbin/restorecon ] || /sbin/restorecon /tmp/.X11-unix ret=$? else X11_owner=`/bin/ls -ald /tmp/.X11-unix | /bin/gawk {'print $3'}` if [ "$X11_owner" != "root" ]; then /bin/chown root /tmp/.X11-unix fi ret=0 fi if [ $ret -eq 0 ]; then touch /var/lock/subsys/freenx-server action $"Starting $prog: " /bin/true else action $"Starting $prog: " /bin/false fi echo return $ret } stop() { runuser -s /bin/bash - nx -c "$PATH_BIN/nxserver --cleanup" > /dev/null 2>&1 < /dev/null if [ -e "/var/lock/subsys/freenx-server" ]; then rm -f /var/lock/subsys/freenx-server ret=$? else ret=0 fi if [ $ret -eq 0 ]; then action $"Stopping $prog: " /bin/true else action $"Stopping $prog: " /bin/false fi echo return $ret } restart() { echo $"Restarting $prog:" stop start } case "$1" in start) start ;; stop) stop ;; restart) restart ;; status) if [ -e "/var/lock/subsys/freenx-server" ]; then echo $"$prog is running" else echo $"$prog is stopped" fi ;; *) echo $"Usage: $prog {start|stop|restart|status}" exit 1 esac exit $?