#!/bin/bash # # Init file for Globus RLS server # # chkconfig: - 75 25 # description: Globus RLS server # # processname: globus-rls-server # config: /etc/globus-rls-server.conf # pidfile: /var/run/globus-rls-server.pid ### BEGIN INIT INFO # Provides: globus-rls-server # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Should-Start: mysqld postgresql # Should-Stop: mysqld postgresql # Default-Stop: 0 1 2 3 4 5 6 # Short-Description: Globus RLS Server # Description: Globus Replica Location Service Server ### END INIT INFO # source function library . /etc/init.d/functions RETVAL=0 prog="globus-rls-server" # Some functions to make the below more readable GLOBUS_RLS_SERVER=/usr/sbin/globus-rls-server GLOBUS_RLS_ADMIN=/usr/sbin/globus-rls-admin PID_FILE=/var/run/globus-rls-server.pid [ -r /etc/sysconfig/globus-rls-server ] && . /etc/sysconfig/globus-rls-server port=`grep '^port' /etc/globus-rls-server.conf | sed 's/port\s*//'` port=${port:-39281} start() { echo -n $"Starting $prog: " $GLOBUS_RLS_SERVER && success || failure RETVAL=$? [ "$RETVAL" = 0 ] && touch /var/lock/subsys/globus-rls-server echo } stop() { echo -n $"Stopping $prog: " if [ -n "`pidfileofproc $GLOBUS_RLS_SERVER`" ] ; then $GLOBUS_RLS_ADMIN -q rls://localhost:$port && success || failure else failure fi RETVAL=$? [ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/globus-rls-server echo } restart() { stop sleep 3 start } case "$1" in start) start ;; stop) stop ;; restart | force-reload) restart ;; reload) ;; condrestart | try-restart) [ -e /var/lock/subsys/globus-rls-server ] && restart ;; status) status -p $PID_FILE $prog && $GLOBUS_RLS_ADMIN -S rls://localhost:$port RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|condrestart|status}" RETVAL=1 ;; esac exit $RETVAL