4 # Required-Start: $local_fs $remote_fs
5 # Required-Stop: $local_fs $remote_fs
6 # Default-Start: 2 3 4 5
8 # Short-Description: Example initscript
9 # Description: This file should be used to construct scripts to be
10 # placed in /etc/init.d.
13 # Author: Foo Bar <foobar@baz.org>
15 # Please remove the "Author" lines above and replace them
16 # with your own name if you copy and modify this script.
20 # PATH should only include /usr/* if it runs after the mountnfs.sh script
21 RUNDIR=/var/run/citadel
22 PATH=/sbin:/usr/sbin:/bin:/usr/bin
23 DESC="Citadel Groupware "
25 DAEMON=/usr/sbin/$NAME
26 CTDLSVC=/usr/lib/citadel-server/ctdlsvc
27 DAEMON_ARGS=" -x3 -lmail -t/dev/null"
28 PIDFILE=$RUNDIR/$NAME.pid
29 SCRIPTNAME=/etc/init.d/citadel
30 SENDCOMMAND=/usr/sbin/sendcommand
33 # Exit if the package is not installed
34 [ -x "$DAEMON" ] || exit 0
36 # Read configuration variable file if it is present
37 [ -r /etc/default/$NAME ] && . /etc/default/$NAME
41 # Load the VERBOSE setting and other rcS variables
42 if test -f /lib/init/vars.sh ; then
46 # Define LSB log_* functions.
47 # Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
48 if test -f /lib/lsb/init-functions; then
49 . /lib/lsb/init-functions
54 # Function that starts the daemon/service
58 # for ubuntu: check our volatile dirs.
59 if test ! -d $RUNDIR; then
63 # 0 if daemon has been started
64 # 1 if daemon was already running
65 # 2 if daemon could not be started
66 if $CTDLSVC $PIDFILE $DAEMON \
72 # Add code here, if necessary, that waits for the process to be ready
73 # to handle requests from services started subsequently which depend
74 # on this one. As a last resort, sleep for some time.
78 # Function that stops the daemon/service
83 # 0 if daemon has been stopped
84 # 1 if daemon was already stopped
85 # 2 if daemon could not be stopped
86 # other if a failure occurred
87 if $SENDCOMMAND "DOWN" >/dev/null 2>&1 ; then
90 while test -S /var/run/citadel/citadel.socket; do
100 #while test -d /proc/`cat $PIDFILE`; do
101 # /usr/bin/printf '.'
105 #start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
107 #[ "$RETVAL" = 2 ] && return 2
108 # Wait for children to finish too if this is a daemon that forks
109 # and if the daemon is only ever run from this initscript.
110 # If the above conditions are not satisfied then add some other code
111 # that waits for the process to drop all resources that could be
112 # needed by services started subsequently. A last resort is to
113 # sleep for some time.
114 #start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
115 #[ "$?" = 2 ] && return 2
116 # Many daemons don't delete their pidfiles when they exit.
121 # Function that sends a SIGHUP to the daemon/service
125 # If the daemon can reload its configuration without
126 # restarting (for example, when it is sent a SIGHUP),
127 # then implement that here.
129 # start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
137 if test -n "$MODERN"; then
138 [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
140 echo "Starting $DESC" "$NAME"
144 if test -n "$MODERN"; then
146 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
147 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
152 if test -n "$MODERN"; then
153 [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
155 echo "Stopping $DESC" "$NAME"
158 if test -n "$MODERN"; then
160 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
161 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
165 #reload|force-reload)
167 # If do_reload() is not implemented then leave this commented out
168 # and leave 'force-reload' as an alias for 'restart'.
170 #log_daemon_msg "Reloading $DESC" "$NAME"
174 restart|force-reload)
176 # If the "reload" option is implemented then remove the
177 # 'force-reload' alias
179 if test -n "$MODERN"; then
180 log_daemon_msg "Restarting $DESC" "$NAME"
182 echo "Restarting $DESC" "$NAME"
187 if test -n "$MODERN"; then
193 1) log_end_msg 1 ;; # Old process is still running
194 *) log_end_msg 1 ;; # Failed to start
205 #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
206 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2