雾锁王国(Enshrouded)是 2024 年爆火的生存建造游戏,挖矿、建基地、打迷雾怪物,支持最多 16 人联机。它的专用服务端同样是 Windows 独占,没有官方 Linux 版本——但用 Wine 转译在 Linux 云服务器上跑得很稳,社区方案成熟。
这篇教程覆盖:Wine 环境搭建、SteamCMD 安装(App ID 2278520)、enshrouded_server.json 配置、systemd 守护、存档备份,以及这个游戏最特殊的一点——更新极快,存档备份比什么都重要。
本文由财富云计算整理,我们主营 NAT 型云服务器(无独立公网 IP),价格比独立 IP 机型省一半以上,16 人小队服轻松带动。更多开服教程见端口速查表。
一、这个游戏开服的两个特殊性
- 服务端只发 Windows 版。Steam App ID 2278520,Linux 上通过 Wine 运行。别在 SteamCMD 里找 Linux 文件,找不到的。
- 游戏还在高频更新期。Keen Games 更新非常勤,客户端一更新,旧服务端直接拒连所有人。所以本篇会把"更新"和"更新前备份"当重点讲——玩这个游戏,备份脚本的价值大于任何调优。
人数上限 16 人,这是游戏设计上限,不是服务器性能上限,别指望改大。
二、配置需求
| 同时在线 | CPU | 内存 | 磁盘 | 带宽 |
|---|---|---|---|---|
| 1–4 人 | 2 核 | 4 GB | 15 GB | 10 Mbps |
| 5–8 人 | 4 核 | 6 GB | 20 GB | 15 Mbps |
| 9–16 人 | 4 核 | 8 GB | 30 GB | 20 Mbps |
- SSD 必须。 voxel 地形编辑 + 大型基地会让存档体积和时间持续增长,机械盘上每次自动存档都是全员卡顿。
- 内存随"世界被挖的程度"增长。开服两个月后 8G 都不一定够,建议一开始就上 8G 或留好 swap(swap 优化指南)。
- NAT 型可跑,UDP 端口映射即可,参考NAT 型服务器能力指南。
三、安装:Wine + SteamCMD
3.1 准备环境
sudo adduser --disabled-password --gecos "" enshrouded
sudo mkdir -p /opt/enshrouded && sudo chown enshrouded:enshrouded /opt/enshrouded
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd wine wine32 wine64 winetricks xvfb
wine --version3.2 下载服务端
sudo -u enshrouded -s
cd ~/steamcmd
./steamcmd.sh +@sSteamCmdForcePlatformType windows \
+force_install_dir /opt/enshrouded/server \
+login anonymous +app_update 2278520 validate +quit同样必须强制 Windows 平台,原因同 V Rising(Linux 服务端不存在)。SteamCMD 报错先查常见错误码。
3.3 首次运行生成配置
cd /opt/enshrouded/server
xvfb-run wine enshrouded_server.exe第一次启动会生成 enshrouded_server.json,然后服务端会尝试监听端口。看到配置文件出现后 Ctrl+C 退出,开始编辑配置。
四、enshrouded_server.json 配置详解
{
"name": "灰雾小队",
"password": "your_password",
"saveDirectory": "./savegame",
"logDirectory": "./logs",
"ip": "0.0.0.0",
"gamePort": 15636,
"queryPort": 15637,
"slotCount": 8
}| 字段 | 说明 |
|---|---|
| name | 服务器名,显示在游戏内浏览器 |
| password | 进服密码,好友服必填,留空 = 谁都能进 |
| saveDirectory / logDirectory | 存档和日志目录,备份只备份 saveDirectory |
| ip | 监听地址,填 0.0.0.0 别动 |
| gamePort | 游戏端口,UDP,默认 15636 |
| queryPort | 查询端口,UDP,必须 = gamePort + 1 |
| slotCount | 人数上限,1–16 |
queryPort 必须是 gamePort + 1,这是硬规矩,改成一个不相干的端口玩家列表里能看到服务器但加不进去。
想改端口避开冲突(比如同机器跑多个服):gamePort 和 queryPort 一起 +2,比如 15638/15639,安全组和 NAT 映射同步改。
五、启动与 systemd 守护
cat > /opt/enshrouded/start.sh <<'EOF'
#!/bin/bash
cd /opt/enshrouded/server
exec xvfb-run -a wine enshrouded_server.exe
EOF
chmod +x /opt/enshrouded/start.shsudo tee /etc/systemd/system/enshrouded.service <<'EOF'
[Unit]
Description=Enshrouded Dedicated Server
After=network.target
[Service]
Type=simple
User=enshrouded
ExecStart=/opt/enshrouded/start.sh
Restart=on-failure
RestartSec=10
WorkingDirectory=/opt/enshrouded/server
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now enshrouded
journalctl -u enshrouded -f日志刷出监听信息即成功。systemd 管理细节见systemd 服务管理指南。
六、端口与防火墙
只需要 UDP 15636(游戏)+ UDP 15637(查询):
sudo ufw allow 15636/udp
sudo ufw allow 15637/udp安全组同步放行(安全组配置实战)。NAT 型用户在控制台把外网 UDP 端口逐条映射到内网 15636 和 15637——只映射一个的典型后果就是"能看到服务器、进不去",端口规划见端口速查表。
七、存档结构:这个游戏的命门
存档在 saveDirectory(默认 ./savegame)下:
savegame/
├── 3ad85aea # 世界主存档(十六进制随机名)
└── 3ad85aea.backup # 服务端自动备份那个十六进制目录就是整个世界的全部进度——地形改动、基地、角色。.backup 是服务端自己留的一份,但它和主存档内容通常一致,服务端崩的时候可能一起坏,别把它当备份方案。
备份脚本:
cat > /opt/enshrouded/backup.sh <<'EOF'
#!/bin/bash
SRC="/opt/enshrouded/server/savegame"
DST="/opt/enshrouded/backups"
mkdir -p "$DST"
tar -czf "$DST/enshrouded-$(date +%F-%H%M).tar.gz" -C "$SRC" .
# 保留最近 30 份(更新频繁,多留几代)
ls -t "$DST"/enshrouded-*.tar.gz | tail -n +31 | xargs -r rm
EOF
chmod +x /opt/enshrouded/backup.sh更新前必跑:Enshrouded 更新节奏快,大版本偶尔会动存档结构。备份策略体系化搭建见服务器备份策略和rsync 备份实战。
想从单人游戏搬世界到服务器:把本地存档目录整个替换掉服务器上的十六进制目录,名字保持一致即可。换服务器搬家同理,见游戏服迁移指南。
八、更新:本游戏的核心运维
Enshrouded 客户端和服务端版本不匹配 = 全员连不上。更新流程:
sudo systemctl stop enshrouded
/opt/enshrouded/backup.sh # 先备份,再更新
sudo -u enshrouded -s
cd ~/steamcmd
./steamcmd.sh +@sSteamCmdForcePlatformType windows \
+force_install_dir /opt/enshrouded/server +login anonymous +app_update 2278520 validate +quit
exit
sudo systemctl start enshrouded更新后检查三件事:
enshrouded_server.json是否被重置(服务端更新一般不动它,但要确认)- 存档目录是否出现新的世界文件夹
- 好友客户端也更新到同版本
游戏更新公告和版本号对不上时,先别急着更新服务端——等一波,让主播群当小白鼠。想自动化更新见游戏服自动更新实战,脚本里带"更新失败自动回滚"逻辑。
九、性能与稳定性
- 内存增长是世界规模决定的。16 人服玩三个月,世界被挖得底朝天,内存占用可能翻倍。预留 swap + 每天凌晨定时重启:
0 5 * * * systemctl restart enshrouded- Wine 层的开销:转译会多占一点内存,配置估算时按原生 +1~2GB 算。
- SSD I/O:自动存档时掉帧/卡顿,九成是盘的问题,查一下磁盘 I/O 排查。
- CPU:服务端没有充分利用多核,高主频 4 核比低主频 8 核强。
十、常见问题
Q1:列表能看到服务器,点加入没反应?
查询端口 15637 没放行,或 NAT 只映射了 15636。两个 UDP 端口必须都通,且 queryPort = gamePort + 1。
Q2:Wine 启动报错缺库?sudo apt install -y lib32gcc-s1 后重试;转译层问题十有八九是 32 位运行库缺失。
Q3:服务端崩了会自动重启吗?
systemd 配了 Restart=on-failure 会拉起来。但如果崩溃前世界正在存档,有概率存档损坏——这就是为什么备份脚本要比 systemd 还优先挂上。
Q4:游戏更新后连不上?
版本不匹配。服务端重新走一遍第八节的更新流程,确认客户端也更新了。
Q5:16 人卡爆?
看内存是否见底(free -h),世界规模太大时这是正常现象,升内存或开新世界二选一。定位方法见服务器资源排查。
Q6:能加 MOD 吗?
服务端 mod 生态还不成熟,谨慎折腾;玩家端 MOD(如画质、UI 类)不影响联机。通用 MOD 服搭建思路见游戏 MOD 服搭建指南。
十一、小结
Enshrouded 开服三件套:Wine 转译跑 Windows 服务端、gamePort+1 的查询端口规矩、更新前必跑备份。这个游戏还在活跃开发期,架好服务只是开始,跟上更新节奏才能让小队的世界一直在线。存档目录那几个十六进制文件夹,就是全队几个月的心血,备份脚本今天就要挂上。
需要服务器跑雾锁王国,可以看看财富云计算的 NAT 型云服务器——无独立公网 IP,价格比独立 IP 机型省一半以上,16 人小队服轻松带动。更多生存游戏开服教程持续更新在游戏配置与开服教程总索引。
相关阅读:英灵神殿开服 · 夜族崛起开服 · 森林之子开服 · 开服难度横评 · NAT 型开游戏服实测
延伸阅读
- 高防误区与避坑清单:25 个坑+下单前必问 14 问+到货验货流程
- DNS 攻击防护专题:劫持、隧道、投毒、放大四类攻击与 DNSSEC
- 电商大促防攻击预案:T-14 到当天的分级响应与降级开关
- 源站真实 IP 隐藏完全指南:六大暴露面排查+NAT 型终极方案
- 日志分析找攻击源:Nginx 日志三维度分析法与证据固定
- 攻击应急响应手册:六阶段响应流程,从确认到复盘的照做清单
- iptables 抗 DDoS 配置模板:状态过滤+SYN 防护+防扫描+游戏服版
- OpenResty Lua 自研 WAF:动态限流+攻击特征检测+Redis 黑名单
