Прекрасно, что разработчики позаботились о запуске сервисов в стиле
rc?.d
Может имеет смысл вместо запуска нескольких скриптов в каталоге init.d
Написать один чтото в духе :
Код:
#!/bin/sh
export JAVA_HOME=/opt/java/jre
what () {
case $prog in
bgbilling)
serverstart=server_start.sh
serverstop=server_stop.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
bgdataloader)
serverstart=data_loader_start.sh
serverstop=data_loader_stop.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
bgscheduler)
serverstart=scheduler_start.sh
serverstop=scheduler_stop.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
netflow)
serverstart=netflow_start.sh
serverstop=netflow_stop.sh
BGBILLING_HOME=/usr/local/BGIPNNetflowCollector
;;
esac
}
if [ x$2 = x ]
then
case $1 in
start)
for prog in bgbilling bgdataloader bgscheduler netflow
do
what
echo -n $"Starting $prog: "
$BGBILLING_HOME/$serverstart
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$prog start OK"
sleep 2
done
;;
stop)
for prog in netflow bgscheduler bgdataloader bgbilling
do
what
echo -n $"Stoping $prog: "
$BGBILLING_HOME/$serverstop
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$prog stop OK"
sleep 5
done
;;
*)
echo "bg start|stop|status [b|d|s|n]"
;;
esac
else
case "$2" in
b)
prog="bgbilling"
serverstart=server_start.sh
serverstop=server_stop.sh
serverstatus=server_status.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
d)
prog="bgdataloader"
serverstart=data_loader_start.sh
serverstop=data_loader_stop.sh
serverstatus=data_loader_status.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
s)
prog="bgscheduler"
serverstart=scheduler_start.sh
serverstop=scheduler_stop.sh
serverstatus=scheduler_status.sh
BGBILLING_HOME=/usr/local/BGBillingServer
;;
n)
prog="netflow"
serverstart=netflow_start.sh
serverstop=netflow_stop.sh
serverstatus=netflow_status.sh
BGBILLING_HOME=/usr/local/BGIPNNetflowCollector
;;
esac
case "$1" in
start)
echo -n $"Starting $prog: "
$BGBILLING_HOME/$serverstart
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$prog start OK"
;;
stop)
echo -n $"Stoping $prog: "
$BGBILLING_HOME/$serverstop
RETVAL=$?
[ $RETVAL -eq 0 ] && echo "$prog stop OK"
;;
status)
$BGBILLING_HOME/$serverstatus
;;
*)
echo "4oo ?!"
;;
esac
fi
Просто удобно управлять одним скриптом запуском различных служб..