Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[v1.4] Problem Linux event.sh Multi-Welten
#1
Ich hab das Problem, dass die event.sh nicht für beide Welten rechnet.

event.sh voher:
Quote:#!/bin/sh
# Copyright 2010 Lekensteyn
# This script is public domain and comes with NO WARRANTY of any kind
#
# Events handler (handles build queue, attacks, etc)
if test `id -u` -eq 0;then
sudo -u nobody -- "$0"
exit
fi
running=true
trap 'running=false' 1 2 3 15
cd "$(dirname "$0")/.."
BASEDIR="`pwd`"
PIDFILE="$BASEDIR/tmp/event.pid"
killed=
# if a pidfile still exist (unclean shutdown), kill that pid and wait
# 2 seconds for it to catch our signal
test -f "$PIDFILE" && kill -15 "`cat "$PIDFILE"`" >/dev/null && killed=1
printf $$ > "$PIDFILE"
test -n "$killed" && sleep 2
cd htdocs/welt1/daemons
run(){
test -f "$PIDFILE" || exit 2
sleep 1
if test ! -S "$BASEDIR/tmp/mysql.sock";then
echo 'MySQL is not running.'
return
fi
# start PHP, run build queues, attacks, etc
env -i LD_LIBRARY_PATH="$BASEDIR/lib" "$BASEDIR/php/php" event.php &
pid=$!
# check if we still should run (if we have not been killed)
while $running;do
# is PHP not running anymore? Restart it
if ! kill -0 $pid 2>/dev/null >/dev/null;then
run
return
fi
# and wait a second as we do not have to check realtime
sleep 1
done
# kill PHP
kill -15 $pid 2>/dev/null >/dev/null
}
run
detect_pid=`cat "$PIDFILE"`
test "$detect_pid" = $$ && rm -f "$PIDFILE"

Nun dachte ich mir, warum nicht das selbe nochmal unten anhängen und im unteren teil statt
cd htdocs/welt1/daemons
würde ich
cd htdocs/welt2/daemons
schreiben

Also so :

Quote:#!/bin/sh
# Copyright 2010 Lekensteyn
# This script is public domain and comes with NO WARRANTY of any kind
#
# Events handler (handles build queue, attacks, etc)
if test `id -u` -eq 0;then
sudo -u nobody -- "$0"
exit
fi
running=true
trap 'running=false' 1 2 3 15
cd "$(dirname "$0")/.."
BASEDIR="`pwd`"
PIDFILE="$BASEDIR/tmp/event.pid"
killed=
# if a pidfile still exist (unclean shutdown), kill that pid and wait
# 2 seconds for it to catch our signal
test -f "$PIDFILE" && kill -15 "`cat "$PIDFILE"`" >/dev/null && killed=1
printf $$ > "$PIDFILE"
test -n "$killed" && sleep 2
cd htdocs/welt1/daemons
run(){
test -f "$PIDFILE" || exit 2
sleep 1
if test ! -S "$BASEDIR/tmp/mysql.sock";then
echo 'MySQL is not running.'
return
fi
# start PHP, run build queues, attacks, etc
env -i LD_LIBRARY_PATH="$BASEDIR/lib" "$BASEDIR/php/php" event.php &
pid=$!
# check if we still should run (if we have not been killed)
while $running;do
# is PHP not running anymore? Restart it
if ! kill -0 $pid 2>/dev/null >/dev/null;then
run
return
fi
# and wait a second as we do not have to check realtime
sleep 1
done
# kill PHP
kill -15 $pid 2>/dev/null >/dev/null
}
run
detect_pid=`cat "$PIDFILE"`
test "$detect_pid" = $$ && rm -f "$PIDFILE"

#!/bin/sh
# Copyright 2010 Lekensteyn
# This script is public domain and comes with NO WARRANTY of any kind
#
# Events handler (handles build queue, attacks, etc)
if test `id -u` -eq 0;then
sudo -u nobody -- "$0"
exit
fi
running=true
trap 'running=false' 1 2 3 15
cd "$(dirname "$0")/.."
BASEDIR="`pwd`"
PIDFILE="$BASEDIR/tmp/event.pid"
killed=
# if a pidfile still exist (unclean shutdown), kill that pid and wait
# 2 seconds for it to catch our signal
test -f "$PIDFILE" && kill -15 "`cat "$PIDFILE"`" >/dev/null && killed=1
printf $$ > "$PIDFILE"
test -n "$killed" && sleep 2
cd htdocs/welt2/daemons
run(){
test -f "$PIDFILE" || exit 2
sleep 1
if test ! -S "$BASEDIR/tmp/mysql.sock";then
echo 'MySQL is not running.'
return
fi
# start PHP, run build queues, attacks, etc
env -i LD_LIBRARY_PATH="$BASEDIR/lib" "$BASEDIR/php/php" event.php &
pid=$!
# check if we still should run (if we have not been killed)
while $running;do
# is PHP not running anymore? Restart it
if ! kill -0 $pid 2>/dev/null >/dev/null;then
run
return
fi
# and wait a second as we do not have to check realtime
sleep 1
done
# kill PHP
kill -15 $pid 2>/dev/null >/dev/null
}
run
detect_pid=`cat "$PIDFILE"`
test "$detect_pid" = $$ && rm -f "$PIDFILE"

Dies hat auch geklappt !
ABER es klappt nur solange beide welten in
htdocs/welt1/include/config.php
und
htdocs/welt2/include/config.php
auf die selbe Datenbank zugreifen. (z.B. lan-w1)

Wenn ich aber htdocs/welt2/include/config.php die Datenbank in lan-w2 umschreibe (die auch exestiert und alles fuktioniert ect.) , werden die events (angriffe ect.) nicht berechnet.

somit wird dann nur welt 1 berechnet und nicht mehr welt 2.

Wie kann ich nun beide Welten eine unterschiedliche Datenbank geben und auf beiden Welten die events auch berechnet lassen?

MfG
Crusher
Reply


Messages In This Thread
Problem Linux event.sh Multi-Welten - by Crusher - 16.03.2011, 12:19



Users browsing this thread: 1 Guest(s)