#!/bin/bash # # chkconfig: 2345 95 15 # description: Starts and stops the FreeNX service # processname: nxserver # Read the config file . $(PATH=$(cd $(dirname $0) && pwd):$PATH which nxloadconfig) -- SERVNAME=`basename $0` LOCKFILE=/var/lock/subsys/$SERVNAME OUTFORMAT=/etc/init.d/outformat [ -x $OUTFORMAT ] || OUTFORMAT=/etc/init.d/$SERVNAME.outformat if which tput >/dev/null && test -x $OUTFORMAT ; then . $OUTFORMAT else MOVE_TO_COL(){ :; } SETCOLOR_SUCCESS(){ :; } SETCOLOR_FAILURE(){ :; } SETCOLOR_WARNING(){ :; } SETCOLOR_NORMAL(){ :; } fi success() { MOVE_TO_COL echo -n '[ ' SETCOLOR_SUCCESS echo -n 'DONE' SETCOLOR_NORMAL echo ' ]' } failure() { MOVE_TO_COL echo -n '[' SETCOLOR_FAILURE echo -n 'FAILED' SETCOLOR_NORMAL echo ']' } passed() { MOVE_TO_COL echo -n '[' SETCOLOR_WARNING echo -n 'PASSED' SETCOLOR_NORMAL echo ']' } start() { echo -n $"Starting $SERVNAME service: " if [ -e $LOCKFILE ] ; then passed exit 1 fi [ ! -d "/tmp/.X11-unix" ] && mkdir -m1755 /tmp/.X11-unix/ $PATH_BIN/nxserver --cleanup > /dev/null 2>&1 $PATH_BIN/nxserver --start > /dev/null 2>&1 #status_cmd ret=`$PATH_BIN/nxserver --status | grep 'run' | wc -l` if [ $ret -eq 1 ] ; then touch $LOCKFILE success else failure fi } stop() { echo -n $"Stopping $SERVNAME service: " if [ -e $LOCKFILE ] ; then $PATH_BIN/nxserver --stop > /dev/null 2>&1 $PATH_BIN/nxserver --cleanup > /dev/null 2>&1 ret=`$PATH_BIN/nxserver --status | grep 'run' | wc -l` if [ $ret -eq 0 ] ; then rm -f $LOCKFILE success else failure fi else passed fi } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; condrestart) if [ -e $LOCKFILE ] ; then stop start fi ;; condstop) if [ -e $LOCKFILE ] ; then stop fi ;; status) $PATH_BIN/nxserver --status ;; setup) $PATH_BIN/nxsetup --install ;; check) $PATH_BIN/nxsetup --test ;; *) echo "Usage: $0 " ;; esac