2006-10-03 Tue

[別の年の同じ日: 2003 2004 2005 2007 2008 2012 2013 2016

zebedee を使う はてぶ

会社で UDP の port forwarding をする必要があったので,
zebedee を使ってみた.

以前 [2006-03-06-1],自宅のサーバに仕込んだことがあるので,
インストール・設定はすぐに終了.

次のような起動スクリプトを作っておく.

#!/bin/bash
#
# zebedeed        Startup script for the zebedee Server
#
# chkconfig: - 85 15
# description: zebedee
# processname: zebedeed
# pidfile: /var/run/zebedeed.pid

# Source function library.
. /etc/init.d/functions

prog=zebedeed
pidfile=${PIDFILE-/var/run/$prog.pid}
lockfile=${LOCKFILE-/var/lock/subsys/$prog}
zebedee_conf="/etc/zebedee/server.zbd"

ZEBEDEED_PRG="zebedee"
ZEBEDEED_BIN="/usr/bin/$ZEBEDEED_PRG"
ZEBEDEED_CONF="/etc/$ZEBEDEED_PRG/server.zbd"
ZEBEDEED_USER="zebedee"
ZEBEDEED_PID=/var/run/$ZEBEDEED_PRG.pid
ZEBEDEED_LOCK=/var/lock/subsys/$ZEBEDEED_PRG
ZEBEDEED="$ZEBEDEED_BIN -f $ZEBEDEED_CONF"

#lockfile=${LOCKFILE-/var/lock/subsys/httpd}
RETVAL=0

start () {
	# start daemon
	echo -n $"Starting $ZEBEDEED_PRG: "
     if [ -f $ZEBEDEED_PID ]; then
        killproc $ZEBEDEED_PRG && rm -f $ZEBEDEED_LOCK $ZEBEDEED_PID
        RETVAL=$?
        [ $RETVAL != 0 ] && return $RETVAL
     fi
	daemon $ZEBEDEED
	RETVAL=$?
	echo
	[ $RETVAL = 0 ] && touch $ZEBEDEED_LOCK
	return $RETVAL
}

stop () {
	# stop daemon
	echo -n $"Stopping $ZEBEDEED_PRG: "
	killproc $ZEBEDEED_PRG && rm -f $ZEBEDEED_LOCK $ZEBEDEED_PID
	RETVAL=$?
	echo
	return $RETVAL
}

case "$1" in
  start)
	start
	;;
  stop)
	stop
	;;
  reload)
	if [ -f $ZEBEDEED_PID ] ; then
        kill -HUP `cat $ZEBEDEED_PID`
        RETVAL=$?
     fi
	;;
  restart)
	stop
	start
	RETVAL=$?
	;;
  condrestart)
	# restart only if already running
	if [ -f $ZEBEDEED_PID ] ; then
        stop
        start
        RETVAL=$?
	fi
	;;
  status)
	status $ZEBEDEED_PRG
	RETVAL=$?
	;;
  *)
	echo $"Usage: $ZEBEDEED_PRG {start|stop|reload|restart|condrestart|status}"
	exit 1
esac

exit $RETVAL