Palworld's dedicated server is easy to install and has one habit you must plan for: its memory use climbs with every base, every Pal assigned to work, and every hour of uptime. Size for it, restart it nightly, and it is a pleasant server to run.
Size
8 GB for a handful of friends with one or two bases. 16 GB for a full group of up to 16 with several bases. 32 GB for a public 32-slot server. Memory, not CPU, is what you run out of; pick a plan you can resize in place.
Install
sudo apt update && sudo apt install -y lib32gcc-s1 curl tar
sudo useradd -m -s /bin/bash pal && sudo su - pal
mkdir -p ~/steamcmd && cd ~/steamcmd
curl -sSL https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar zx
./steamcmd.sh +force_install_dir /home/pal/server +login anonymous +app_update 2394010 validate +quit
Run the server once to generate its folders, then stop it with Ctrl+C:
cd ~/server && ./PalServer.sh
Settings
Copy the default settings into place and edit:
cp ~/server/DefaultPalWorldSettings.ini ~/server/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
The file is one long line of options. Set ServerName, ServerPassword, AdminPassword, PublicPort=8211, and ServerPlayerMaxNum. Rates, difficulty and day length are in the same line. Leave RCONEnabled on with a strong password if you want to restart from a script gracefully.
systemd
As root, /etc/systemd/system/palworld.service:
[Unit]
Description=Palworld Dedicated Server
After=network.target
[Service]
User=pal
WorkingDirectory=/home/pal/server
ExecStart=/home/pal/server/PalServer.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
systemctl daemon-reload && systemctl enable --now palworld, then ufw allow 8211/udp. Players add the server IP and port in the game's community server list or by direct connect.
The nightly restart
As root, crontab -e:
0 5 * * * systemctl restart palworld
Five in the morning, every day. Announce it in the server name or your group chat. This single line is the difference between a server that runs for months and one that crashes on day three.
Backups
The whole world is in ~/server/Pal/Saved. A cron job that archives it nightly before the restart, and prunes old copies, takes two lines. Copy the archives off the server now and then.
Updating
When Palworld updates, stop the service, run the app_update line again, start it. Players on the new version cannot join an old server, so do it the same day.
Questions we get asked
Linux or Windows? Linux is lighter and is what this guide uses. Windows Server works too, at the same price on our plans.
Why does memory keep growing? It is how the server behaves. The nightly restart is the accepted answer.
How many players on 16 GB? A full group of 16 with several bases. 32 slots want 32 GB.
Can I run mods? Yes, with UE4SS-based mods on a dedicated server; they raise memory further.
Is DDoS protection needed for a private server? Less so with a password; it is included anyway on our gaming plans.



