24 / 01 / 21

Palworld 幻兽帕鲁 Linux 服务器搭建

搭建准备

首先我们需要准备一台linux系统服务器,下面以Ubuntu来演示。

贴一张官方的服务器配置要求:链接

CPU4Cores (recommend)
RAM16GB Recommend over 32GB for stable operation. It is possible to start the server with 8 GB, but the further you play, the server will crash due to out of memory.
NetworkUDP Port 8211 (Default) Port forwarding required.

注意:放行8211端口协议是UDP!!!如果你是国内服务器搭建(比如腾讯阿里云)一定要在防火墙或安全策略放行8211端口协议选UDP。如果使用linux面板比如宝塔,要在安全里添加端口。这个内存建议直接飙到32g,离谱。

一、开始安装 SteamCMD

安装SteamCMD的依赖项:

sudo add-apt-repository multiverse sudo dpkg --add-architecture i386 sudo apt update
  1. 安装Manually:
    sudo apt-get install lib32gcc-s1

  2. 切换到root创建一个名为steam的用户(steamcmd不支持root权限启动

sudo useradd -m steam  # 新建steam用户  sudo passwd steam  # 设置密码

进入用户目录

sudo -u steam -s cd /home/steam mkdir /Steam && cd /Steam # 创建steam账号下路径并进入该路径 curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf - # 下载并解压SteamCMD

二、运行 SteamCMD并登录

手动运行:进入Steam文件夹cd ~/Steam,执行./steamcmd.sh,将会自动更新SteamCMD,等待终端变为steam>即可,不要退出。紧接着在steam>下匿名登录:login anonymous等待5秒执行完成。

三、下载并运行Pal服务

  1. 还是在steam>app_update 2394010 validate,下载完成后quit退出。

  2. 进入Pal目录cd ~/Steam/steamapps/common/PalServer,运行Pal./PalServer.sh

缺少sdk

第一次运行./PalServer.sh大概率会出现类似的错误

dlopen failed trying to load:  /home/steam/.steam/sdk64/steamclient.so  with error:  /home/steam/.steam/sdk64/steamclient.so: cannot open shared object file: No such file or directory  [S_API] SteamAPI_Init(): Sys_LoadModule failed to load: /home/steam/.steam/sdk64/steamclient.so

安装一下相关的sdk

mkdir -p ~/.steam/sdk64/ cd ~/.steam/sdk64 # 这里我在此目录下再次tar zxvf steamcmd,如果用软件源安装steamcmd会更方便 ./steamcmd.sh +login anonymous +app_update 1007 +quit ln -sf /home/steam/.steam/sdk64/linux64/steamclient.so /home/steam/.steam/sdk64/steamclient.so # 就是把这个目录下的steamclient.so重定向到上级目录

就恢复正常了,后面可能会出现找不到路径但是可以正常开启

后续就可以使用命令正常使用了

./PalServer.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS

需要注意linxu下配置文件在/home/steam/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer下的PalWorldSettings.ini不是主目录下的(mc玩魔怔了,主目录改半天发现没用!)

安装screen并挂载后台

sudo下新建并切换用户到steam

进入路径 cd ~/Steam/steamapps/common/PalServer

启动游戏./PalServer.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS

管理员命令

用管理员密码登录服务器  /AdminPassword 密码  显示当前玩家  /ShowPlayers # esc界面会有玩家id可以快速复制 其他命令类似  踢出  /KickPlayer [UserID]/[SteamID64]  ​  封禁  /BanPlayer [UserID]/[SteamID64]  ​  传送  /TeleportToPlayer {SteamID}  ​  拉人  /TeleportToMe {SteamID}  ​  存档  /Save  ​  强制服务器退出  /DoExit  ​  广播信息  /Broadcast {MessageText}  ​  通知服务器在线玩家n秒后服务器关闭  /Shutdown {Seconds} {MessageText}  /Shutdown 180 3分钟后重启,请及时下线,否则有可能坏档

四、服务期优化

三、设置虚拟内存(听说可以解决爆内存问题)

1.查看 Linux 当前分区情况:

free -m

如果是增加 swap 分区,则先把当前所有分区都关闭了:

swapoff -a

2.创建要作为 Swap 分区文件(其中 /var/swapfile 是文件位置,bs*count 是文件大下,例如以下命令就会创建一个 16G 的文件):

dd if=/dev/zero of=/var/swapfile bs=1M count=16000

3.建立 Swap 的文件系统(格式化为 Swap 分区文件):

mkswap /var/swapfile

4.启用 Swap 分区:

swapon /var/swapfile

5.查看 Linux 当前分区:

free -m

如果有 Swap 就说明创建成功了:

6.设置开启启动,在 /etc/fstab 文件中加入一行代码:

vim /etc/fstab 点i输入下方代码,然后esc :wq保存并退出

/var/swapfile swap swap defaults 0 0
Powered by Gridea
萌ICP备20233341