3 # This file is part of Koha.
5 # Koha is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # Koha is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with Koha; if not, see <http://www.gnu.org/licenses>.
19 # Provides: koha-zebra-daemon
20 # Required-Start: $syslog $remote_fs
21 # Required-Stop: $syslog $remote_fs
22 # Default-Start: 2 3 4 5
24 # Short-Description: Zebra server daemon for Koha indexing
30 NAME=koha-zebra-ctl.$DBNAME
32 ERRLOG=$LOGDIR/koha-zebradaemon.err
33 STDOUT=$LOGDIR/koha-zebradaemon.log
34 OUTPUT=$LOGDIR/koha-zebradaemon-output.log
35 KOHA_CONF=__KOHA_CONF_DIR__/koha-conf.xml
36 RUNDIR=__ZEBRA_RUN_DIR__
37 LOCKDIR=__ZEBRA_LOCK_DIR__
38 # you may need to change this depending on where zebrasrv is installed
39 ZEBRASRV=__PATH_TO_ZEBRA__/zebrasrv
40 ZEBRAOPTIONS="-v none,fatal,warn"
42 test -f $ZEBRASRV || exit 0
45 if [[ $EUID -eq 0 ]]; then
46 OTHERUSER="--user=$USER.$GROUP"
51 echo "Starting Zebra Server"
53 # create run and lock directories if needed;
54 # /var/run and /var/lock are completely cleared at boot
56 if [[ ! -d $RUNDIR ]]; then
59 if [[ $EUID -eq 0 ]]; then
60 chown $USER:$GROUP $RUNDIR
63 if [[ ! -d $LOCKDIR ]]; then
66 mkdir -p $LOCKDIR/biblios
67 mkdir -p $LOCKDIR/authorities
68 mkdir -p $LOCKDIR/rebuild
69 if [[ $EUID -eq 0 ]]; then
70 chown -R $USER:$GROUP $LOCKDIR
74 daemon --name=$NAME --errlog=$ERRLOG --stdout=$STDOUT --output=$OUTPUT --verbose=1 --respawn --delay=30 $OTHERUSER -- $ZEBRASRV $ZEBRAOPTIONS -f $KOHA_CONF
77 echo "Stopping Zebra Server"
78 daemon --name=$NAME --errlog=$ERRLOG --stdout=$STDOUT --output=$OUTPUT --verbose=1 --respawn --delay=30 $OTHERUSER --stop -- $ZEBRASRV -f $KOHA_CONF
81 echo "Restarting the Zebra Server"
82 daemon --name=$NAME --errlog=$ERRLOG --stdout=$STDOUT --output=$OUTPUT --verbose=1 --respawn --delay=30 $OTHERUSER --restart -- $ZEBRASRV -f $KOHA_CONF
85 echo "Usage: /etc/init.d/$NAME {start|stop|restart}"