Een Palworld dedicated server hosten op Linux
Een Palworld dedicated server biedt plaats aan maximaal 32 spelers in één blijvende wereld, tegenover vier in een co-op-sessie, en de wereld blijft draaien als de host uitlogt. Pocketpair levert de server voor Linux als gratis download via SteamCMD, en sinds versie 1.0 op 10 juli 2026 uit early access kwam, is de documentatie op punten veranderd die oudere handleidingen missen: de multithreading-flags die elke tutorial overneemt, worden niet meer aangeraden, en RCON is deprecated ten gunste van een REST API. Op Ubuntu of Debian loopt de installatie van de eigen hardwarevereisten van Pocketpair via de installatie, PalWorldSettings.ini en een systemd-unit die de wereld opslaat voordat hij stopt, naar de ene poort die spelers nodig hebben, crossplay voor Xbox en PS5, back-ups en updates. Server-side mods zijn het enige wat een Linux-server niet kan draaien.
Laden...
Een Palworld-server hosten in het kort
Een Palworld dedicated server is een gratis download via Steam (app 2394010) die native op 64-bit Linux draait en op één UDP-poort luistert, 8211. De procedure op een schone Ubuntu- of Debian-machine:
- Kies een machine met minstens 4 cores en 16 GB RAM op SSD-opslag.
- Installeer SteamCMD en download de server anoniem; je hebt geen Steam-account of gamelicentie nodig.
- Start hem één keer zodat hij zijn configuratiemappen aanmaakt, en stop hem dan.
- Kopieer het standaard instellingenbestand naar de juiste plek en stel een servernaam, een wachtwoord om mee te doen en een beheerderswachtwoord in.
- Draai hem onder systemd met een stopscript dat eerst de wereld opslaat.
- Open 8211/udp, en voeg
-publiclobbytoe als er iemand vanaf Xbox of PS5 meedoet. - Zet de ingebouwde rollende back-ups aan en kopieer de savemap naar een andere machine.
Het voorbeeldadres, 203.0.113.10, komt uit de reeks die voor documentatie is gereserveerd. Vervang het door je eigen adres.
Hardware die Pocketpair aanraadt
De pagina met vereisten van Pocketpair telt vijf regels:
| Resource | Cijfer van Pocketpair | Wat het in de praktijk betekent |
|---|---|---|
| CPU | 4 cores of meer, aanbevolen | Alleen een aantal cores; de pagina noemt geen kloksnelheid |
| RAM | 16 GB aanbevolen; 32 GB voor grotere servers | 8 GB "start ook op, maar vergroot de kans op servercrashes door geheugentekort" |
| Opslag | Een snelle SSD | De pagina waarschuwt dat "trage opslag opgeslagen data kan beschadigen" |
| Netwerk | UDP 8211, aanpasbaar | Eén poort voor spelers; verder hoeft niets publiek te zijn |
| Besturingssysteem | 64-bit Linux (Ubuntu, AlmaLinux en andere) | Dezelfde binary dekt beide distributiefamilies |
Van de drie games in deze reeks vraagt Palworld met afstand het meeste RAM. Een Valheim-server draait op een fractie daarvan, en een kleine Minecraft-wereld op een kwart.
Het RAM-cijfer is het cijfer om serieus te nemen. Een gameserver die zonder geheugen komt te zitten, wordt niet trager; de kernel beëindigt hem, en alles sinds de laatste save is weg. De wereld zelf bepaalt de belasting meer dan het aantal spelers: de configuratiereferentie van Pocketpair noemt BaseCampMaxNumInGuild, BaseCampWorkerMaxNum (maximaal 50 werkende Pals per basis) en PalSpawnNumRate als instellingen die de serverbelasting verhogen als je ze hoger zet. Dertig spelers die elk een volle basis met werkers draaien, vragen een andere server dan dertig spelers die op verkenning zijn.
Het geheugengebruik groeit ook naarmate het proces langer draait. De patchnotes van Pocketpair noemen fixes voor geheugenlekken in de dedicated server in v0.3.10 (30 oktober 2024) en v0.5.3 (9 april 2025), een optimalisatie voor lange sessies in v0.6.2 (10 juli 2025), en nog meer lekfixes in de release notes van 1.0. De gemeten rapporten zijn ouder dan al die fixes. In januari 2024 meldden gebruikers van de Docker-image van thijsvanloef een idle server op ongeveer 3,5 GB en een server met vier spelers die na vijf uur door zijn 8 GB heen was. Na 1.0 schreef hostingprovider ConnectHosting op 11 juli 2026 dat het lek 1.0.3 had overleefd; de provider raadt dagelijkse herstarts en 24 GB aan voor een wereld met 32 spelers, zonder metingen te publiceren.
Een schatting op basis van die bronnen, met het herstartinterval als onderdeel van de dimensionering:
| Spelers | RAM | Geplande herstart | Basis |
|---|---|---|---|
| Tot 8 | 16 GB | Elke 8 tot 24 uur | De 16 GB van Pocketpair; een herstartschema uit de community noemt elke 8 uur voor 8 gebruikers op 16 GB, geschreven vóór de lekfixes |
| 9 tot 16 | 32 GB | Elke 12 uur | Hetzelfde schema, 16 gebruikers op 32 GB |
| 17 tot 32 | 32 GB | Elke 12 tot 24 uur | De 32 GB van Pocketpair voor grotere servers, boven de 24 GB van ConnectHosting voor 32 spelers |
Pocketpair raadt Docker Desktop ook af voor het draaien van de server, omdat het "het risico op beschadigde savedata en storingen vergroot". Docker Engine op een Linux-host is een ander product, en Pocketpair publiceert daarvoor een eigen compose-bestand. Wie de binary onder systemd draait, heeft geen van beide nodig.
SteamCMD en de server installeren
Stap 1: SteamCMD
SteamCMD is de commandline-client van Valve voor het downloaden van dedicated servers. Het is een 32-bit programma, dus eerst moet de i386-architectuur aan. Op Ubuntu staat het pakket in de component multiverse:
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install steamcmd
Voeg op Debian non-free toe aan de componenten in je apt-bronnen en draai daarna dezelfde regels voor dpkg, apt update en apt install. De SteamCMD-pagina van Valve beschrijft beide.
Stap 2: Een servicegebruiker en de download
Draai de server als een eigen gebruiker zonder rechten, zodat een gecompromitteerd gameproces één homedirectory bezit en verder niets:
sudo useradd --create-home --shell /bin/bash steam
sudo -u steam /usr/games/steamcmd +force_install_dir /home/steam/palworld \
+login anonymous +app_update 2394010 validate +quit
+force_install_dir moet vóór +login staan, anders negeert SteamCMD het. Met hetzelfde commando werk je de server later ter plekke bij.
Stap 3: Eerste start
De configuratie- en savemappen bestaan pas nadat de server één keer heeft gedraaid:
sudo -u steam /home/steam/palworld/PalServer.sh
Wacht tot de log tot rust komt en stop hem dan met Ctrl+C.
Mislukt die eerste start met .steam/sdk64/steamclient.so: cannot open shared object file, dan geldt nog steeds de oplossing uit de documentatie van v0.1.5.1 van Pocketpair: maak ~/.steam/sdk64/ aan voor de gebruiker steam en kopieer daar steamclient.so in uit de Steamworks SDK Redist (app 1007). De huidige documentatie noemt de fout niet meer, en de download van de 1.0-server bevat de Linux-redistributable zelf. De oude pagina waarschuwt ook dat de fix op een server waarop al gespeeld wordt elke speler terugstuurt naar het aanmaken van een personage, dus doe het voordat er iemand meedoet.
PalWorldSettings.ini schrijven
De server leest zijn instellingen uit één bestand dat je maakt door het standaardbestand te kopiëren:
cd /home/steam/palworld
sudo -u steam cp DefaultPalWorldSettings.ini Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
Wijzigingen in DefaultPalWorldSettings.ini zelf doen niets; dat staat in de documentatie van Pocketpair, en de map bestaat pas na de eerste start. Het gekopieerde bestand bevat een sectiekop en één lange regel met instellingen:
[/Script/Pal.PalGameWorldSettings]
OptionSettings=(ServerName="Lamball Ranch",ServerDescription="Friends only",AdminPassword="long-random-admin-password",ServerPassword="join-password",ServerPlayerMaxNum=16,RESTAPIEnabled=True,RESTAPIPort=8212,RCONEnabled=False,bIsUseBackupSaveData=True,CrossplayPlatforms=(Steam,Xbox,PS5,Mac))
Houd alles binnen die ene regel OptionSettings=(...) en pas waarden ter plekke aan; de echte regel is veel langer dan dit fragment en bevat ook elke gameplay-rate. De instellingen waarover je op dag één moet beslissen, uit de configuratiereferentie van Pocketpair:
| Sleutel | Waarde |
|---|---|
ServerName, ServerDescription | Wat spelers in de serverlijst zien |
ServerPassword | Een wachtwoord om mee te doen, tenzij de server publiek bedoeld is |
AdminPassword | Een lange willekeurige string. Die ontgrendelt de beheercommando's in de chat en de REST API |
ServerPlayerMaxNum | Je werkelijke limiet. De Steam-winkelpagina noemt 32 als maximum voor de dedicated server |
RESTAPIEnabled | True, voor het nette afsluiten in de systemd-sectie |
RCONEnabled | False. Pocketpair heeft RCON deprecated en zegt dat het "in een komende update zal stoppen met werken" |
bIsUseBackupSaveData | True. De back-upsectie beschrijft wat het bewaart |
CrossplayPlatforms | De standaardwaarde laat Steam, Xbox, PS5 en Mac toe; haal weg wat je wilt uitsluiten |
Lijkt een wijziging in het bestand genegeerd te worden, zoek dan naar een WorldOption.sav in de savemap van de wereld. Hostingproviders melden dat de waarden daarin winnen van de .ini als dat bestand er is, meestal na een wereld die vanuit co-op is overgezet.
Startargumenten na 1.0
De meeste Palworld-tutorials, waaronder veel uit 2024 en 2025, laten je de server starten met -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS. De pagina met argumenten van Pocketpair zegt nu het tegenovergestelde: "Vanaf v1.0 kan het weglaten van deze parameter de prestaties verbeteren." Het eigen voorbeeld-compose-bestand geeft ze nog wel mee, dus zie de flags als iets om tegen je eigen wereld te testen en niet als standaard. Begin zonder.
De argumenten die nog de moeite waard zijn:
| Argument | Effect |
|---|---|
-port=8211 | De UDP-gamepoort |
-players=32 | Spelerslimiet die bij het starten wordt meegegeven |
-publiclobby | Registreert de server als community server, wat consolespelers nodig hebben om hem te vinden |
-publicip= / -publicport= | Het adres en de poort die een community server adverteert, als die afwijken van wat de server zelf detecteert |
-logformat=text | Logformaat, text of json |
Onder systemd draaien met een nette afsluiting
De documentatie van Pocketpair zegt niets over hoe de server met SIGTERM omgaat, het signaal dat systemd bij een stop stuurt. Daarom slaat de unit op via de REST API en vraagt hij de server zichzelf af te sluiten voordat systemd een signaal stuurt.
Het stopscript, in /home/steam/palworld-stop.sh:
#!/bin/sh
# Save, give players a 10-second warning, then wait for the process to exit.
AUTH="admin:$(cat /home/steam/.palworld-admin-password)"
API=http://127.0.0.1:8212/v1/api
curl -s -u "$AUTH" -X POST "$API/save"
curl -s -u "$AUTH" -X POST "$API/shutdown" \
-H 'Content-Type: application/json' \
-d '{"waittime": 10, "message": "Server restarting in 10 seconds"}'
while kill -0 "$MAINPID" 2>/dev/null; do sleep 1; done
Zet het beheerderswachtwoord in /home/steam/.palworld-admin-password, eigendom van steam met mode 600, en maak het script uitvoerbaar. De REST API-referentie van Pocketpair schrijft HTTP Basic-authenticatie met het beheerderswachtwoord voor; de gebruikersnaam, admin, is die van hostingproviders en de API-clientbibliotheken.
De unit, in /etc/systemd/system/palworld.service:
[Unit]
Description=Palworld dedicated server
After=network-online.target
Wants=network-online.target
[Service]
User=steam
Group=steam
WorkingDirectory=/home/steam/palworld
ExecStart=/home/steam/palworld/PalServer.sh -port=8211 -players=16
ExecStop=/home/steam/palworld-stop.sh
Restart=on-failure
RestartSec=15
TimeoutStopSec=90
[Install]
WantedBy=multi-user.target
systemd geeft $MAINPID door aan ExecStop, dus de lus aan het eind van het script wacht tot de server zelf stopt. Antwoordt de API niet, dan verloopt de TimeoutStopSec van 90 seconden en valt systemd terug op het killen van het proces. Start hem en volg de log:
sudo systemctl daemon-reload
sudo systemctl enable --now palworld
journalctl -u palworld -f
Zet het herstartinterval dat bij je aantal spelers past in cron als systemctl restart palworld, op uren waarop niemand speelt. Het stopscript slaat eerst de wereld op, dus een herstart kost spelers een nieuwe verbinding en verder niets.
Poorten, crossplay en meedoen
Met één firewallregel komen spelers binnen:
sudo ufw allow 8211/udp comment 'Palworld'
Laat 8212 (REST) en 25575 (RCON) dicht. Beide API-pagina's van Pocketpair dragen dezelfde waarschuwing, dat de API's "niet ontworpen zijn om direct aan het internet te worden blootgesteld", en Basic-authenticatie over gewone HTTP stuurt het beheerderswachtwoord bij elk verzoek in een omkeerbare vorm mee. Benader ze vanaf de server zelf, zoals het stopscript doet, of via een SSH-tunnel. Sommige handleidingen openen ook 27015/udp als Steam-querypoort; het eigen compose-bestand van Pocketpair publiceert alleen 8211.
Hoe spelers meedoen, hangt af van hun platform. Crossplay tussen Steam, Xbox, PS5 en Mac staat standaard aan, maar in de Xbox- en PS5-versies kun je geen adres intypen: die zien alleen community servers. Voeg -publiclobby toe aan de regel ExecStart en de server verschijnt voor iedereen in de communitylijst in de game. Steam-spelers kunnen de lijst overslaan en direct verbinden met 203.0.113.10:8211 en het wachtwoord om mee te doen.
Thuis hosten brengt nog één valkuil mee. De pagina over community servers van Pocketpair merkt op dat je, als je router geen hairpin NAT ondersteunt, niet kunt meedoen op een community server op je eigen netwerk, ook al kunnen vrienden van buitenaf dat wel.
Beheercommando's en de REST API
Typ in de game /AdminPassword gevolgd door het beheerderswachtwoord in de chat om de beheercommando's te ontgrendelen. De bruikbare, uit de commandolijst van Pocketpair:
| Commando | Doet |
|---|---|
/ShowPlayers | Toont verbonden spelers met hun ID's |
/KickPlayer <SteamID>, /BanPlayer <SteamID>, /UnBanPlayer <SteamID> | Verwijdert of verbant een speler op Steam-ID |
/Broadcast <message> | Stuurt een bericht naar iedereen |
/Save | Schrijft de wereld nu naar schijf |
/Shutdown <seconds> <message> | Stopt de server na een aftelling |
/DoExit | Geforceerde stop, zonder aftelling |
De REST API doet hetzelfde zonder dat er iemand in de game hoeft te zijn, wat goed uitkomt voor scripts. Pocketpair noemt hem experimenteel. GET /v1/api/players toont wie er online is, GET /v1/api/metrics rapporteert server-FPS, aantal spelers en uptime, en POST /v1/api/announce plaatst een bericht. Een cronjob die de nachtelijke herstart vijf minuten van tevoren aankondigt, is drie regels shell op basis van het stopscript.
Back-ups en een co-op-wereld verhuizen
Met bIsUseBackupSaveData=True houdt de server zelf rollende kopieën van de wereld bij. De configuratiereferentie noemt als schema 5 kopieën met tussenpozen van 30 seconden, 6 van 10 minuten, 12 van een uur en 7 van een dag, en merkt op dat de optie de schijfbelasting verhoogt, nog een reden voor een SSD.
Die kopieën staan op dezelfde schijf als de wereld, dus ze beschermen tegen een kapotte save, niet tegen een dode schijf. Kopieer elke nacht de hele map Pal/Saved naar een andere machine:
tar -C /home/steam/palworld -czf /var/backups/palworld-$(date +%F).tar.gz Pal/Saved
rsync -a /var/backups/ backup@198.51.100.20:/srv/palworld/
De wereld staat onder Pal/Saved/SaveGames/0/, in een map met het ID van de wereld als naam, met daarin Level.sav, LevelMeta.sav en een map Players met één bestand per personage. Pak een back-up één keer uit in een testinstallatie en start er een server op; een back-up die nooit is teruggezet, is een aanname.
Een co-op-wereld naar de server verhuizen gebruikt dezelfde map: kopieer de wereldmap van de pc van de host naar Pal/Saved/SaveGames/0/, en zet DedicatedServerName in Pal/Saved/Config/LinuxServer/GameUserSettings.ini op de naam van die map. Elke gast houdt zijn personage. De host niet: in co-op is het personagebestand van de host altijd 00000000000000000000000000000001.sav, en de server behandelt de host als nieuwe speler tenzij dat bestand wordt omgezet naar zijn echte speler-ID. De communitytools die dat omzetten deden, zijn gebouwd voor saveformaten van vóór 1.0, dus test op een kopie.
Bijwerken na een patch
Pocketpair heeft sinds 1.0 vijf patches uitgebracht, de laatste v1.0.5 op 15 september 2026, en een client op een nieuwere versie dan de server kan er niet op. Bijwerken gaat met het SteamCMD-commando uit de installatiestap, terwijl de server gestopt is:
sudo systemctl stop palworld
sudo -u steam /usr/games/steamcmd +force_install_dir /home/steam/palworld \
+login anonymous +app_update 2394010 validate +quit
sudo systemctl start palworld
Maak eerst een back-up. Beschadigt een patch de wereld, dan is de back-up de enige weg terug.
Mods op een Linux-server
Palworld kreeg ondersteuning voor de Steam Workshop in de update v0.7 van december 2025, maar de moddocumentatie van Pocketpair is duidelijk over servers: "Op dit moment werken server-side mods alleen op de dedicated server in de Windows-editie." Op Linux draait de server zonder mods. Cosmetische mods die alleen op de client draaien, hebben geen serverondersteuning nodig, en of de server clients met mods toelaat, regelt de instelling bAllowClientMod.
Is een server-side mod de hele reden voor de server, dan bepaalt dat eerst het besturingssysteem. Pocketpair waarschuwde op 9 juli 2026, de dag vóór 1.0, ook dat mods die voor early-access-builds zijn geschreven op 1.0 crashes en beschadigde saves veroorzaken.
FAQ
Hoeveel RAM heeft een Palworld-server nodig?
Pocketpair raadt 16 GB aan, en 32 GB voor grotere servers. Volgens de pagina met vereisten start de server ook met 8 GB, maar dan neemt de kans toe dat hij crasht als het geheugen opraakt. Reken dat RAM voor de server alleen en geef het besturingssysteem daarbovenop een paar gigabyte voor zichzelf.
Welke poorten gebruikt een Palworld-server?
Spelers verbinden via 8211/udp, en dat is de enige poort die het eigen Docker Compose-bestand van Pocketpair publiceert. RCON (25575/tcp) en de REST API (8212/tcp) zijn beheerinterfaces die volgens Pocketpair op het LAN moeten blijven, dus houd ze dicht in de firewall en benader ze vanaf de server zelf of via SSH.
Kunnen spelers op Xbox en PS5 meedoen op een Palworld dedicated server?
Ja. Crossplay tussen Steam, Xbox, PS5 en Mac staat standaard aan, maar consolespelers vinden de server alleen als hij als community server wordt gestart met -publiclobby. Steam-spelers kunnen ook meedoen door het adres en de poort direct in te typen.
Kan ik mijn co-op-wereld naar een dedicated server verhuizen?
Ja, door de wereldmap naar de savemap van de server te kopiëren, maar het personage van de co-op-host komt niet schoon mee: het spelerbestand van de host heeft een vast ID, en de host begint met een nieuw personage tenzij dat bestand wordt omgezet. Maak van beide kanten een back-up voordat je het probeert.
Werken mods op een Palworld-server onder Linux?
Server-side mods niet. De moddocumentatie van Pocketpair stelt dat server-side mods op dit moment alleen werken op de Windows-editie van de dedicated server. Een Linux-server draait zonder mods.
Uitrollen op Serverside
Palworld wil 16 GB RAM voor het serverproces alleen, en een wereld vol werkende bases draait voor elke speler erop op de CPU van één machine. Een Serverside gameserver is een single-tenant AMD Ryzen-machine met volledige root op ons eigen netwerk, AS55285, geleverd in minder dan een minuut, dus de SteamCMD-download is het langste wachten in de hele installatie. Poort 8211 is ook een DDoS-doelwit zodra het adres ervan gedeeld wordt. Permanente mitigatie draait inline vóór elke Serverside-server, dus een UDP-flood wordt upstream gefilterd in plaats van de verbinding te vullen die je spelers delen; de gids over soorten DDoS-aanvallen legt uit waarom die filtering niet op de host zelf kan gebeuren.
Dezelfde machine kan meer dan één wereld hosten. Elke Palworld-instantie heeft een eigen poort, installatiemap en geheugenbudget nodig, en de gids over gameserver hosting behandelt het naast elkaar draaien van meerdere titels onder een panel. Voor de andere twee games in deze reeks, zie een Valheim-server hosten en een Minecraft-server hosten.
Geschreven door
CEO, Serverside.com & Host Havoc
Clay is the CEO of Serverside.com and Host Havoc, with more than a decade of experience running globally distributed hosting infrastructure and a game-server platform that has served over 200,000 customers.
Verder lezen
Alle artikelen bekijkenVond je dit artikel interessant?
Ontvang nieuwe handleidingen en technische artikelen in je inbox. Geen spam, altijd uitschrijfbaar.



