Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: nohup: redirecting stderr to stdout  (Přečteno 1782 krát)

georgee24

  • Návštěvník
  • Příspěvků: 1
nohup: redirecting stderr to stdout
« kdy: 26 Ledna 2012, 07:03:31 »
Dobry den,  mam dotaz,
     provozuji mensi herni server a mam problem se spustenim jednoho scriptu.
Do dnesniho dne jsme pouzival linuxovou distribuci  SLES 10 vse bezelo normalne, ale zduvodu nekterych funkci (problemove monitorovani atd) jsme presel na Ubuntu 10.04.3 LTS 64bit.

Pri spusteni sriptu to vypise tuto chybu

Kód: [Vybrat]
]root@arma2:/home/arma# ./arma_ace start
Starting ArmA ACE mod server...
root@arma2:/home/arma# nohup: redirecting stderr to stdout

server se sice spusti, co se sem tam stane, tak to, ze se nevrati do konzole a pri pouziti ctr+c nebo enter se stane, ze server spadne a nebezi, nestava se to pravidelne.

Dale pri pouziti  restart

Kód: [Vybrat]
root@arma2:/home/arma# ./arma_ace start
Starting ArmA ACE mod server...
root@arma2:/home/arma# nohup: redirecting stderr to stdout

root@arma2:/home/arma# ./arma_ace restart
Stopping ArmA server...
Starting ArmA ACE mod server...
root@arma2:/home/arma# nohup: redirecting stderr to stdout


nedojde k restartovani, kill procesu a znovu nastartovani procesu, ale spusteni znova a sluzba tam bezi dvakrat a je nepouzitelna.

Vypis sriptu,
jedna se originalni script co je stazne z oficialni stranek hry pro linux, je to 32bit hra

Kód: [Vybrat]
#!/bin/bash
#
# armaserver: ArmA 2 Linux Dedicated Server Control Script
#  (c) 2010 BIStudio
#  ArmA 2 binary version must be 1.04 or later
#

#=======================================================================
#========               CONFIGURATION PARAMETERS                ========
#======== MUST BE EDITED MANUALLY TO FIT YOUR SYSTEM PARAMETERS ========
#=======================================================================
ARMA_DIR=/home/arma
CFG=arma.cfg
CONFIG=server_ace.cfg
PORT=2402
PIDFILE=${ARMA_DIR}/${PORT}.pid
RUNFILE=${ARMA_DIR}/${PORT}.run
LOGFILE=/home/www/htdocs/admin/log/arma/arma.log
SERVER=${ARMA_DIR}/arma-server
PROFILE=${ARMA_DIR}/player/player.armaprofile
OTHERPARAMS=-cpucount=2
MOD=@ace\;
#=======================================================================
#ulimit -c 1000000

case "$1" in


    start)
if [ -f ${RUNFILE} ]; then
    $0 stop
fi
echo "Starting ArmA ACE mod 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 server..."
if [ -f ${RUNFILE} ]; then
# ask watcher process to exit by deleting its runfile...
    rm -f ${RUNFILE}
fi
# and terminate ArmA 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 "MISSING!"
else
    echo "OK"
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 -cfg=${CFG} -config=${CONFIG} -port=${PORT} -pid=${PIDFILE} -profile=${PROFILE} ${OTHERPARAMS} -mod=${MOD}
    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
 

Prosim o pomoc vyresit tento probelm, protoze u ubuntu chci zustat.

 

Provoz zaštiťuje spolek OpenAlt.