#! /bin/bash # # kolabd Start/Stop the Kolab server daemon # # chkconfig: - 98 10 # description: The Kolab server is a server process which synchronizes # LDAP, SQL and other authentication databases with Cyrus IMAP, # Dovecot or other IMAP servers. # processname: kolabd ### BEGIN INIT INFO # Provides: kolabd # Default-Start: - # Default-Stop: 0 1 2 6 # Required-Start: $remote_fs $local_fs $network # Required-Stop: $remote_fs $local_fs $network # Short-Description: Start/Stop the Kolab Server daemon # Description: The Kolab server is a server process which synchronizes # LDAP, SQL and other authentication databases with Cyrus IMAP, # Dovecot or other IMAP servers. ### END INIT INFO # Source function library. if [ -f /etc/init.d/functions ]; then . /etc/init.d/functions fi # Source our configuration file for these variables. FLAGS="--fork -l warning" if [ -f /etc/sysconfig/kolabd ] ; then . /etc/sysconfig/kolabd fi if [ -f /etc/default/kolabd ]; then . /etc/default/kolabd fi RETVAL=0 # Set up some common variables before we launch into what might be # considered boilerplate by now. prog=kolabd path=/usr/sbin/kolabd lockfile=/var/lock/subsys/$prog pidfile=/var/run/kolabd/kolabd.pid start() { [ -x $path ] || exit 5 echo -n $"Starting $prog: " daemon $DAEMONOPTS $path -p $pidfile $FLAGS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch $lockfile return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc $prog RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $lockfile return $RETVAL } restart() { stop start } reload() { restart } force_reload() { restart } rh_status() { # run checks to determine if the service is running or use generic status status -p $pidfile $prog } rh_status_q() { rh_status >/dev/null 2>&1 } case "$1" in start) rh_status_q && exit 0 start ;; stop) rh_status_q || exit 0 stop ;; restart) restart ;; reload) rh_status_q || exit 7 reload ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 restart ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" exit 2 esac exit $?