A all-in-one backup system for your minecraft server!
The most advanced backup solution for Minecraft servers
/abackup uploadlast command to retry failed uploads/abackup cancelancientbackup.admin for commands, ancientbackup.notify for notificationsplugins/ folderplugins/Ancient-Backup/config.ymlbackup:
use-zstd: true # Enable ZSTD compression (recommended)
zip-level: 1 # 1 = fast, 9 = smallest file
schedule:
enabled: true # Enable automatic backups
every-minutes: 360 # Backup every 6 hours
upload:
sftp:
enabled: true
host: "your-server.com"
port: 22
username: "backup-user"
password: "your-password"
remote-folder: "/backups/minecraft"
Run your first backup with:
/abackup start
Check status with:
/abackup status
| Command | Permission | Description |
|---|---|---|
/abackup start |
ancientbackup.admin |
Start a new backup |
/abackup cancel |
ancientbackup.admin |
Cancel the running backup |
/abackup status |
ancientbackup.admin |
Check backup progress |
/abackup uploadlast |
ancientbackup.admin |
Retry uploading the last backup |
/abackup reload |
ancientbackup.admin |
Reload configuration |
Get beautiful real-time updates in Discord:
discord:
enabled: true
webhook-url: "https://discord.com/api/webhooks/..."
notifications:
on-backup-start: true
on-zip-complete: true
on-upload-start: true
on-upload-complete: true
on-backup-complete: true
Features:
Exclude large folders to reduce backup size:
backup:
exclude:
- "logs/*.gz"
- "logs/*.log.*"
- "plugins/dynmap/web/tiles/**"
- "plugins/BlueMap/web/**"
- "**/cache/**"
Compress and upload simultaneously (no local file):
upload:
streaming-compression: true # Requires SFTP or FTPS
Benefits:
Limitations:
Optimize for your server:
performance:
max-memory-mb: 512 # Maximum RAM usage
max-buffer-kb: 8192 # Buffer size for compression
gc-after-zip: true # Free memory after compression
cleanup-after-backup: true # Full memory cleanup
tps-threshold: 18.0 # Slow down if TPS drops below this
Automatically delete old backups:
retention:
enabled: true
keep-last: 7 # Keep only the last 7 backups
filename-prefix: "backup-" # Filter files by prefix
filename-suffix: ".tar.zst" # Filter files by extension
For enhanced security, use SSH keys instead of passwords:
Generate an SSH key:
ssh-keygen -t ed25519 -f ~/.ssh/minecraft_backup
Add the public key to your server:
ssh-copy-id -i ~/.ssh/minecraft_backup.pub [email protected]
Configure Ancient-Backup:
sftp:
private-key-path: "plugins/Ancient-Backup/minecraft_backup"
password: "" # Leave empty when using key auth
Tested on a 10GB Minecraft server with Paper 1.21.10:
| Method | Time | CPU Usage | Disk I/O |
|---|---|---|---|
| ZSTD Level 1 | 2m 15s | Low | Minimal |
| ZIP Level 1 | 6m 30s | Medium | Medium |
| ZIP Level 9 | 12m 45s | High | High |
Streaming Mode: Reduces total backup time by 30-40% compared to traditional mode.
/abackup uploadlast to retryperformance.max-buffer-kb to reduce memory usagebackup.zip-level to use less CPUperformance.tps-threshold higher to trigger throttling soonerdiscord.enabled: trueThis plugin is released under the MIT License. See LICENSE for details.
If you find Ancient-Backup useful, please consider:
Made with ❤️ for the Minecraft community