Simone Caronni dd59af
#!/bin/sh
Andreas Thienemann 074524
#
Simone Caronni dd59af
# bacula-dir Takes care of starting and stopping the Bacula Director.
Andreas Thienemann 074524
#
Andreas Thienemann 074524
# chkconfig: - 80 20
Simone Caronni dd59af
# description: The Bacula Director is the daemon responsible for all the logic \
Simone Caronni dd59af
#              regarding the backup infrastructure: database, file retention, \
Simone Caronni dd59af
#              tape indexing, scheduling.
Andreas Thienemann 074524
Simone Caronni dd59af
### BEGIN INIT INFO
Simone Caronni dd59af
# Required-Start: $local_fs $network
Simone Caronni dd59af
# Required-Stop: $local_fs $network
Simone Caronni dd59af
# Default-Start: 3 4 5
Simone Caronni dd59af
# Default-Stop: 0 1 2 6
Simone Caronni dd59af
# Short-Description: Bacula Director Daemon.
Simone Caronni dd59af
# Description: The Bacula Director is the daemon responsible for all the logic
Simone Caronni dd59af
#              regarding the backup infrastructure: database, file retention,
Simone Caronni dd59af
#              tape indexing, scheduling.
Simone Caronni dd59af
### END INIT INFO
Andreas Thienemann 074524
Simone Caronni dd59af
# Source function library.
Simone Caronni dd59af
. /etc/rc.d/init.d/functions
Andreas Thienemann 074524
Simone Caronni dd59af
exec="/usr/sbin/bacula-dir"
Andreas Thienemann 074524
prog="bacula-dir"
Andreas Thienemann 074524
CONFIG="/etc/bacula/bacula-dir.conf"
Andreas Thienemann 074524
OPTS="-c $CONFIG"
Andreas Thienemann 074524
Simone Caronni dd59af
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
Simone Caronni dd59af
Simone Caronni dd59af
lockfile=/var/lock/subsys/$prog
Simone Caronni dd59af
Jan Görig e51227
if [ "$DIR_USER" != '' ]; then
Simone Caronni dd59af
        OPTS="$OPTS -u $DIR_USER"
Jan Görig e51227
fi
Jan Görig e51227
Jan Görig e51227
if [ "$DIR_GROUP" != '' ]; then
Simone Caronni dd59af
        OPTS="$OPTS -g $DIR_GROUP"
Jan Görig e51227
fi
Jan Görig e51227
Andreas Thienemann 074524
start() {
Simone Caronni dd59af
    [ -x $exec ] || exit 5
Simone Caronni dd59af
    [ -f $config ] || exit 6
Simone Caronni dd59af
    echo -n $"Starting $prog: "
Simone Caronni dd59af
    daemon $prog $OPTS
Simone Caronni dd59af
    retval=$?
Simone Caronni dd59af
    echo
Simone Caronni dd59af
    [ $retval -eq 0 ] && touch $lockfile
Simone Caronni dd59af
    return $retval
Simone Caronni dd59af
}
Andreas Thienemann 074524
Andreas Thienemann 074524
stop() {
Simone Caronni dd59af
    echo -n $"Stopping $prog: "
Simone Caronni 298780
    killproc $prog
Simone Caronni dd59af
    retval=$?
Simone Caronni dd59af
    echo
Simone Caronni dd59af
    [ $retval -eq 0 ] && rm -f $lockfile
Simone Caronni dd59af
    return $retval
Simone Caronni dd59af
}
Simone Caronni dd59af
Simone Caronni dd59af
restart() {
Simone Caronni dd59af
    stop
Simone Caronni dd59af
    sleep 1
Simone Caronni dd59af
    start
Andreas Thienemann 074524
}
Andreas Thienemann 074524
Simone Caronni dd59af
reload() {
Simone Caronni dd59af
    restart
Simone Caronni dd59af
}
Simone Caronni dd59af
Simone Caronni dd59af
force_reload() {
Simone Caronni dd59af
    restart
Simone Caronni dd59af
}
Simone Caronni dd59af
Simone Caronni dd59af
rh_status() {
Simone Caronni dd59af
    # run checks to determine if the service is running or use generic status
Simone Caronni dd59af
    status $prog
Simone Caronni dd59af
}
Simone Caronni dd59af
Simone Caronni dd59af
rh_status_q() {
Simone Caronni dd59af
    rh_status >/dev/null 2>&1
Simone Caronni dd59af
}
Simone Caronni dd59af
Simone Caronni dd59af
Andreas Thienemann 074524
case "$1" in
Andreas Thienemann 074524
    start)
Simone Caronni dd59af
        rh_status_q && exit 0
Simone Caronni dd59af
        $1
Simone Caronni dd59af
        ;;
Andreas Thienemann 074524
    stop)
Simone Caronni dd59af
        rh_status_q || exit 0
Simone Caronni dd59af
        $1
Simone Caronni dd59af
        ;;
Simone Caronni dd59af
    restart)
Simone Caronni dd59af
        $1
Simone Caronni dd59af
        ;;
Simone Caronni dd59af
    reload)
Simone Caronni dd59af
        rh_status_q || exit 7
Simone Caronni dd59af
        $1
Simone Caronni dd59af
        ;;
Simone Caronni dd59af
    force-reload)
Simone Caronni dd59af
        force_reload
Simone Caronni dd59af
        ;;
Andreas Thienemann 074524
    status)
Simone Caronni dd59af
        rh_status
Simone Caronni dd59af
        ;;
Jan Görig ddc0d5
    condrestart|try-restart)
Simone Caronni dd59af
        rh_status_q || exit 0
Simone Caronni dd59af
        restart
Simone Caronni dd59af
        ;;
Andreas Thienemann 074524
    *)
Simone Caronni dd59af
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
Simone Caronni dd59af
        exit 2
Andreas Thienemann 074524
esac
Andreas Thienemann 074524
exit $?