[FADCA] fpac.sh

Charles S Schuman k4gbb at earthlink.net
Tue May 31 09:15:13 EDT 2005


My modified fpac.sh file timestamps and identifies the events in
/var/log/fpac. With the changes to the script you will have to use 
fpac.sh start in the ax25-up file.

The file is usless for normal operation, but helps a bunch
when you are testing. Check the fpac log file everynow and again...
when there is a "Hard" error the file blotes up to a meg or two.
I usally rm it and touch it to make a new/empty file.

-------------- next part --------------
#!/bin/bash
#k4gbb 05/25/05 11:45
# /usr/sbin/fpac.sh
DIR=`dirname $0`

PATH=$DIR:$PATH

# log file
#LOG=/var/log/null
LOG=/var/log/fpac

#serial port for watchdog
# WDOG_PORT="/dev/ttyS4"
WDOG_PORT=""

# callsign of the sysop
SYSOP="k4gbb"

# route/callsign of the notified BBS
# CONNECT="rose0 f6fbb-1 2080931502"
CONNECT="0 k4gbb-0 v kq4pp-4 352854"

export PATH SYSOP CONNECT
# Datestamp
date >> $LOG 2>&1
case "$1" in
restart)
echo "[restart]" >> $LOG
$0 stop && $0 start
        ;;
stop)
echo "[stop]" >> $LOG
        echo -n "Halting FPAC :"
        for PROC_NAME in fpacnode fpacshell
        do
                PID=`/bin/pidof -x $DIR/$PROC_NAME`
                if [ -n "$PID" ]; then
                        kill -TERM $PID
                        sleep 4
                fi
        done
#       echo -n " [flexd]"
#       kill -TERM `/bin/pidof -x $DIR/flexd`
        echo -n " [route]"
        kill -TERM `/bin/pidof -x $DIR/fpacroute`
        echo -n " [stats]"
        kill -TERM `/bin/pidof -x $DIR/fpacstat`
        echo -n " [wp]"
        kill -TERM `/bin/pidof -x $DIR/fpacwpd`
        echo -n " [pad]"
        kill -KILL `/bin/pidof -x $DIR/fpad`
#       cho -n " [wdog]"
# kill -TERM `/bin/pidof -x $DIR/fpacwdog`
        echo " ok"
        ;;
status)
        echo "[status]" >> $LOG
        echo -e "\nStatus of FPAC :"

        for PROC_NAME in fpacwdog fpad fpacwpd fpacstat fpacroute # flexd
        do
                PID=`/bin/pidof -x $DIR/$PROC_NAME`
                if [ -n "$PID" ]; then
                        echo -e "$PROC_NAME    \tis running"

                else
                        echo -e "$PROC_NAME    \tis not running"
                fi
        done
        echo
        ;;
fpad)
        echo "[fpad]" >> $LOG
        while [ 1 ]
        do
                $DIR/fpad -d
                sleep 1
        done
        ;;
fpacwpd)
        echo "[fpacwpd]" >> $LOG
        while [ 1 ]
        do
                $DIR/fpacwpd -d
                sleep 1
        done
        ;;
-t)
#This is a TEST case
        echo "[fpac BG]" >> $LOG
        FPAC_BG="yes"
        export FPAC_BG
        echo -n "Starting FPAC :"
        if [ "_$WDOG_PORT" != "_" ] ; then
                echo -n " [wdog]"
                $DIR/fpacwdog -p 2 $WDOG_PORT >> $LOG 2>&1
        fi
        echo -n " [pad]"
        $DIR/fpac.sh fpad >> $LOG 2>&1 &
        echo -n " [wp]"
        $DIR/fpac.sh fpacwpd >> $LOG 2>&1 &
        echo -n " [stats]"
        $DIR/fpacstat >> $LOG 2>&1
        echo -n " [route]"
        $DIR/fpacroute >> $LOG 2>&1
#       echo -n " [flexd]"
#       DIR/flexd >> $LOG 2>&1
#       (sleep 60 ; /bin/date | $DIR/mailbbs -d $SYSOP -t "System Reboot" $CONNECT) &
        echo " ok"
        ;;
start)
        echo "[start]" >> $LOG
        echo -n "Starting FPAC :"
        if [ "_$WDOG_PORT" != "_" ] ; then
                echo -n " [wdog]"
                $DIR/fpacwdog -p 2 $WDOG_PORT >> $LOG 2>&1
        fi
        echo -n " [pad]"
        $DIR/fpad >> $LOG 2>&1
        echo -n " [wp]"
        $DIR/fpacwpd >> $LOG 2>&1
        echo -n " [stats]"
        $DIR/fpacstat >> $LOG 2>&1
        echo -n " [route]"
        $DIR/fpacroute >> $LOG 2>&1
#       echo -n " [flexd]"
#       $DIR/flexd >> $LOG 2>&1
#       (sleep 60 ; /bin/date | $DIR/mailbbs -d $SYSOP -t "System Reboot" $CONNECT) &
        echo " ok"
        ;;
*)
echo "Useage : $0 {start|stop|restart|status|fpad|fpacwpd}"
exit 1
esac


exit 0





More information about the FADCA mailing list