8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-24 08:03:03 +01:00
firebird-mirror/builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in

79 lines
1.7 KiB
Bash

#!/bin/sh
# chkconfig: 345 20 80
# 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/interbase database server daemon
# Source function library - RedHat or Mandriva specific
# functions actually used: checkpid success failure
. /etc/rc.d/init.d/functions
# To run more instances of firebird:
# Copy @prefix@ somewhere
# Copy this script under a new name
# Change at least INSTANCE and FIREBIRD below
# Edit the copied firebird.conf to change at least RemoteServicePort
# Optionally run chkconfig to autostart the new service
INSTANCE=default
FIREBIRD=@prefix@
# No changes needed below for multiple instances
FBRunUser=firebird
pidfile=/var/run/firebird/$INSTANCE.pid
FULLNAME="Firebird server [$INSTANCE]"
LD_LIBRARY_PATH=$FIREBIRD/lib
export FIREBIRD LD_LIBRARY_PATH
# Check the file is there and is executable.
[ -x $FIREBIRD/bin/fbmgr.bin ] || exit 1
# See how we were called.
case "$1" in
start)
echo -n "Starting $FULLNAME "
runuser -s /bin/bash $FBRunUser -c "$FIREBIRD/bin/fbmgr.bin -pidfile $pidfile -start -forever"
RETVAL=$?
[ $RETVAL -eq 0 ] && success || failure
echo
;;
stop)
echo -n "Stopping $FULLNAME "
if [ -f $pidfile ]
then
kill `cat $pidfile`
fi
RETVAL=$?
[ $RETVAL -eq 0 ] && success || failure
echo
;;
status)
if [ -f $pidfile ]
then
pid=`cat $pidfile`
checkpid $pid
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$FULLNAME is running (pid $pid)" || echo "$FULLNAME is dead but pid file exists"
else
echo "$FULLNAME is stopped"
fi
;;
restart|reload)
$0 stop
sleep 1
$0 start
RETVAL=$?
;;
*)
echo "Usage: firebird {start|stop|status|restart|reload}"
exit 1
esac
exit $RETVAL