8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 22:43:04 +01:00
firebird-mirror/builds/install/arch-specific/linux/misc/firebird.init.d.debian.in

80 lines
1.4 KiB
Bash

#!/bin/sh
# chkconfig: 345 80 20
# description: Start/Stop firebird database server
#
# This file belongs in /etc/init.d where it will be run
# on system startup and shutdown to start the background
# Firebird database server daemon
# This init script contains functions specific for debian
# init scripts.
# Source function library.
#. /etc/rc.d/init.d/functions
FIREBIRD=@FB_CONFDIR@
FBRunUser=firebird
makeFbDir() {
mDir=${1}
mode=${2}
if [ ! -d $mDir ]; then
rm -rf $mDir
mkdir $mDir
if [ "$mode" ]; then
chmod $mode $mDir
fi
fi
chown $FBRunUser:$FBRunUser $mDir
}
runDir=/var/run/firebird
makeFbDir $runDir
lockDir=/tmp/firebird
makeFbDir $lockDir 0770
pidfile="$runDir/`basename $0`.pid"
FB_OPTS="-pidfile $pidfile -daemon -forever"
export FIREBIRD
GUARDIAN=$FIREBIRD/bin/fbguard
if [ ! -x $GUARDIAN ]; then
GUARDIAN=@FB_SBINDIR@/fbguard
fi
# See how we were called.
case "$1" in
start)
echo -n "Starting Firebird server: "
start-stop-daemon --start --quiet --oknodo --chuid $FBRunUser --exec $GUARDIAN -- $FB_OPTS
RETVAL=$?
;;
stop)
echo -n "Stopping Firebird server: "
if [ -f $pidfile ]
then
kill `cat $pidfile`
fi
RETVAL=$?
;;
restart|reload)
$0 stop
$0 start
RETVAL=$?
;;
shutdown)
echo -n "Forcibly killing Firebird server..."
killall fbguard
killall fbserver
killall fb_smp_server
echo "done."
RETVAL=0
;;
*)
echo "Usage: firebird {start|stop|shutdown|restart|reload}"
exit 1
esac
exit $RETVAL