#! /bin/sh # # skeleton example file to build /etc/init.d/ scripts. # This file should be used to construct scripts for /etc/init.d. # # Written by Miquel van Smoorenburg . # Modified for Debian GNU/Linux # by Ian Murdock . # # Version: @(#)skeleton 1.8 03-Mar-1998 miquels@cistron.nl # # adapted for ser by Andrei Pelinescu-Onciul # $Id$ # read configuration from /etc/default/ser file if test -f /etc/default/ser ; then . /etc/default/ser fi PATH=/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/ser NAME=ser DESC=ser PARAMS="" if test "$SER_PIDFILE" ; then PARAMS="$PARAMS -P $SER_PIDFILE" fi if test "$SER_USER" ; then PARAMS="$PARAMS -u $SER_USER" fi if test "$SER_GROUP" ; then PARAMS="$PARAMS -g $SER_GROUP" fi if test "$SER_CFG_FILE" ; then PARAMS="$PARAMS -f $SER_CFG_FILE" CFGPARAMS="-f $SER_CFG_FILE" fi if test "$SER_WORKDIR" ; then PARAMS="$PARAMS -w $SER_WORKDIR" # try to create the working dir mkdir -p $SER_WORKDIR || echo "Warning: error creating ser working dir $SER_WORKDIR" fi if test "$SER_MEMORY" ; then PARAMS="$PARAMS -m $SER_MEMORY" fi if test "$SER_KERNEL_CORE_PID" = "true" ; then # enable using pid for cores echo 1 > /proc/sys/kernel/core_uses_pid || echo "Warning: error when enabling /proc/sys/kernel/core_uses_pid" fi if ! test -f $DAEMON ; then echo "Error: cannot find $DAEMON" exit 0 fi LD_LIBRARY_PATH=/usr/lib/ser export LD_LIBRARY_PATH set -e case "$1" in start) echo -n "Starting $DESC: $NAME" start-stop-daemon --start --quiet --pidfile $SER_PIDFILE \ --exec $DAEMON -- $PARAMS echo "." ;; stop) echo -n "Stopping $DESC: $NAME" start-stop-daemon --oknodo --stop --quiet --pidfile $SER_PIDFILE \ --exec $DAEMON echo "." ;; #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 \ # $SER_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 ser 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 -n "Restarting $DESC: $NAME" start-stop-daemon --oknodo --stop --quiet --pidfile \ $SER_PIDFILE --exec $DAEMON sleep 1 start-stop-daemon --start --quiet --pidfile \ $SER_PIDFILE --exec $DAEMON -- $PARAMS echo "." ;; *) N=/etc/init.d/$NAME # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0