ich habe vor einen kleinen Bzflag server auf meinem debian server laufen zu lassen.
Prinzipiell ist das kein Problem, nur leider wird mit dem Paket "bzflag-server" kein Init.d script mitgeliefert.
Aus einer Debian Mailingliste habe ich das gefischt:
Code: Alles auswählen
#!/bin/sh
### BEGIN INIT INFO
# Provides: bzflag
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Init script for bzflag-server
### END INIT INFO
ACTION="${1}"
NAME="bzflag"
DESC="BZFlag game server"
PIDFILE="/var/run/bzflag/game.pid"
LOGFILE="/var/log/bzflag/game.log"
BINARY="/usr/games/bzfs"
test -x ${BINARY} || exit 0
test -f /etc/default/${NAME} || exit 0
. /lib/lsb/init-functions
. /etc/default/${NAME}
case "${ACTION}" in
start|start-now)
if [ "${ACTION}" != "start-now" ]
then
case "$(echo "${RUN_AT_STARTUP}" | tr A-Z a-z)" in
true|1|enabled|on|yes|ok)
;;
*)
exit 0
;;
esac
fi
log_daemon_msg "Starting ${DESC}" ${NAME}
if ! start-stop-daemon --start -q -b --oknodo --pidfile ${PIDFILE} \
-c games:games --exec ${BINARY} -- \
-pidfile ${PIDFILE} ${OPTIONS} 2>&1 >> ${LOGFILE}
then
log_end_msg 1
else
log_end_msg 0
fi
;;
stop|stop-now)
log_daemon_msg "Stopping ${DESC}" ${NAME}
if start-stop-daemon --stop -q --pidfile ${PIDFILE} \
--retry 10 --exec ${BINARY} 2>&1 >> ${LOGFILE}
then
then
rm -f ${PIDFILE}
log_end_msg 0
else
log_end_msg 1
fi
;;
restart|force-reload)
${0} stop
sleep 1
${0} start
;;
*)
echo "Usage: /etc/init.d/${NAME} {start[-now]|stop[-now]|restart|force-reload}"
exit 1
;;
esac
exit 0
Das ganze funktioniert auch. Nur leider nicht mit meinen servereinstellungen.
ich habe ein conf file, welches in /etc/ liegt. eigentlich wird der Server per "bzfs -conf /etc/bzfs.conf" aufgerufen.
Wie muss ich nun das script verändern, damit die Einstellugen mitgeladen werden?!
Liebe Grüße,
Pcace