Jump to content
dazhbog

Linux Dedicated Server feedback

Recommended Posts

experimental PERFormance build of 1.20 with hardlinkdd Jemalloc https://www.dropbox.com/sh/582opsto4mmr8d8/3BSy9PdRGm

120stable_jemalloc_arma3server.tar.gz

compatible with stable clients ofcourse

Thx you again for this wonderfull patch who increased a lot my server performance ;)

It will be included in a future official release ? And yes, if it's the case ?

Last question, I think it activate mlticore option, I am wrong ?

Share this post


Link to post
Share on other sites

Check with top/htop

steamcmd fucked up again?

Steam>app_update 233780

Initial App state (0x2) update required

App state (0x4) installed: Timed out waiting for state flag (0x100) 'update running' to be set, bailing.

Success! App '233780' fully installed.

4.0K Arma 3 Server/

no comment.

Edited by yxman

Share this post


Link to post
Share on other sites
Check with top/htop

steamcmd fucked up again?

Steam>app_update 233780

Initial App state (0x2) update required

App state (0x4) installed: Timed out waiting for state flag (0x100) 'update running' to be set, bailing.

Success! App '233780' fully installed.

4.0K Arma 3 Server/

no comment.

Yes, I have already watched with htop, hard to say, because the graphs move very fast and I have another services on the server...I think multicore is on, but not sure.

No problem with steam update for me now...

[ 0%] Checking for available updates...

[----] Verifying installation...

Steam Console Client © Valve Corporation

-- type 'quit' to exit --

Loading Steam3...OK.

Logging in user 'xxxxxxxx' to Steam Public...Success.

Success! App '233780' already up to date.

Share this post


Link to post
Share on other sites

strange...

check with top > shift+p

q to exit

upd: works now, thanks steamcrap

@dwarden: the new binary, finally windows performance under linux <3

coming to next mayor stable patch?

Edited by yxman

Share this post


Link to post
Share on other sites

Update today !

The new version of arma3server is the same than your patch ? Is there a changelog ?

Share this post


Link to post
Share on other sites

quick test and i gotta say... good job! better performance now with linux than with wine.... excellent! thank you!

---------- Post added at 09:14 PM ---------- Previous post was at 09:00 PM ----------

Hi,

thank's for the linux's arma 3 server, i use it on my debian but i got some probleme to run in deamon.

When i start my script in /home/steam/games/arma3 => it's work !

No product.bin found, using defaults for a core engine.
Cannot open steam_appid.txt file.
Will use default ARMA3 steam app id (107410)
Unable to locate a running instance of Steam. Restarting...
../lib/Network/networkServer.cpp ClearNetServer:NOT IMPLEMENTED - briefing!
Unable to locate a running instance of Steam
Running Steam on debian 7 64-bit
STEAM_RUNTIME is enabled automatically
Unpack runtime failed, error code 1
Error:
Couldn't set up the Steam Runtime. Are you running low on disk space?
Continuing...
Couldn't start bootstrap and couldn't reinstall from /usr/lib/steam/bootstraplin                                                                                                                                                             ux_ubuntu12_32.tar.xz.  Please contact technical support.

It's seem steam don't find certain files but i don't know how modify my script to say steam "Hey ! The files you need are HERE".

Yeah, i know i can use screen for launch my server and logout putty, but i want launch the server in deamon for can stop / start him from a web page with php SSH_lib.

I've search since two day, try different way but none of them work .. Please help me, how launching this on deamon ? Anyone have already do it ?

Thank before :x

I use this script from arma2 modified by DaOrange.. here it is... just modify your installation folders and go ahead use it like in arma2... script start|stop|restart|status|check...

If you have issue getting it done let me know.

#!/bin/bash
#
# armaserver: ArmA 2 Linux Dedicated Server Control Script
#  (c) 2010 BIStudio
#  ArmA 2 binary version must be 1.04 or later
#
##
## slightly addapted by DaOarge for Arma3
##

#=======================================================================
#========               CONFIGURATION PARAMETERS                ========
#======== MUST BE EDITED MANUALLY TO FIT YOUR SYSTEM PARAMETERS ========
#=======================================================================
ARMA_DIR=/home/arma3
CONFIG=server.cfg
PORT=2302
PIDFILE=${ARMA_DIR}/${PORT}.pid
RUNFILE=${ARMA_DIR}/${PORT}.run
LOGFILE=${ARMA_DIR}/log.a3.${PORT}.txt
SERVER=${ARMA_DIR}/arma3server
#OTHERPARAMS="-cpucount=2"
OTHERPARAMS="-cpucount=2 -maxMem=2047"
#=======================================================================
ulimit -c 1000000

case "$1" in


   start)
if [ -f ${RUNFILE} ]; then
    $0 stop
fi
echo "Starting A3 PUBLIC 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 A3 PUBLIC server..."
if [ -f ${RUNFILE} ]; then
# ask watcher process to exit by deleting its runfile...
    rm -f ${RUNFILE}
fi
# and terminate ArmA 2 server process
if [ -f ${PIDFILE} ]; then
    kill -TERM $(< ${PIDFILE})
    if [ -f ${PIDFILE} ]; then
	rm -f ${PIDFILE}
    fi
fi
;;


   status)
if [ -f ${RUNFILE} ]; then
    echo "A3 PUBLIC server should be running..."
else
    echo "A3 PUBLIC 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 "OK"
else
    echo "MISSING!"
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 -config=${CONFIG} -port=${PORT} -pid=${PIDFILE} ${OTHERPARAMS}
    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

Share this post


Link to post
Share on other sites

Performance is great. But for some reason, custom sounds aren't playing for people who don't already have the .ogg files.

Arma3.cfg includes this line:

MaxCustomFileSize=400000;

Share this post


Link to post
Share on other sites

Performance is brilliant, BE and signature verification seem to work - finally I can dump the wine server and its gazillions of dependencies :)

Good work and big THANKS from my side!

Share this post


Link to post
Share on other sites
Performance is brilliant, BE and signature verification seem to work - finally I can dump the wine server and its gazillions of dependencies :)

Good work and big THANKS from my side!

Can we close it internally as fixed then? Does anyone else have performance issues connected to 'mallinfo()' calls?

Share this post


Link to post
Share on other sites
Can we close it internally as fixed then? Does anyone else have performance issues connected to 'mallinfo()' calls?
After several runs I can confirm that you can consider this issue closed!

Thanks for solving and making the linux server fully fit for production.

Share this post


Link to post
Share on other sites
Can we close it internally as fixed then? Does anyone else have performance issues connected to 'mallinfo()' calls?

Yes, after having some nice sessions I can also confirm that the current Linux server is working excellent!

There are just two minor things: memory consumption is +50% compared to the wine+windows server solution and even after the last player exited the server, the server binary keeps on consuming quite a lot of CPU cycles. But I defo can live with that.

Thanks again and plz (with a big sugar coating on top), don't let us wait that long for a working Linux server again in Arma4 :-D

Share this post


Link to post
Share on other sites

@Mike187 thank you so much, it's working perfectly ! Finally .. After many hours of work to make this work, you save my mental life !

Share this post


Link to post
Share on other sites

I set the verifySignatures=2 and I get the following error:

bSRJgVO.jpg

Can anyone help me on why this is happening? I don't have any mods enabled....:(

---------- Post added at 08:00 ---------- Previous post was at 07:20 ----------

Unfortunately not, Im struggling with the same problem.

I ran tolower, I checked the file and folder permissions and I even started the server as root. No success.

But at least the "builtin" missions work properly.

I can't confirm that.

At my installation it's the verifySignatures = 2; variable, which immediately kicks me off my server.

Setting this variable to 0 lets me joining my server w/o any problems. Nevertheless I can't choose any of the mission I've uploaded to the servers mpmissions directory (they're not even displayed in the mission selection screen).

When getting kicked off, I get this imho slightly weird error message as well on screen as in my .rpt file:

As a next step, i exchanged the a3.bikey from the server keys\ folder with the file from my game directory. Same outcome, same error message.

Anyone got some ideas?

Did you get this fixed?

Share this post


Link to post
Share on other sites

check ur installation dir for a folder called "keys" a3.bikey should be inside.

Share this post


Link to post
Share on other sites

I never get the server to run

I always get

./arma3server: /usr/lib32/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/server/arma3/libsteam_api.so)

Any Fix?

Share this post


Link to post
Share on other sites
Did you get this fixed?

Yep, signature verification works for me.

I never get the server to run

I always get

./arma3server: /usr/lib32/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/server/arma3/libsteam_api.so)

Any Fix?

Which gcc/libstdc++ version is installed on your machine? If your server is running on Centos 6.5 like mine, you need to upgrade the following packages to v4.7:

libgcc47-4.7.2-8.el6.x86_64

gcc47-c++-4.7.2-8.el6.x86_64

libstdc++47-4.7.2-8.el6.x86_64

libstdc++47-devel-4.7.2-8.el6.x86_64

gcc47-4.7.2-8.el6.x86_64

Here is the yum repo I'm using to get this rpms:

[xexyl]
name=Xexyl RPM Packages - $basearch
baseurl=http://rpm.xexyl.net/redhat/6/$basearch/RPMS
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xexyl

[xexyl-debug]
name=Xexyl RPM Packages - $basearch - Debug
baseurl=http://rpm.xexyl.net/redhat/6/$basearch/debug
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xexyl
gpgcheck=1

[xexyl-source]
name=Xexyl RPM Packages - $basearch - Source
baseurl=http://rpm.xexyl.net/redhat/6/source/SRPMS
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-xexyl
gpgcheck=1

But there might be something else left to do, which I can't remember now...

Edited by DaOarge

Share this post


Link to post
Share on other sites

@NicoandLuis

maybe this server start script will help you:

#!/bin/bash
#
# armaserver: ArmA 3 Linux Dedicated Server Control Script EDIT by EviLSeeD

#=======================================================================
#========               CONFIGURATION PARAMETERS                ========
#======== MUST BE EDITED MANUALLY TO FIT YOUR SYSTEM PARAMETERS ========
#=======================================================================
ARMA_DIR=[color="#FF0000"]/home/server/steam/arma3[/color]
CONFIG=[color="#FF0000"]server_a3.cfg[/color]
PORT=[color="#FF0000"]2302[/color]
PIDFILE=${ARMA_DIR}/${PORT}.pid
RUNFILE=${ARMA_DIR}/${PORT}.run 
LOGFILE=${ARMA_DIR}/${PORT}.log
SERVER=${ARMA_DIR}/arma3server 
OTHERPARAMS="-ip=[color="#FF0000"]YOUR.SERVER.IP[/color] -name=[color="#FF0000"]YOUR_NAME_FOR_USERCONFIG[/color] -cfg=[color="#FF0000"]arma3.cfg[/color] -cpucount=4 -maxmem=2047 -nologs -nosound -world=empty"
#=======================================================================

#=======================================================================
# Auto Addon loading
# create 2 Folders in the Arma Root Directory called mods and mods_off
# to activate: put your @mod folder in  the mods folder and it will load automatically after restart,
# you don´t need to add it to the server start parameters.
# to deactivate: put it in the mods_off folder
# for the mod loading order use numbers instead @ for your mod, like this
#  10_cba
#  11_asr_ai
#  ...
#  20_island1
#  21_island2
#  ...
#  30_weaponmod1
#  ...
#======================================================================= 
cd ${ARMA_DIR}
SCAN=`find mods -mindepth 1 -maxdepth 1 -type d -exec echo {} \; | sort | tr -d "." | tr "\n" "\;"`
MODS=${SCAN/%;/}
#=======================================================================

ulimit -c 1000000

case "$1" in

start)
if [ -f ${RUNFILE} ]; then
$0 stop
fi
echo "Starting ArmA 3 server with following mods:"
echo "${SCAN}"
# file to mark we want server running...
export LD_LIBRARY_PATH=[color="#FF0000"]/home/server/steam/arma3/[/color]:"$LD_LIBRARY_PATH"
echo "go" >${RUNFILE}
# launch the background watchdog process to run the server
nohup </dev/null >/dev/null $0 watchdog &
;;

stop)
echo "Stopping ArmA 3 server..."
if [ -f ${RUNFILE} ]; then
# ask watcher process to exit by deleting its runfile...
rm -f ${RUNFILE}
fi
# and terminate ArmA 3 server process
if [ -f ${PIDFILE} ]; then
kill -TERM $(< ${PIDFILE})
if [ -f ${PIDFILE} ]; then
rm -f ${PIDFILE}
fi
fi
;;


status)
if [ -f ${RUNFILE} ]; then
echo "ArmA 3 Server should be running..."
else
echo "ArmA 3 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 3 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 "OK"
else
echo "MISSING!"
fi

echo "PID file: ${PIDFILE}"
echo "RUN file: ${RUNFILE}"

;;

restart)
$0 stop
$0 start
;;

update)
$0 stop
cd [color="#FF0000"]/home/server/steam[/color]
./steamcmd.sh +login [color="#FF0000"]YOUR_STEAM_NAME YOUR_STEAM_PASS[/color] +force_install_dir ${ARMA_DIR} +app_update 233780 +quit
;;

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 -config=${CONFIG} -port=${PORT} -pid=${PIDFILE} -mod=${MODS} ${OTHERPARAMS}
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|update|status|check)"
;;
esac

name the startscript arma3start.sh or whatever you want.

check the red marked areas in the script and change it for your Server.

The script is also for stress-free mod loading (manual is in script).

You can use this script for Arma 3 Server start, stop, update or (when not installed) for Server Installation.

./arma3start.sh -start

./arma3start.sh -stop

./arma3start.sh -update (for update und installation)

Edited by Logo

Share this post


Link to post
Share on other sites
I never get the server to run

I always get

./arma3server: /usr/lib32/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/server/arma3/libsteam_api.so)

Any Fix?

Review the following installation instructions: http://otoris.com/installing-an-arma-iii-server-on-ubuntu/ (I followed these, and they worked for me)

I suspect you are using a 64-bit server installation of linux, the application is 32-bit however. So you need to install the 32-bit libraries.

Edited by ozzbik

Share this post


Link to post
Share on other sites

I have 32 bit libraries installed because I needed them for other stuff, too. Yet it still not works.

Share this post


Link to post
Share on other sites

Hi all hems and resolved errors weapon 3 servers in game Tcadmin panel, with 64 bit linux versions centos, ubuntu linux and windows 12 and 13, 2008 and 2012, if you need help just now get her thanks

Share this post


Link to post
Share on other sites
I didn't get the above post

My OS is Debian x64 btw

Version? Stable/Unstable/Testing?

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×