Best Practices for Game Server Backup and Recovery
Losing game server data -- player progress, world saves, or configuration -- can be devastating for your community. Implementing a solid backup strategy on your Breeze ensures you can recover quickly from any failure.
What to Back Up
- World/save files -- the primary game data (maps, player inventories, structures)
- Configuration files -- server settings, mod configs, ban lists
- Plugin/mod data -- databases and state files for server plugins
- Player data -- profiles, permissions, and ranks
Automated Backup Script
#!/bin/bash
BACKUP_DIR="/home/steam/backups"
SERVER_DIR="/home/steam/gameserver"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_DIR/server_backup_$TIMESTAMP.tar.gz"
mkdir -p "$BACKUP_DIR"
tar -czf "$BACKUP_FILE" -C "$SERVER_DIR" saves/ config/ plugins/
find "$BACKUP_DIR" -name "*.tar.gz" -mtime +7 -delete
echo "Backup complete: $BACKUP_FILE"
Schedule with Cron
crontab -e
# Back up every 6 hours
0 */6 * * * /home/steam/scripts/backup.sh >> /var/log/game-backup.log 2>&1
Off-Server Backups
Store copies on a remote location for disaster recovery:
rsync -avz /home/steam/backups/ user@backup-server:/backups/gameserver/
Recovery Procedure
# Stop the game server
sudo systemctl stop gameserver
# Restore from backup
tar -xzf /home/steam/backups/server_backup_20260301_060000.tar.gz -C /home/steam/gameserver/
# Restart the server
sudo systemctl start gameserver
Key Recommendations
- Always stop the server or use save commands before backing up to avoid corrupted files
- Test your backups periodically by restoring to a separate directory
- Keep at least 7 days of rolling backups and one monthly archive
- Use Breeze snapshots as an additional safety net for full-server recovery