Jump to content

Archiviert

Dieses Theme ist nun archiviert und für weitere Antworten gesperrt.

bogo

bfsmd beim Systemstart laufenlassen?

Recommended Posts

Hallo,

kann mir jemand sagen wie ich den bfsmd beim Booten automatisch starten kann?

Ein Eintrag in /etc/init.d/bootmisc.sh "/pfad/zum/./bfsmd" hilft da leider nicht.

Vielen Dank,

bogo

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
Gast

Hi!

Ist mit einem ganz normalen Start/Stopskript wie man z.B. auch für Server benutzt realisierbar. Ansonsten poste doch einfach deine Lösung hier rein...

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Hi Fisch,

ja, es läuft über ein Bootscript. Habe dafür ein für TS2 erstelltes Script missbraucht ;)

a.) Getestet unter Debian/Ubuntu:

b.) Startet auch den bf1942 Server beim Booten

1. Einen neuen User erstellen bzw. mit dem aktuellen arbeiten (wir nennen hier den User bfuser)

2. Falls bf1942/bfsmd nocht nicht installiert, beides am besten in /home/bfuser installieren (als user, nicht als root!)

3. Rechte in /home/bfuser überprüfen und ggf. anpassen: chown -R bfuser.bfuser

4. User-ID für bfsmd setzen (als user, nicht als root!): chmod u+s bfsmd

5. Dieses Script (als root) in /etc/init.d/ als "name" abspeichern. Wir nennen das Script jetzt einfach bfsmstart

#! /bin/sh

#

# Author:	   bogo

# Based on TS2 script from ramn.se

#

#

# Version:	  0.1

#



set -e



PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin



###############################################################################

#	  Some variables, that you must change follows here:

#



# The path to the directory wherein the "bfsmd" executable is located

DAEMONDIR=/home/bfuser/



# The name of the executable, you shouldnt have to change this

NAME=bfsmd



# The path to this file - lets assume you call it "bfsmstart"

# It must be located in /etc/init.d/

SCRIPTNAME=/etc/init.d/bfsmstart



###############################################################################





# No need to change these

DESC="BFSMD"

DAEMON=${DAEMONDIR}$NAME

PIDFILE=${DAEMONDIR}bfpid.pid





# Gracefully exit if the package has been removed.

test -x $DAEMON || exit 0





# Change to appropriate directory

cd $DAEMONDIR



#

#	   Function that starts the daemon/service.

#

d_start() {

# is there a pid file?

if test -r $PIDFILE

then

  # there is a pid file -- is it current?

  pid=`cat $PIDFILE`

  if `kill -CHLD $pid >/dev/null 2>&1`

  then

	echo "BFSMD is currently running...."

	exit 0

  fi

  echo ""

  echo "Stale $PIDFILE file, erasing..."

  echo "Attempting to Restart BFSMD"

  rm -f $PIDFILE

fi

# Hier kommen eure Parameter (ACHTUNG: -daemon funktioniert nicht!)

# -start startet gleichzeitig den BF-Server.



./bfsmd -start -restart -pid /home/bfuser/bfpid.pid

}



#

#	   Function that stops the daemon/service.

#

d_stop() {

killall bfsmd

}



#

#	   Function that sends a SIGHUP to the daemon/service.

#

#d_reload() {

#}



case "$1" in

  start)

		echo -n "Starting $DESC: $NAME"

		d_start

		echo "."

	   ;;

  stop)

		echo -n "Stopping $DESC: $NAME"

		d_stop

		echo "."

	   ;;

  #reload)

  #

		#	   If the daemon can reload its configuration without

		#	   restarting (for example, when it is sent a SIGHUP),

		#	   then implement that here.

		#

		#	   If the daemon responds to changes in its config file

		#	   directly anyway, make this an "exit 0".

		#

		# echo -n "Reloading $DESC configuration..."

		# d_reload

		# echo "done."

  #;;

  restart|force-reload)

		#

		#	   If the "reload" option is implemented, move the "force-reload"

		#	   option to the "reload" entry above. If not, "force-reload" is

		#	   just the same as "restart".

		#

		echo -n "Restarting $DESC: $NAME"

		d_stop

		sleep 1

		d_start

		echo "."

	   ;;

  *)

		# echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2

		echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2

		exit 1

	   ;;

esac



exit 0

6. In /etc/init.d wechseln und das Script ausführbar machen (als root): chmod +x bfsmstart

7. Und zu guter Letzt: update-rc.d bfsmstart defaults

Grüße,

bogo

PS. Verbesserungen erwünscht ;)

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

  • Wer ist Online   0 Benutzer

    Keine registrierten Benutzer online.

×

Übrigens…

Wir verwenden übrigens auch Cookies. Aber: Wir tracken nichts sondern erleichtern dir damit das Leben. Mehr dazu findest du hier.