mirror of
https://github.com/eliasstepanik/ark-ac-server-tools.git
synced 2026-01-17 12:48:28 +00:00
Merge branch 'klightspeed#dev#1.1' into dev#1.1
# Conflicts: # tools/arkmanager
This commit is contained in:
commit
92c162543d
@ -16,7 +16,13 @@ fi
|
||||
#---------------------
|
||||
|
||||
# Global variables
|
||||
source /etc/arkmanager/arkmanager.cfg
|
||||
if [ -f "/etc/arkmanager/arkmanager.cfg" ]; then
|
||||
source /etc/arkmanager/arkmanager.cfg
|
||||
fi
|
||||
|
||||
if [ -f "${HOME}/.arkmanager.cfg" ]; then
|
||||
source "${HOME}/.arkmanager.cfg"
|
||||
fi
|
||||
|
||||
# Local variables
|
||||
info=""
|
||||
@ -122,10 +128,33 @@ doStart() {
|
||||
if isTheServerRunning; then
|
||||
echo "The server is already running"
|
||||
else
|
||||
arkserveropts="TheIsland?SessionName=$sessioname?QueryPort=$arkqueryport?ServerPassword=$arkserverpass?ServerAdminPassword=$arkserverapass?listen"
|
||||
thejob="$arkserverroot/$arkserverexec $arkserveropts"
|
||||
ark_SessionName="${ark_SessionName:-${sessionname}}"
|
||||
ark_Port="${ark_Port:-${arkserverport}}"
|
||||
ark_QueryPort="${ark_QueryPort:-${arkqueryport}}"
|
||||
ark_ServerPassword="${ark_ServerPassword:-${arkserverpass}}"
|
||||
ark_ServerAdminPassword="${ark_ServerAdminPassword:-${arkserverapass}}"
|
||||
arkserveropts="TheIsland"
|
||||
|
||||
# bring in ark_... options
|
||||
for varname in "${!ark_@}"; do
|
||||
name="${varname#ark_}"
|
||||
val="${!varname}"
|
||||
|
||||
# Port is actually one higher than specified
|
||||
# i.e. specifying port 7777 will have the server
|
||||
# use port 7778
|
||||
if [ "$name" == "Port" ]; then
|
||||
(( val = val - 1 ))
|
||||
fi
|
||||
|
||||
if [ -n "$val" ]; then
|
||||
arkserveropts="${arkserveropts}?${name}=${val}"
|
||||
fi
|
||||
done
|
||||
|
||||
arkserveropts="${arkserveropts}?listen"
|
||||
# run the server in background
|
||||
$thejob >/dev/null 2>&1 &
|
||||
nohup "$arkserverroot/$arkserverexec" "$arkserveropts" </dev/null >/dev/null 2>&1 &
|
||||
echo "$timestamp: start" >> "$logdir/arkserver.log"
|
||||
fi
|
||||
}
|
||||
@ -149,7 +178,7 @@ doStop() {
|
||||
# install of ARK server
|
||||
#
|
||||
doInstall() {
|
||||
mkdir -p $arkserverroot
|
||||
mkdir -p "$arkserverroot"
|
||||
|
||||
cd "$steamcmdroot"
|
||||
# install the server
|
||||
@ -174,9 +203,7 @@ doUpdate() {
|
||||
doStop
|
||||
cd "$steamcmdroot"
|
||||
./$steamcmdexec +login anonymous +force_install_dir "$arkserverroot" +app_update $appid +quit
|
||||
cd "$logdir"
|
||||
echo "$bnumber" > "$arkserverroot/arkversion"
|
||||
cd "$steamcmdroot"
|
||||
echo "$timestamp: update to $bnumber complete" >> "$logdir/update.log"
|
||||
|
||||
# we restart the server only if it was started before the update
|
||||
|
||||
@ -12,6 +12,9 @@ arkserverport="7778" # ARK server
|
||||
arkserverpass="SERVERPASSWORD" # ARK server password, empty: no password required to login
|
||||
arkserverapass="ADMINPASSWORD" # ARK server admin password, KEEP IT SAFE!
|
||||
|
||||
# other options - use ark_<optionname>=<value>
|
||||
ark_MaxPlayers="70"
|
||||
|
||||
# config Service
|
||||
servicename="arkserv" # Name of the service (don't change if you don't know what are you doing)
|
||||
logdir="/var/log/arktools" # Logs path (default /var/log/arktools)
|
||||
|
||||
@ -1,31 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ ! -z $1 ]; then
|
||||
EXECPREFIX="${EXECPREFIX:-/usr/local}"
|
||||
|
||||
if [ ! -z "$1" ]; then
|
||||
# Copy arkmanager to /usr/bin and set permissions
|
||||
cp arkmanager /usr/bin/arkmanager
|
||||
chmod +x /usr/bin/arkmanager
|
||||
cp arkmanager "${INSTALL_ROOT}${EXECPREFIX}/bin/arkmanager"
|
||||
chmod +x "${INSTALL_ROOT}${EXECPREFIX}/bin/arkmanager"
|
||||
|
||||
# Copy arkdaemon to /etc/init.d ,set permissions and add it to boot
|
||||
cp arkdaemon /etc/init.d/arkdaemon
|
||||
chmod +x /etc/init.d/arkdaemon
|
||||
cp arkdaemon "${INSTALL_ROOT}/etc/init.d/arkdaemon"
|
||||
chmod +x "${INSTALL_ROOT}/etc/init.d/arkdaemon"
|
||||
# add to startup if the system use sysinit
|
||||
if [ -x /usr/sbin/update-rc.d ]; then
|
||||
if [ -x /usr/sbin/update-rc.d -a -z "${INSTALL_ROOT}" ]; then
|
||||
update-rc.d arkdaemon defaults
|
||||
echo "Ark server will now start on boot, if you want to remove this feature run the following line"
|
||||
echo "update-rc.d -f arkdaemon remove"
|
||||
fi
|
||||
|
||||
# Create a folder in /var/log to let Ark tools write its own log files
|
||||
mkdir -p /var/log/arktools
|
||||
chown $1 /var/log/arktools
|
||||
mkdir -p "${INSTALL_ROOT}/var/log/arktools"
|
||||
chown "$1" "${INSTALL_ROOT}/var/log/arktools"
|
||||
|
||||
# Copy arkmanager.cfg inside linux configuation folder if it doesn't already exists
|
||||
if [ -f /etc/arkmanager/arkmanager.cfg ]; then
|
||||
mkdir -p "${INSTALL_ROOT}/etc/arkmanager"
|
||||
if [ -f "${INSTALL_ROOT}/etc/arkmanager/arkmanager.cfg" ]; then
|
||||
echo "A previous version of ARK Server Tools was detected in your system, your old configuration was not overwritten. You may need to manually update it."
|
||||
exit 2
|
||||
else
|
||||
cp -n arkmanager.cfg /etc/arkmanager/arkmanager.cfg
|
||||
chown $1 /etc/arkmanager/arkmanager.cfg
|
||||
cp -n arkmanager.cfg "${INSTALL_ROOT}/etc/arkmanager/arkmanager.cfg"
|
||||
chown "$1" "${INSTALL_ROOT}/etc/arkmanager/arkmanager.cfg"
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user