#! /bin/sh ### BEGIN INIT INFO # Provides: sems # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/stop SEMS Application Server ### END INIT INFO # read configuration from /etc/default/sems file if test -f /etc/default/sems ; then . /etc/default/sems fi PATH=/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/sems NAME=sems DESC=sems PARAMS="" if test "$SEMS_PIDFILE" ; then PARAMS="$PARAMS -P $SEMS_PIDFILE" fi if test "$SEMS_USER" ; then PARAMS="$PARAMS -u $SEMS_USER" fi if test "$SEMS_GROUP" ; then PARAMS="$PARAMS -g $SEMS_GROUP" fi if test "$SEMS_CFG_FILE" ; then PARAMS="$PARAMS -f $SEMS_CFG_FILE" CFGPARAMS="-f $SEMS_CFG_FILE" fi if test "$SEMS_CREATE_CORE" = "yes" ; then # directory for the core dump files [ -d $SEMS_COREDIR ] || mkdir $SEMS_COREDIR chmod 777 $SEMS_COREDIR echo "$SEMS_COREDIR/core.%e.sig%s.%p" > /proc/sys/kernel/core_pattern ulimit -c unlimited fi if ! test -f $DAEMON ; then echo "Error: cannot find $DAEMON" exit 0 fi # /var/run can be a tmpfs if [ ! -d $HOMEDIR ]; then mkdir -p $HOMEDIR chown $SEMS_USER:$SEMS_GROUP $HOMEDIR fi LD_LIBRARY_PATH=/usr/lib/sems export LD_LIBRARY_PATH set -e . /lib/lsb/init-functions case "$1" in start) echo "Starting $DESC: $NAME" start-stop-daemon --start --quiet --oknodo --pidfile $SEMS_PIDFILE \ --exec $DAEMON -- $PARAMS log_end_msg $? ;; stop) echo -n "Stopping $DESC: $NAME" start-stop-daemon --oknodo --stop --quiet --pidfile $SEMS_PIDFILE \ --exec $DAEMON log_end_msg $? ;; #reload) # # If the daemon can reload its config files on the fly # for example by sending it SIGHUP, do it here. # # If the daemon responds to changes in its config file # directly anyway, make this a do-nothing entry. # # echo "Reloading $DESC configuration files." # start-stop-daemon --stop --signal 1 --quiet --pidfile \ # $SEMS_PIDFILE --exec $DAEMON #;; restart|force-reload) # # If the "reload" option is implemented, move the "force-reload" # option to the "reload" entry above. If not, "force-reload" is # just the same as "restart". # # Check if configuration is valid before restarting the server #(($DAEMON $CFGPARAMS -c 2>&1) | grep "config file ok, exiting") > /dev/null #if [ $? -ne 0 ]; then # ($DAEMON $CFGPARAMS -c 2>&1) # echo -e "\nThere are errors in the configuration file. Please fix them first" # echo -e "\n$out\n" # exit 0 #fi echo "Restarting $DESC: $NAME" start-stop-daemon --oknodo --stop --quiet --pidfile \ $SEMS_PIDFILE --exec $DAEMON sleep 5 start-stop-daemon --start --quiet --pidfile \ $SEMS_PIDFILE --exec $DAEMON -- $PARAMS echo "." ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; *) N=/etc/init.d/$NAME # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 exit 1 ;; esac exit 0