Jump to content
Sign in to follow this  
Ajbboy

ArmA 2 OA Dedicated Server Restart Script? (Linux Debian 7.5)

Recommended Posts

Hi, I've just finally launched a ArmA 2 OA Dedicated Server on my Linux Debian 7.5 Server Box, and the server is running perfectly. But I would like to find out if there is a Restart Script I could use. I know that there is one inside of the arma2oaserver file, but I'm not sure if it actually works, or how to make it function properly.

 

This is the code of the arma2oaserver startup script that starts the server, along with a few other scripts, and what appears to be a Restart script in there maybe:

ulimit -c 1000000

case "$1" in


start)
    if [ -f ${RUNFILE} ]; then
     $0 stop
    fi
    echo "Starting ArmA 2 server..."
    # file to mark we want server running...    
    echo "go" >${RUNFILE}
    # launch the background watchdog process to run the server
    nohup </dev/null >/dev/null $0 watchdog &
    ;;
    
stop)
    echo "Stopping ArmA 2 server..."
    if [ -f ${RUNFILE} ]; then
    # ask watcher process to exit by deleting its runfile...
     rm -f ${RUNFILE}
    fi
    # and terminate ArmA 2 server process
    if [ -f ${PIDFILE} ]; then
     kill -TERM $(< ${PIDFILE})
     if [ -f ${PIDFILE} ]; then
        rm -f ${PIDFILE}
     fi
    fi
    ;;
    
    
status)
    if [ -f ${RUNFILE} ]; then
     echo "Server should be running..."
    else
     echo "Server should not be running..."
    fi
    if [ -f ${PIDFILE} ]; then
     PID=$(< ${PIDFILE})
     echo "PID file exists (PID=${PID})..."
     if [ -f /proc/${PID}/cmdline ]; then
        echo "Server process seems to be running..."
     fi
    fi
    ;;
    
    
check)
    echo -n "ArmA 2 directory: ${ARMA_DIR} "
    if [ -d ${ARMA_DIR} ]; then
     echo "OK"
    else
     echo "MISSING!"
    fi
    
    echo -n "Server executable: ${SERVER} "
    if [ -x ${SERVER} ]; then
     echo "OK"
    else
     echo "ERROR!"
    fi
    
    echo "Port number: ${PORT}"
    
    echo -n "Config file: ${CONFIG} "
    if [ -f ${CONFIG} ]; then
     echo "OK"
    else
     echo "MISSING!"
    fi
    
    echo "PID file: ${PIDFILE}"
    echo "RUN file: ${RUNFILE}"
    
    ;;

restart)
    $0 stop
    $0 start
;;

watchdog)
    # this is a background watchdog process. Do not start directly
    while [ -f ${RUNFILE} ]; do
    # launch the server...
     cd ${ARMA_DIR}
     echo >>${LOGFILE} "WATCHDOG ($): [$(date)] Starting server (port ${PORT})..."
     ${SERVER} >>${LOGFILE} 2>&1 -server -config=${CONFIG} -port=${PORT} -pid=${PIDFILE} ${OTHERPARAMS}
     if [ -f ${RUNFILE} ]; then
        echo >>${LOGFILE} "WATCHDOG ($): [$(date)] Server died, waiting to restart..."
        sleep 5s
     else
        echo >>${LOGFILE} "WATCHDOG ($): [$(date)] Server shutdown intentional, watchdog terminating"
     fi
    done
    ;;
*)
    echo "$0 (start|stop|restart|status|check)"
    ;;
esac

Thanks in Advance!

 

- Ajb

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×