13 10 月 2026

很多玩家买了一台云服务器之后会想:方舟、RUST、我的世界能不能放同一台机器上一起开?答案是可以,而且很常见。一台 4 核 8G 的机器同时跑两三个中小规模游戏服完全没问题,关键是把端口、内存、磁盘 IO 这三件事规划好。

这篇文章讲清楚多服共存的完整配置方法,从端口规划到资源分配,再到开机自启和一键重启。

需要现成的游戏云服务器,可以看看财富云计算:一键开服面板,NAT 型无独立公网 IP,价格比带独立 IP 的机型省一半以上,方舟、RUST、森林之子、Scum、我的世界都能快速部署。

一、先算账:你的机器能带几个服

一个游戏服吃多少资源,主要看游戏类型:

游戏类型单服内存单服 CPU磁盘占用可共存数量参考
我的世界 Java 版(小服 10 人)2–4G1 核1–3G4G 机器 1 个,8G 机器 2 个
幻兽帕鲁8–16G2–4 核20G+16G 机器 1 个,32G 可 2 个
RUST(50 人)8–12G2–4 核15G+16G 机器 1 个
方舟生存进化6–10G2 核20G+8G 勉强,16G 舒服
森林之子 / Scum6–12G2–4 核15–25G16G 机器 1 个
泰拉瑞亚0.5–1G0.5 核0.5G可以和任意游戏共存
CS2 / GTA5 / 七日杀2–6G1–2 核10–30G8G 机器 1 个加一个小服

经验公式:所有服的内存峰值相加,不要超过机器总内存的 70%。剩下的 30% 留给系统缓存、SteamCMD 更新时的临时占用、以及玩家进出时的突发。

比如 16G 机器:一个幻兽帕鲁(12G 峰值)+ 一个泰拉瑞亚(1G)= 13G,占 81%,偏紧,但泰拉瑞亚内存极小,实际能跑;如果换成一个方舟(8G)+ 一个我的世界(4G)= 12G,占 75%,就稳得多。

二、端口规划:先画一张表再动手

这是多服共存最容易翻车的地方。游戏端口分三类:

  1. 游戏端口(Query/Game):UDP,玩家连接用
  2. 查询端口(Query):UDP,服务器列表显示人数用
  3. RCON / 管理端口:TCP,远程管理用

不同游戏的端口可能撞车。开服前先填这张表:

服务器游戏端口查询端口RCON/管理额外端口
幻兽帕鲁 A8211 UDP27015 UDP25575 TCP—
方舟 B7777 UDP27015 UDP27020 TCP7778/7779 UDP
泰拉瑞亚 C7777 TCP———

看到问题了吗:幻兽帕鲁和方舟的查询端口默认都是 27015。撞了不改,服务器列表里两个服都显示不出来,或者显示串了。

分配原则:

  • 每个服占一段,比如 A 服从 20000 起,B 服从 21000 起,C 服从 22000 起
  • 游戏端口和查询端口至少错开 10,比如 A 用 20111/20115,B 用 21111/21115
  • RCON 端口必须每个服不同,这是安全要求,撞了会出现能连上别人服的怪事
  • 修改方式一般在服务端的配置文件里(GameUserSettings.ini、PalWorldSettings.ini、server.properties、autoexec.cfg)
NAT 型用户特别注意:没有独立公网 IP,服务商在网关上给你映射的是端口段。买之前先确认映射了哪些端口,规划端口时只在映射范围内分配,否则本地监听得再好,外网也进不来。以财富云计算的 NAT 机型为例,面板里能直接看到映射端口段,照着分配即可。

三、磁盘与目录:一个服一个目录

不要把所有游戏塞在同一个 home 目录里混着,更新和备份都会疯。

/opt/games/
├── palworld/          # 幻兽帕鲁服务端
│   ├── server/        # 服务端本体
│   └── backups/       # 该服的备份
├── ark/               # 方舟服务端
│   ├── server/
│   └── backups/
└── terraria/
    ├── server/
    └── backups/

这样设计的好处:

  • 每个服可以单独 du -sh 看占用
  • 备份可以按服打包,恢复时不会互相污染
  • 某个服要重装,直接删掉它的目录重来,不影响别的服

四、内存与 CPU:用 systemd 做硬隔离

多服共存最怕一个服内存泄漏把整台机器拖死。用 systemd 的 MemoryMax 给每个服设上限,超了只杀它自己:

# /etc/systemd/system/palworld.service
[Unit]
Description=Palworld Server
After=network.target

[Service]
Type=simple
User=steam
WorkingDirectory=/opt/games/palworld/server
ExecStart=/opt/games/palworld/server/PalServer.sh
Restart=on-failure
RestartSec=10

# 关键:资源限制
MemoryMax=10G          # 超过 10G 直接杀进程,保护其他服
CPUQuota=200%          # 最多用 2 个核
Nice=5                 # 优先级略低于系统进程
LimitNOFILE=65535      # 文件句柄,游戏服容易不够

[Install]
WantedBy=multi-user.target

方舟和泰拉瑞亚各写一个类似的 unit,MemoryMax 分别设 8G 和 1G。这样即使某个服炸了,另外两个照常运行,SSH 也不会卡死。

CPU 核数分配:CPUQuota 用百分比,100% = 1 核。4 核机器可以给主服 200%、副服 100%、小服 50%,系统留 50%。

五、开机自启与批量管理

每个服一个 systemd 服务,然后写个管理脚本:

#!/bin/bash
# /usr/local/bin/games.sh
case "$1" in
  start)
    systemctl start palworld ark terraria
    ;;
  stop)
    systemctl stop palworld ark terraria
    ;;
  restart)
    systemctl restart palworld ark terraria
    ;;
  status)
    systemctl status palworld ark terraria --no-pager
    ;;
  update)
    # 先停再更新,避免文件被占用
    systemctl stop palworld ark terraria
    /opt/steamcmd/steamcmd.sh +force_install_dir /opt/games/palworld/server \
      +login anonymous +app_update 2394010 validate +quit
    /opt/steamcmd/steamcmd.sh +force_install_dir /opt/games/ark/server \
      +login anonymous +app_update 2430930 validate +quit
    systemctl start palworld ark terraria
    ;;
esac

用法:games.sh start / games.sh restart / games.sh update。不用记每个服务的名字。

六、带宽:这是最容易被忽略的瓶颈

CPU 和内存看得见,带宽是隐形的。多个服的带宽叠加很容易把单台机器的小水管打满:

同时在线人数每玩家上行20 人总计
FPS 类(CS2、RUST)20–60 KB/s0.4–1.2 MB/s(约 10 Mbps)
生存建造(方舟、帕鲁)5–15 KB/s0.1–0.3 MB/s(约 3 Mbps)
我的世界3–10 KB/s0.06–0.2 MB/s

两个 20 人的 FPS 服同时满员,就要吃掉 20 Mbps。如果机器只有 5–10 Mbps 带宽,所有人都会瞬移、掉线、 ping 飘绿。

判断方法:装一个 iftop,满员时看实时流量:

yum install -y iftop    # CentOS
apt install -y iftop    # Debian/Ubuntu
iftop -i eth0 -P

如果带宽长期打满,要么升级带宽,要么把其中一个服迁到另一台机器。NAT 型云服务器通常带宽给得比较大方,这点反而是优势。

七、备份:多服更要备份

服越多,备份策略越要自动化,靠手动早晚出事。按服打包,带时间戳,保留最近 7 份:

#!/bin/bash
# /opt/scripts/backup.sh
DATE=$(date +%Y%m%d-%H%M)
for game in palworld ark terraria; do
  tar -czf /opt/games/$game/backups/$game-$DATE.tar.gz \
    -C /opt/games/$game/server Saved Config 2>/dev/null
done
# 只保留最近 7 份
find /opt/games/*/backups -name "*.tar.gz" -mtime +7 -delete

挂 crontab,每天凌晨 4 点跑一次:

crontab -e
0 4 * * * /opt/scripts/backup.sh >> /var/log/game-backup.log 2>&1

注意:热备份对游戏服不完全可靠,SQLite 存档(方舟、帕鲁)在写入过程中打包可能损坏。更稳的做法是先停服再备份,或者用服务商提供的快照功能整盘快照。

八、常见问题

Q:两个服能同时用同一个 SteamCMD 吗?
能。SteamCMD 本体是共享的,但同一时间只能跑一个下载任务,多个同时开会互相锁文件。串行更新最稳。

Q:一台机器能开几个幻兽帕鲁?
官方服务端单进程就吃 12G+,一台 32G 机器开两个都比较勉强。想多开建议用容器化或者分布式方案,普通玩家不建议。

Q:多服共存怎么看在线的到底有多少人?
每个服都有自己的查询端口,用 GameQ 类工具(或者直接 Steam 收藏服务器)分别查询。不要试图用一个工具监控所有服。

Q:机器带不动会先卡哪个?
一般是磁盘 IO,尤其是机械盘同时被多个服读写存档。固态盘(SSD)是多服共存的硬要求,别在机械盘上开三个服。

小结

多服共存的三条铁律:端口先规划再动手、内存用 systemd 硬隔离、备份按服分开做。做到这三点,一台机器挂三四个服是很轻松的事。

更多单游戏的详细开服教程,可以看财富云计算开服攻略,覆盖方舟、RUST、幻兽帕鲁、森林之子、我的世界等主流游戏的 Windows / Linux 双版本。有具体问题欢迎在评论区留言。

延伸阅读
  1. 网站环境怎么选:LNMP 手动 / 宝塔面板 / Docker / 云开发
  2. 问卷表单系统搭建:SurveyKing / Formbricks,数据自己收
  3. 图床搭建:Lsky Pro / Lychee,自托管图片托管方案
  4. 邮件列表搭建:listmonk 自托管 Newsletter,把读者握在自己手里
  5. 文档站点搭建:MkDocs / VuePress / Docsify,产品文档与技术手册方案
  6. RSS 阅读器搭建:FreshRSS 自托管,把信息流拿回自己手里
  7. 短链接服务搭建:Shlink 自托管,链接数据自己掌握
  8. 网站状态监控页搭建:Uptime Kuma,服务器挂了第一时间知道
更多阅读
  1. 上一篇:Docker 常见故障排查:启动失败、端口不通、磁盘爆满、数据丢失
  2. 下一篇:游戏服务器数据备份与恢复完整指南:存档丢了怎么救回
发表评论 18