Jump to content

Aviator86

Members
  • Posts

    51
  • Joined

  • Last visited

Posts posted by Aviator86

  1. Hey Alloc,

     

    I just wanted to give you a headsup what i noticed the other day my server was filling up with memory (there where multiple instances running of the same instance). I was reading trough the scripts and saw that theese entire isrunning is based that the pid file exists.

     

    I looked farther where you stop the server in kill.sh there is something which i do not know if it safe but you end the process with

    if [ $(isRunning $1) -eq 1 ]; then

    echo "Failed, force closing server..."

    $SSD --stop --pidfile $(getInstancePath $1)/7dtd.pid

    fi

     

    $PKILL -TERM -P $(cat $(getInstancePath $1)/monitor.pid)

    rm $(getInstancePath $1)/monitor.pid

     

    rm $(getInstancePath $1)/7dtd.pid

     

     

    After

     

    $SSD --stop --pidfile $(getInstancePath $1)/7dtd.pid

     

    You just assume that the Pid is gone and delete the

     

    rm $(getInstancePath $1)/7dtd.pid

     

    which then never allows the function isrunning (which prevent for multiple instances to run or indicates the process still runs) to get true and you can start multiple instances. I noticed that where the server crashed you killed the server the script said it was killed but ir was still in the process list and i could start another process caused than there to be 2.

     

    Maybe if you get time you can look into that or just add an PS AUX there example:

    PID=$(ps aux | grep $1 | grep 7DaysToDieServer | grep -v grep |awk '{print $2}')

    f [ -z "$PID" ]; then

    echo "$(date) - PROCESS IS DEFENTLY CLOSED"

    else

    echo "$(date) - PROCESS IS STILL ALIVE WHEN IT SHOUDN'T FOUND PID:$PID "

    kill -9 $PID

    fi

     

    This is what i used to make sure it is Closed without trusting the start stop daemon

  2. I had the issue with the map too no reaction not showing icons. I downloaded the svn and complied it myself uploaded the map addon no more issue. I was wondering why the map xml shows version 4 in the script tar but on the actually svn it shows 5.

  3. i Run into 2 Issues:

     

    First i run a server for weeks now in 32Bit mode instead of 64bit (should pay more attention).

    I changed my start.sh.

     

    i replaced this:

    LC_ALL=C LD_LIBRARY_PATH=$SDTD_BASE/engine $SSD --start $SSD_PID $SSD_DAEMON $SSD_USER --chdir $SDTD_BASE/engine --exec $SDTD_BASE/engine/7DaysToDieServer.x86 -- $OPTS > $(getInstancePath $1)/logs/stdout.log 2>&1

     

    with this:

    if [ $(uname -m) == 'x86_64' ]; then

    LC_ALL=C LD_LIBRARY_PATH=$SDTD_BASE/engine $SSD --start $SSD_PID $SSD_DAEMON $SSD_USER --chdir $SDTD_BASE/engine --exec $SDTD_BASE/engine/7DaysToDieServer.x86_64 -- $OPTS > $(getInstancePath $1)/logs/stdout.log 2>&1

    else

    LC_ALL=C LD_LIBRARY_PATH=$SDTD_BASE/engine $SSD --start $SSD_PID $SSD_DAEMON $SSD_USER --chdir $SDTD_BASE/engine --exec $SDTD_BASE/engine/7DaysToDieServer.x86 -- $OPTS > $(getInstancePath $1)/logs/stdout.log 2>&1

    fi

     

    It Basicly detects the Kernel you are using if 32Bit or 64Bit and then starts either the 32bit executable or the 64bit executable.

     

     

    The other one was the status.sh

     

    i was getting Following Output:

    Status: Running

    Open ports:

    23002 (tcp)

    24000 (tcp)

    25000 (udp)

    25001 (udp)

    25002 (udp)

    Players: (standard

     

    Game info:

    Server name: North Carolina PVE

    Password:

    Max players: 32

    World: Random Gen

     

    See how the Current Players show (standard instead a number. Aparently this is an issue with grep if you took the regex out you got following output

    Binary file (standard input) matches

     

    so i change thi:

    cur=$(telnetCommand $1 lp | grep -E "^\s?Total of " | cut -d\ -f 3)

     

    and change this into:

    cur=$(telnetCommand $1 lp | grep --text -E "^\s?Total of " | cut -d\ -f 3)

     

    and got now following output:

    Instance: NCSurvival

     

    Status: Running

    Open ports:

    23002 (tcp)

    24000 (tcp)

    25000 (udp)

    25001 (udp)

    25002 (udp)

    Players: 13

     

    Game info:

    Server name: North Carolina PVE

    Password:

    Max players: 32

    World: Random Gen

     

    i noticed the same thing in the instances.sh

    Instance name | Running | Players | Port

    ---------------------+----------+---------+------

    NCSurvival | yes | (standard/32 | 25000

    test | no | -/ 4 | 25100

     

    changed there:

    cur=$(telnetCommand $I lp | grep -E "^\s?Total of " | cut -d\ -f 3)

    into:

    Instance name | Running | Players | Port

    ---------------------+----------+---------+------

    NCSurvival | yes | 14/32 | 25000

    test | no | -/ 4 | 25100

    server:~# 7dtd.sh instances list

    Instance name | Running | Players | Port

    ---------------------+----------+---------+------

    NCSurvival | yes | 14/32 | 25000

    test | no | -/ 4 | 25100

    server:~# 7dtd.sh instances list

    Instance name | Running | Players | Port

    ---------------------+----------+---------+------

    NCSurvival | yes | 14/32 | 25000

    test | no | -/ 4 | 25100

    server:~# 7dtd.sh instances list

    Instance name | Running | Players | Port

    ---------------------+----------+---------+------

    NCSurvival | yes | 14/32 | 25000

    test | no | -/ 4 | 25100

     

    Maybe this helps somebody!

×
×
  • Create New...