Linux部署帕鲁专用服务器:从安装到首次进服

这套步骤用于在全新的 Ubuntu 24.04 LTS、x86_64 服务器上部署帕鲁专服,通过 SteamCMD 安装正式版服务端,再用 Steam 版 PC 客户端通过 IP 和端口连接。配置写法按官方 1.0.4 文档核对;实际下载到的游戏版本,以启动信息和进服后的 /Info结果为准。

官方配置要求从 4 核 CPU、16 GB 内存起步,并建议为较长时间运行留出更多内存。地图进度、据点规模、玩家数量和模组都会增加负载。安装前用 free -h和df -h检查资源,不能把最低配置理解为任意人数都能流畅运行。

安装SteamCMD,再下载专服

按SSH 登录教程连接服务器,使用有 sudo 权限的普通系统账号。以下仓库步骤只适用于 Ubuntu 24.04;逐条执行,上一条报错时先处理。安装器如要求阅读 Steam 许可,由管理员查看后决定是否接受。

cat /etc/os-release
uname -m
sudo apt-get update
sudo apt-get install software-properties-common tmux nano
sudo dpkg --add-architecture i386
sudo add-apt-repository multiverse
sudo apt-get update
sudo apt-get install steamcmd:i386

确认系统是 Ubuntu 24.04、架构为 x86_64。在当前普通账号的主目录创建独立游戏目录。若目录已经存在,先查看是否有旧存档,不能直接当作新服覆盖。

mkdir "$HOME/PalServer"
/usr/games/steamcmd +force_install_dir "$HOME/PalServer" +login anonymous +app_update 2394010 validate +quit

2394010是帕鲁专用服务器应用 ID,安装目录参数放在登录之前。等待 SteamCMD 报告安装完成,并确认目录中已有 PalServer.sh。网络下载中断时处理连接问题后重试同一条下载命令,不要不断换目录留下多套文件。

把配置写到实际读取的位置

在游戏目录中准备配置文件。下面只在目标文件不存在或为空时复制默认模板,保留已有配置:

cd "$HOME/PalServer"
mkdir -p Pal/Saved/Config/LinuxServer
pal_cfg="$HOME/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini"
test -s "$pal_cfg" || cp DefaultPalWorldSettings.ini "$pal_cfg"
chmod 600 "$pal_cfg"
nano "$pal_cfg"

真正读取的文件是 Pal/Saved/Config/LinuxServer/PalWorldSettings.ini,不是根目录的默认模板。在已有的 OptionSettings=(...)中修改以下四个字段,保留其他配置、逗号和两端括号。下面是要找的字段片段,不要用这四行替换整个 INI 文件:

ServerName="Baole Palworld"
ServerDescription="Private server"
AdminPassword="替换为独立的管理密码"
ServerPassword="替换为玩家进服密码"

管理密码和玩家进服密码分别设置,使用足够长且互不相同的字母数字组合,可以避免引号、逗号等字符写坏 INI 格式。按 Ctrl+O、回车保存,Ctrl+X 退出。首次进服不需要额外启用 RCON 或 REST API。

启动并核对UDP监听

新建一个终端会话:

tmux new -s palworld

在该会话中启动服务端,保留窗口观察初始化输出:

cd "$HOME/PalServer"
./PalServer.sh -port=8211 -logformat=text

另开 SSH 窗口检查监听,并在产品对应的安全组放行 UDP 8211。如果当前系统确实使用已启用的 UFW,再添加对应规则:

sudo ss -lnup 'sport = :8211'
sudo ufw status
# 仅当当前使用 UFW 且状态为 active 时执行:
sudo ufw allow 8211/udp

没有使用 UFW 的机器,应检查实际防火墙;不要为了这一步临时启用一套未保留 SSH 规则的防火墙。NAT 产品还要把分配的外部 UDP 端口映射到本机 8211,操作参考NAT 端口映射。

-port=8211控制本例实际监听的游戏端口。配置里的 PublicPort用于对外发布信息,不会自动替你建立 NAT 映射。1.0 之后的服务端也不要不加核实地照搬旧教程里的 -useperfthreads、-NoAsyncLoadingThread和-UseMultithreadForDS组合。

进服后做一次保存和正常关闭

打开版本兼容的 Steam 版 PC 客户端,进入加入多人游戏的界面,使用服务器公网 IP 和实际对外端口连接。出现密码提示时填写 ServerPassword,不是管理密码。Xbox、PlayStation 的社区服务器入口与这套 PC 直连步骤不同,不要照搬界面操作。

进服后,在游戏聊天输入框执行以下管理命令,将“你的管理密码”替换为刚设置的值;这些不是 Linux 终端命令:

/AdminPassword 你的管理密码
/Info
/ShowPlayers

确认自己出现在玩家列表中,完成一次小范围的游戏操作并记住进度,再执行:

/Save
/Shutdown 60 Maintenance

通知其他玩家后等待 60 秒,让服务端正常退出。随后用前面的启动命令重新开服,重新进入,检查进度是否保留。/DoExit属于立即退出,不作为日常保存关服的方法。

首次部署最常卡住的三个地方

  • SteamCMD 安装失败:确认是 Ubuntu 24.04 x86_64、已启用 multiverse 和 i386。如果镜像源只提供 amd64 软件包,需要改用支持 i386 索引的官方或可信镜像,不要随手运行不明安装脚本。
  • 启动一段时间后进程消失:检查内存、磁盘和启动日志,再看系统是否出现内存不足终止进程的记录。端口短暂监听过,不能证明配置足够支撑长期运行。
  • 端口在监听,客户端仍连不上:比较客户端和服务端版本,检查 UDP 规则、NAT 外部端口和玩家密码。控制台出现几行提示信息不等于已经完成首次联机。

离开控制台时按 Ctrl+B,松开后按 D;需要回来时执行 tmux attach -t palworld。tmux 不会在服务器重启后自动开服。以后更新前先正常关服并备份 Pal/Saved,再参考帕鲁服务端更新教程处理。