在Centos7上部署ARK服务器


前几天趁着打折入了ARK 今天就来在Centos7上部署ARK服务器

注意: ARK需要大量的内存,请确保至少有4G的内存可用

1.更新系统并安装依赖,这里我习惯使用vim

1
yum update -y&&yum install vim tar wget glibc libgcc libstdc++ screen -y

2.建立一个专门用来运行服务器的用户,确保系统安全

1
adduser steam

3.安装之前先配置一下系统

1
2
3
echo "fs.file-max=100000" >> /etc/sysctl.conf
echo "* soft nofile 1000000" >> /etc/security/limits.conf
echo "* hard nofile 1000000" >> /etc/security/limits.conf

4.安装steamcmd和ark服务端

1
2
3
4
5
6
su steam
cd ~
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -zxvf steamcmd_linux.tar.gz
rm steamcmd_linux.tar.gz
./steamcmd.sh +login anonymous +force_install_dir ./server/ark +app_update 376030 validate +quit

经过漫长的等待后,终于安装完成 安装完成后,你可以看到以下消息

1
2
3
 Update state (0x101) committing, progress: 87.10 (9972768543 / 11450170670)
Update state (0x101) committing, progress: 99.86 (11434458588 / 11450170670)
Success! App '376030' fully installed.

5.启动脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
cat <<EOF > ./ark.sh
#!/bin/bash

servername="ServerName"
port="7777"
queryport="27015"
rconport="32330"
rconpassword="YourAdminPassword"
maxplayers="50"

screen -dmS ark /home/steam/server/ark/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?Multihome=0.0.0.0?SessionName=$?MaxPlayers=$?QueryPort=$?RCONPort=$?Port=$?ServerAdminPassword=$ -server -log
EOF
chmod +x ./ark.sh

6.要启动服务器,请执行以下命令:

1
./ark.sh

服务器将在后台运行。请注意,服务器可能需要一分钟左右的时间才能启动。

7.要关闭服务器,请运行以下命令:

1
screen -S ark -X quit

8.防火墙 如果连不上服务器,请检查防火墙是否开放相关端口

1
2
3
firewall-cmd --add-port=27015/udp
firewall-cmd --add-port=7777/udp
firewall-cmd --add-port=32330/tcp

这是每个端口的用途:

  • UDP 27015:Steam服务器浏览器的查询端口
  • UDP 7777:游戏客户端端口
  • TCP 32330:用于远程控制台服务器访问的RCON(可选)