virkning af killall
Jeg har lavet dette shell-script, som jeg bruger til at lukke min MOHAA-server ned, og bruge logfilen derfra, til at opdatere min hjemmeside med spillerstatus:----------------------- Script -------------------------
#!/bin/sh
LOGFILE=/home/MOHAA/main/mohaa.log
STATDIR=/home/MOHAA/stats/mohstats
OUTDIR=/var/www/html/stats
FILENAME=`date +%g%m%d%H%M`.log
# warn anybody still here
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 10 minutes from now !!!
sleep 300
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 5 minutes from now !!!
sleep 180
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 2 minutes from now !!!
sleep 60
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 1 minute from now !!!
sleep 30
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 30 seconds from now !!!
sleep 10
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server will restart for update 20 seconds from now !!!
sleep 10
for (( i = 10 ; i >= 0; i-- ))
do
/home/MOHAA/stats/rcon.sh say ATTENTION !!! Server restarts for website update in seconds: $i
sleep 1
done
# kill server
killall mohaa_lnxded >/dev/null 2>/dev/null
sleep 5
# run stats
cd $STATDIR
touch $LOGFILE
mv $LOGFILE logs/$FILENAME
rm -f $OUTDIR/*.html
gunzip cache
php -q mohstats.php logs/$FILENAME
gzip cache
gzip logs/$FILENAME
# start server
cd /home/MOHAA
export DISPLAY=:2
/home/MOHAA/mohaa_lnxded +set dedicated 2 +set fs_outputpath /home/MOHAA +set logfilename mohaa.log +set developer 1 +set logfile 3 +set net_IP xx.xxx.xx.xx +set net_port 12203 +exec server.cfg >/dev/null 2>/dev/null &
---------------------- /script ---------------------
Problemet er nu. at jeg ikke er så hård til scripting endnu, så jeg har været nødt til, at 'låne' lidt fra andre.
Der for er der et par ting jeg ikke er helt klar over funktionen af. Det drejer sig om flg.:
1) /dev/null 2>/dev/null
Hvad er denne kommando's funktion, i forbindelse med nedlukning og genstart af serveren, I DETALJER ?
2) export DISPLAY=:2
Samme spørgsmål... Hvad gør den egentlig.
Resten er min egen konstruktion, så det kender jeg. :-)
Problemet er, at jeg kører dette script fra crontab 4 gange dagligt, men efter et par dage går serveren ned og vil ikke boote igen men stopper med et par fejl i retning af :
rc.d/rc.sysinit line 90 44 segmentation fault sysinit LC_ALL grep i /proc/mounts.
Ikke ordret gengivet, men noget i den retning...
3) Kan dette have noget at gøre, med et af de 2 første spørgsmål ?
Har geninstalleret alt nu, så håber jeg får et svar, som kan forhindre disse nedbrud, som jeg efterhånden har haft 4-5 stykker af på 2 måneder.
Til at starte med kørte jeg RH 8.0 sidste gang og nu 9.0
