How to Back Up and Restore a Project Zomboid Server
A solid backup strategy saves servers from corrupted saves, mod conflicts, accidental wipes, and griefing. This guide covers what to back up, how to do it on a Pterodactyl-hosted server, and how to restore โ including the trick to restore just the world or just characters.
What to back up
You don't need to back up everything in /home/container. The mod files and binaries can re-download. Only these matter:
| Path | Why back up |
|---|---|
/home/container/Zomboid/Saves/Multiplayer/servertest/ |
Entire world โ chunks, vehicles, structures |
/home/container/Zomboid/Server/ |
Server config: .ini, SandboxVars.lua, spawnregions.lua |
/home/container/Zomboid/db/servertest.db |
SQLite โ admin list, whitelist, bans |
/home/container/Zomboid/Logs/ (optional) |
For debugging recent issues |
A typical full backup is 100โ600 MB depending on world exploration.
Method 1 โ Built-in panel backup (easiest)
DoomHosting servers (and any Pterodactyl panel) have a built-in Backups tab:
- Open your server
- Click Backups
- Click Create backup
- Wait 30 seconds to a few minutes depending on save size
- Download the .tar.gz to your computer
The backup captures the entire /home/container directory in one archive. Schedule one weekly via the panel's automated backup feature if available.
Method 2 โ Manual SFTP download
If you want only the save data (smaller download):
- Get SFTP details from the panel (usually under "Settings" or "SFTP Details")
- Connect with FileZilla or WinSCP
- Navigate to
/home/container/Zomboid/ - Download
Saves/,Server/, anddb/folders
Or via command line:
sftp -P PORT [email protected]
sftp> get -r /home/container/Zomboid/Saves/Multiplayer/servertest /local/backups/
sftp> get -r /home/container/Zomboid/Server /local/backups/
sftp> get /home/container/Zomboid/db/servertest.db /local/backups/
Method 3 โ In-game save before backup
For consistency, force a save before backing up:
- Connect to the server
- Run
/savein chat (admin required) - Wait for "World saved" message
- Stop the server (recommended for clean backup)
- Then back up
This ensures the on-disk state matches the in-game state. Without it, recent player actions might not be in the file yet.
Restoring a backup โ full restore
Wipe everything and restore from a backup:
- Stop the server
- Delete the current
/home/container/Zomboid/Saves/Multiplayer/servertest/folder - Upload your backup folder to the same path
- Start the server
Players reconnect to exactly the state captured in your backup.
Restoring just the world (keeping current players)
Players have made progress since your backup, but the world has been griefed:
- Stop the server
- Copy current
players.dbout of/home/container/Zomboid/Saves/Multiplayer/servertest/to safety - Restore the world from backup (replace the entire
servertestfolder) - Paste current
players.dbback into the restoredservertestfolder, overwriting the backup version - Start the server
Players keep their current levels/inventory, world reverts to the backup state.
Restoring just characters (keeping current world)
The opposite โ players got their characters wiped accidentally, but the world is fine:
- Stop the server
- Copy
players.dbfrom your backup - Paste into current
/home/container/Zomboid/Saves/Multiplayer/servertest/, overwriting the corrupted version - Start the server
Restoring server config only
Maybe you broke SandboxVars.lua and want the previous values back without touching the world:
- Stop the server
- From your backup, extract
/home/container/Zomboid/Server/servertest.iniand/home/container/Zomboid/Server/servertest_SandboxVars.lua - Upload to the same paths, overwriting current files
- Start the server
Backup retention strategy
For a 16-player public server, this rotation works well:
| Frequency | Retention | Use case |
|---|---|---|
| Hourly | Keep last 6 | Recover from very recent griefing |
| Daily | Keep last 7 | Recover from yesterday's bad event |
| Weekly | Keep last 4 | Long-term safety net |
| Monthly | Keep last 3 | Pre-major-mod-change snapshots |
DoomHosting plans include automated daily backups; configure additional cadence in the panel if needed.
Restoring to a different server / migrating hosts
If you're moving to a new host:
- Take a full backup from the old server
- On the new server, install Project Zomboid Dedicated Server
- Stop the new server (let it run once first to generate folder structure, then stop)
- Upload your backup contents to
/home/container/Zomboid/on the new server - Make sure the server name in the new panel matches (or rename the save folder to match the new server name)
- Start the new server
If players use a Steam server browser entry, they'll need the new IP. The world data carries over perfectly.
Common problems
"Restored but the world looks empty"
Wrong folder name. The save folder must match your server name exactly. If old server was servertest and new is MyServer, rename the folder.
"Players spawn at default location instead of where they were"
players.db wasn't restored, or you restored the world but the chunks where players were aren't in your backup (very unusual).
"Server boots fine but mods don't load after restore"
Mods aren't backed up โ they re-download from Steam. Check your modlist in servertest.ini is intact post-restore.
"Backup .tar.gz won't extract"
Use 7-Zip on Windows or tar -xzf backup.tar.gz on Linux/Mac. Don't use Windows' built-in extractor โ it sometimes corrupts long path names.
FAQ
How long does a backup take? 30 seconds for a small world (100 MB), up to 5 minutes for a heavily explored world (1 GB+). Server can stay running during backup but write performance drops briefly.
Can I back up while players are online? Technically yes, but the snapshot may catch mid-write state. For important backups, stop the server first.
Where does Pterodactyl store backups?
On disk under /var/lib/pterodactyl/backups/ on the host node, or on cloud storage if configured. From your perspective: just download via the panel.
What's the difference between a backup and a save?
/save flushes in-memory state to disk. A backup copies those disk files elsewhere. Both are needed: save first, backup second.
