Arma 3作为一款硬核军事模拟游戏,其多人服务器搭建需要一定的技术基础,相比Windows系统,Linux服务器凭借更高的稳定性、更低的资源占用和更强的命令行管理能力,成为许多资深玩家的首选,本文将详细介绍在Linux环境下搭建Arma 3服务器的完整流程,从环境准备到配置优化,助你快速部署属于自己的游戏服务器。

环境准备与基础配置
在开始搭建前,需确保服务器满足基本要求并完成初始化设置。
硬件与系统要求
- 硬件配置:建议至少2核CPU、4GB内存(推荐8GB以上)、20GB可用存储空间,带宽根据玩家数量调整(10人以上建议100Mbps以上)。
- 操作系统:推荐Ubuntu 20.04 LTS或22.04 LTS,社区文档和教程资源丰富,兼容性较好。
- 网络环境:确保服务器有公网IP(或内网端口映射),并开放以下端口:
- UDP 2302-2303(游戏主端口)
- UDP 2305(Steam查询端口)
- TCP 27015(Steam远程端口)
初始化系统设置
以Ubuntu为例,首先更新系统并安装必要依赖:
sudo apt update && sudo apt upgrade -y sudo apt install -y software-properties-common wget curl unzip tar
创建独立用户运行服务器(避免使用root):
sudo adduser arma3user sudo usermod -aG sudo arma3user su - arma3user
后续操作均在arma3user用户下进行,提升安全性。
安装SteamCMD与Arma 3服务器
Arma 3服务器需通过SteamCMD下载和管理,SteamCMD是Steam官方的命令行工具,支持Linux系统。
安装SteamCMD
创建SteamCMD安装目录并下载运行:
mkdir ~/steamcmd && cd ~/steamcmd wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz tar -xzvf steamcmd_linux.tar.gz ./steamcmd.sh
进入SteamCMD交互界面后,登录匿名用户(无需注册Steam账号):
login anonymous force_install_dir ~/arma3server # 设置服务器安装路径
下载Arma 3服务器文件
在SteamCMD中执行以下命令,下载最新稳定版服务器(若需测试版可添加-beta development参数):
app_update 233780 validate exit # 退出SteamCMD
下载完成后,服务器文件位于~/arma3server目录,需赋予执行权限:
chmod +x ~/arma3server/arma3server
配置服务器核心参数
服务器配置是影响游戏体验的关键,需通过server.cfg文件和启动脚本实现。

编辑server.cfg
在~/arma3server目录下创建server.cfg文件(若已存在则编辑):
nano ~/arma3server/server.cfg
以下是核心参数配置示例(可根据需求调整):
// 服务器基本信息
hostname = "My Arma 3 Server";
password = ""; // 服务器连接密码(留空则无密码)
maxPlayers = 20; // 最大玩家数量
kickDuplicate = 1; // 踢出重复ID玩家
verifySignatures = 1; // 强制验证模组签名
allowedFilePatching = 0; // 禁用文件修补(防止作弊)
// 网络与任务设置
networkName = "Arma3";
motd[] = {"欢迎来到本服务器!", "请遵守服务器规则"};
motdInterval = 60; // MOTD(每日消息)显示间隔(秒)
// 管理员权限(Steam64位ID)
adminPassword = "your_admin_password"; 保存文件后(Ctrl+O → Enter → Ctrl+X),确保权限正确:chmod 644 ~/arma3server/server.cfg。
创建启动脚本
为方便管理,创建启动脚本start.sh:
nano ~/arma3server/start.sh ``` 根据服务器配置调整参数): ```bash #!/bin/bash # 内存分配(单位:MB,建议总内存的70%-80%) MEMORY=4096 # 核心数限制(根据CPU核心数调整) CORES=2 # 模组路径(若使用模组需配置) MODS="@mod1;@mod2" # 任务文件名(需与`mpmissions`目录下文件一致) MISSION="Altis.Altis" ./arma3server -name=server -config=server.cfg -mod=$MODS -serverMod=@Expansion;@Contact;@Karts;@Marksmen;@GM;@APEX;@Jets;@LingorIsland;@Tanoa -profiles=server_profile -world=empty -port=2302 -cpuCount=$CORES -maxMem=$MEMORY -malloc=system -enableHT -autoInit -mission=mpmissions/$MISSION.Altis -noPause -limitFPS=10000
赋予执行权限:chmod +x ~/arma3server/start.sh。
启动服务器与日常维护
启动服务器
直接运行启动脚本即可启动服务器:
./start.sh
首次启动会自动生成server_profile目录,并加载默认任务,若需后台运行,可使用screen工具:
apt install screen -y screen -S arma3 ./start.sh
按Ctrl+A+D detached会话,服务器将在后台持续运行。
日志查看与故障排查
服务器日志位于~/arma3server/server_profile目录下,通过以下命令实时查看:
tail -f ~/arma3server/server_profile/RPT.log
常见问题排查:

- 端口被占用:使用
netstat -tulnp | grep 2302检查端口占用,调整start.sh中的-port参数。 - 模组加载失败:检查
server.cfg中的mod和serverMod路径是否正确,确保模组已通过SteamCMD下载(可通过SteamCMD的workshop_download_item命令安装模组)。
定期更新与备份
为保持服务器稳定,建议定期更新服务器文件,创建更新脚本update.sh:
nano ~/arma3server/update.sh
写入:
#!/bin/bash cd ~/steamcmd ./steamcmd.sh +login anonymous +force_install_dir ~/arma3server +app_update 233780 validate +exit
赋予执行权限并设置定时任务(如每天凌晨3点更新):
chmod +x ~/arma3server/update.sh crontab -e
添加:0 3 * * * /home/arma3user/arma3server/update.sh。
备份可通过tar命令实现,例如备份整个服务器目录:
tar -czf arma3_backup_$(date +%Y%m%d).tar.gz ~/arma3server
相关问答FAQs
Q1: 启动服务器后,玩家无法连接,提示“Connection Failed”,如何解决?
A: 可能原因及解决方法:
- 防火墙未开放端口:检查服务器防火墙(如UFW)是否开放2302-2303 UDP端口,执行:
sudo ufw allow 2302:2303/udp sudo ufw reload
- 路由器端口映射未配置:若为家庭服务器,需在路由器管理界面将公网端口映射至服务器内网IP的2302-2303端口。
- 服务器IP配置错误:确保玩家连接时使用的是公网IP(或域名),而非内网IP。
Q2: 如何在服务器中添加自定义模组?
A: 添加模组需分三步完成:
- 通过SteamCMD下载模组:以模组ID“123456”为例,执行:
cd ~/steamcmd ./steamcmd.sh +login anonymous +workshop_download_item 107410 123456 +quit
- 创建符号链接:将下载的模组链接至服务器
arma3server目录的@模组名文件夹:ln -sf ~/steamcmd/steamapps/workshop/content/107410/123456 ~/arma3server/@MyMod
- 修改配置文件:在
server.cfg中添加模组路径,mod=@MyMod;@OfficialMod1 serverMod=@Expansion;@Contact
重启服务器后,玩家需在游戏启动参数中添加相同模组(可通过Steam创意工坊订阅或手动配置)。
通过以上步骤,即可成功搭建并运行一台稳定的Arma 3 Linux服务器,合理配置参数、定期维护更新,能为玩家提供流畅的游戏体验,同时也能根据需求扩展功能(如添加管理员插件、任务模组等)。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复