Game server backups, 3-2-1 for people who aren't sysadmins

Oct 15, 20255 min read#backups#operations

Game server backups, 3-2-1 for people who aren't sysadmins

The "3-2-1 rule" sounds like enterprise speak. It isn't. It's a one-line summary of "what you actually need so you don't lose your server."

This article translates 3-2-1 into a concrete setup someone with no sysadmin background can do this weekend.

The rule, visualized

That's all. The reasoning underneath is elegant: any single failure mode breaks one location; two-of-three survives. Off-site survives the worst case (your house burning down, your hosting company disappearing).

Translated to your server

For a game server:

  • Copy 1: The live world on the host.
  • Copy 2: A backup folder on the same host or a different drive.
  • Copy 3: A backup in cloud storage somewhere else entirely.

Each copy serves a different threat:

Threat Defense
You accidentally delete a file Copy 2
Your save corrupts during a crash Copy 2
The hosting provider deletes your server Copy 3
The hosting provider goes bankrupt Copy 3
Your billing card expires and they delete your data Copy 3

Copy 2 covers the common stuff. Copy 3 covers the catastrophes you don't think about until they happen.

What "off-site" means in practice

Off-site means: stored somewhere that wouldn't go down at the same time as your live server.

If your live server is on Hosting Provider A:

  • Off-site is NOT another folder on Hosting Provider A.
  • Off-site is cloud storage (S3, Backblaze, R2), a different hosting provider, your home machine, or a friend's machine.

For most hobbyists, cloud object storage is the cheapest and simplest off-site option. Backblaze B2 charges about $6 per terabyte per month. A 10 GB game backup costs about $0.06 a month. There's no excuse for not doing this.

The 30-minute setup

Yes

No

Open hosting panel

Backups tab → every 6h, keep 14 days

Sign up for Backblaze B2

Install rclone on the server

rclone config → add B2 remote

Optionally add a 'crypt' remote
for client-side encryption

cron: daily push of latest
local backup to B2

Test restore: download,
extract, boot

Works?

Done. Cost: cents per month

Fix it now, not during a real fire

Step 1: Set up local backups

Most game hosting panels (Pterodactyl, etc.) have a "Backups" tab. Set it to:

  • Take a backup every 6 hours.
  • Keep 14 days of backups.

Done. Copy 1 is the live server. Copy 2 is the panel-managed backups on the host.

Step 2: Sign up for cloud storage

Pick one:

  • Backblaze B2. Cheap, simple. ~$6/TB/month.
  • AWS S3. More features but more complex.
  • Cloudflare R2. Zero egress fees, good for backups you'll mostly read locally.

Backblaze B2 is the recommended default for hobbyists. Sign up, create a bucket, generate an API key.

Step 3: Set up rclone

rclone is a free tool that syncs files between local and cloud storage. Install on your server (or anywhere the backups exist).

rclone config

Walks you through adding a remote. Pick "Backblaze B2." Enter your key. Save.

Test:

rclone ls b2:your-bucket-name

Should list the bucket contents (empty at first).

Step 4: Daily push to cloud

A simple script that runs from cron once a day:

#!/bin/bash
# Push latest local backup to B2
LATEST=$(ls -1t /home/user/server/backups/*.tar.gz | head -1)
rclone copy "$LATEST" b2:your-bucket-name/

Save as /usr/local/bin/backup-push.sh, make executable, cron at 2 AM:

0 2 * * * /usr/local/bin/backup-push.sh

rclone supports "crypt" remotes that encrypt before uploading. To set up:

rclone config

Choose "n" for new remote, name it b2-crypt, type crypt, point it at your existing b2: remote with a path.

Now rclone copy file b2-crypt:bucket/path encrypts as it uploads. The file is unreadable to Backblaze (or anyone else who gets the data).

Set a strong passphrase. Store it in a password manager. Print it. Email it to yourself. If you lose the passphrase, your backups are gone.

A working setup, summarized

After 30 to 60 minutes of setup:

  • Live server: in your hosting panel.
  • Local backups: every 6 hours, 14 days retention, automatic via panel.
  • Off-site backups: daily push to encrypted cloud storage.
  • Cost: cents per month.

You now meet 3-2-1.

The restore test

You're not done until you've tested restoring. Schedule a test for the same weekend:

  1. Pick the most recent backup in cloud storage.
  2. Download it.
  3. Extract it to a side directory.
  4. (For a game server) boot a test instance on the backup.
  5. Confirm it loads.

If anything fails, fix it now while you have time. The first restore-from-scratch should never be in an emergency.

Common mistakes the simple setup catches

Mistake: all backups on the same drive.

The panel's backup feature puts backups on the same disk as the server. If the disk fails, you lose both. The cloud push fixes this.

Mistake: trusting "automatic backups" without verification.

The panel says it backed up. The backup file might be a few bytes of error message. Test by downloading and extracting periodically.

Mistake: keeping only the latest backup.

You might not notice corruption for a week. By then, your "current backup" is just a copy of the corrupted data. Keep multiple versions: 14 daily + weekly + monthly retention is good.

Mistake: not encrypting.

Your world file may contain player data (UUIDs, IPs, plugin databases with email addresses). Encryption is cheap insurance.

A note on retention

How long is long enough?

Tier What it recovers from
24 hourly "I made a mistake an hour ago"
14 to 30 daily "We just noticed a problem from a week ago"
12 weekly "The corruption started months ago and we've been backing up the corruption"
1 year monthly Disaster recovery, "I miss what spawn looked like"

Storage is cheap. Don't skimp on retention.

What if you self-host?

If your server is on a home machine, your "off-site" needs to leave the house. Same rclone setup, push to cloud storage. The Backblaze B2 cost is the same. There's no reason your home server should be less protected than a paid one.

A note for shared / cheap hosting

Some very low-budget hosting tiers limit the size or frequency of backups. If you're on such a plan:

  • Use whatever the panel provides.
  • Add your own cloud push.
  • Consider upgrading if your community is growing and the host won't keep up.

Trust your own backups more than any host's marketing.

Conclusion

3-2-1 sounds enterprise. It's actually one weekend of setup. Once done, your server is meaningfully safer than most game servers, including many that pay for "backup services." The investment is tiny; the protection is genuine.

Don't wait until something breaks to set this up. Do it this weekend.


Hosting your game server with AndroHost means we handle most of what's in this post for you automatically: tier sizing, SRV records, off-site backups, DDoS protection.

Browse plans·More posts·Discord