Wäre sehr nett, wenn mir jemand dabei helfen könnte.
Corerestart Script
Code:
#!/bin/sh
# Settings
GAMEDIR="/home/game/" # Gameordner
CH1DIR="$GAMEDIR/channel/game1"
CH1DIR="$GAMEDIR/channel/game2"
CH1DIR="$GAMEDIR/channel/game3"
CH2DIR="$GAMEDIR/channe2/game1"
CH2DIR="$GAMEDIR/channe2/game2"
CH2DIR="$GAMEDIR/channe2/game3"
CH99DIR="$GAMEDIR/game99"
LOG="$GAMEDIR/corerestart.log" # Name der Log-File (Liegt im Gameordner)
TIME=$(date) # Komplettes Date Format
FILE="$GAMEDIR/cron.start" # Cronjob start datei
if [ -f "$FILE" ]; then
## Channel 1
echo
echo " ---------------------------------- " >> $LOG
echo " BEGIN WITH CHANNEL 1 " >> $LOG
echo " ---------------------------------- " >> $LOG
echo
# DB-Cache
PIDDB=`ps aux | grep db | grep -v grep | awk '{print $2;}'`
if [ "x$PIDDB" != "x" ]; then
echo "$(date) :: Der Datenbankserver (DB-Cache) ist Online. PID: $PIDDB" >> $LOG
else
echo "$(date) :: Der Datenbankserver (DB-Cache) ist Offline." >> $LOG
echo "$(date) :: Der Datenbankserver (DB-Cache) wird neugestartet ..." >> $LOG
cd $GAMEDIR/db && ./db &
sleep 5
PIDDBR=`ps aux | grep db | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der Datenbankserver (DB-Cache) wurde neugestartet. PID: $PIDDBR" >> $LOG
fi
# Auth
PIDAUTH=`ps aux | grep auth | grep -v grep | awk '{print $2;}'`
if [ "x$PIDAUTH" != "x" ]; then
echo "$(date) :: Der Loginserver (Auth) ist Online. PID: $PIDAUTH" >> $LOG
else
echo "$(date) :: Der Loginserver (Auth) ist Offline." >> $LOG
echo "$(date) :: Der Loginserver (Auth) wird neugestartet ..." >> $LOG
cd $GAMEDIR/auth && ./auth &
sleep 5
PIDAUTHR=`ps aux | grep auth | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der Loginserver (Auth) wurde neugestartet. PID: $PIDAUTHR" >> $LOG
fi
# Game99 1
PIDGAME991=`ps aux | grep game99 | grep -v grep | awk '{print $2;}'`
if [ "x$PIDGAME991" != "x" ]; then
echo "$(date) :: Der game99 Core ist Online. PID: $PIDGAME991" >> $LOG
else
echo "$(date) :: Der game99 Core ist Offline." >> $LOG
echo "$(date) :: Der game99 Core wird neugestartet ..." >> $LOG
cd $CH99DIR && ./game99 &
sleep 5
PIDGAME991R=`ps aux | grep game99 | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der game99 Core wurde neugestartet. PID: $PIDGAME991R" >> $LOG
fi
# First
PIDFIRST=`ps aux | grep game1 | grep -v grep | awk '{print $2;}'`
if [ "x$PIDFIRST" != "x" ]; then
echo "$(date) :: Der Game1 Core ist Online. PID: $PIDFIRST" >> $LOG
else
echo "$(date) :: Der Game1 Core ist Offline." >> $LOG
echo "$(date) :: Der Game1 Core wird neugestartet ..." >> $LOG
cd $CH1DIR/ && ./game1 &
sleep 5
PIDFIRSTR=`ps aux | grep game1 | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der Game1 Core wurde neugestartet. PID: $PIDFIRSTR" >> $LOG
fi
# First
PIDFIRST=`ps aux | grep game2 | grep -v grep | awk '{print $2;}'`
if [ "x$PIDFIRST" != "x" ]; then
echo "$(date) :: Der Game2 Core ist Online. PID: $PIDFIRST" >> $LOG
else
echo "$(date) :: Der Game2 Core ist Offline." >> $LOG
echo "$(date) :: Der Game2 Core wird neugestartet ..." >> $LOG
cd $CH1DIR/ && ./game2 &
sleep 5
PIDFIRSTR=`ps aux | grep game2 | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der Game2 Core wurde neugestartet. PID: $PIDFIRSTR" >> $LOG
fi
# First
PIDFIRST=`ps aux | grep game3 | grep -v grep | awk '{print $2;}'`
if [ "x$PIDFIRST" != "x" ]; then
echo "$(date) :: Der Game3 Core ist Online. PID: $PIDFIRST" >> $LOG
else
echo "$(date) :: Der Game3 Core ist Offline." >> $LOG
echo "$(date) :: Der Game3 Core wird neugestartet ..." >> $LOG
cd $CH1DIR/ && ./game3 &
sleep 5
PIDFIRSTR=`ps aux | grep game3 | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der Game3 Core wurde neugestartet. PID: $PIDFIRSTR" >> $LOG
fi
## Channel 2
echo
echo " ---------------------------------- " >> $LOG
echo " BEGIN WITH CHANNEL 2 " >> $LOG
echo " ---------------------------------- " >> $LOG
echo
PIDFIRST=`ps aux | grep game_ch2 | grep -v grep | awk '{print $2;}'`
if [ "x$PIDFIRST" != "x" ]; then
echo "$(date) :: Der First Core ist Online. PID: $PIDFIRST" >> $LOG
else
echo "$(date) :: Der First Core ist Offline." >> $LOG
echo "$(date) :: Der First Core wird neugestartet ..." >> $LOG
cd $CH2DIR/ && ./game_ch2 &
sleep 5
PIDFIRSTR=`ps aux | grep game_ch2 | grep -v grep | awk '{print $2;}'`
echo "$(date) :: Der First Core wurde neugestartet. PID: $PIDFIRSTR" >> $LOG
fi
echo
echo " --------------------------------- " >> $LOG
echo
fi
Corerestart Logs
Code:
----------------------------------
BEGIN WITH CHANNEL 1
----------------------------------
Mon May 4 01:04:00 CEST 2015 :: Der Datenbankserver (DB-Cache) ist Online. PID: 1236
Mon May 4 01:04:00 CEST 2015 :: Der Loginserver (Auth) ist Online. PID: 1239
Mon May 4 01:04:00 CEST 2015 :: Der game99 Core ist Offline.
Mon May 4 01:04:00 CEST 2015 :: Der game99 Core wird neugestartet ...
Mon May 4 01:04:05 CEST 2015 :: Der game99 Core wurde neugestartet. PID:
Mon May 4 01:04:05 CEST 2015 :: Der Game1 Core ist Offline.
Mon May 4 01:04:05 CEST 2015 :: Der Game1 Core wird neugestartet ...
Mon May 4 01:04:10 CEST 2015 :: Der Game1 Core wurde neugestartet. PID:
Mon May 4 01:04:10 CEST 2015 :: Der Game2 Core ist Offline.
Mon May 4 01:04:10 CEST 2015 :: Der Game2 Core wird neugestartet ...
Mon May 4 01:04:15 CEST 2015 :: Der Game2 Core wurde neugestartet. PID:
Mon May 4 01:04:15 CEST 2015 :: Der Game3 Core ist Offline.
Mon May 4 01:04:15 CEST 2015 :: Der Game3 Core wird neugestartet ...
Mon May 4 01:04:20 CEST 2015 :: Der Game3 Core wurde neugestartet. PID:
----------------------------------
BEGIN WITH CHANNEL 2
----------------------------------
Mon May 4 01:04:20 CEST 2015 :: Der First Core ist Offline.
Mon May 4 01:04:20 CEST 2015 :: Der First Core wird neugestartet ...
Mon May 4 01:04:25 CEST 2015 :: Der First Core wurde neugestartet. PID:
---------------------------------
----------------------------------







