Skip to main content
McDis-RCON provides an automated backup system to protect your server data. Backups are stored as compressed ZIP files and managed with configurable retention limits.

Backup Configuration

The number of backups retained is configured in md_config.yml:
md_config.yml
Backups: 3  # Keep the 3 most recent backups
The Backups value must be an integer between 1 and 5. Older backups are automatically deleted when the limit is reached.

Backup Storage Location

Backups are stored in the .mdbackups folder with process-specific subdirectories:
McDis/
├── .mdbackups/
│   ├── server 1/
│   │   ├── server 1 1.zip  (newest)
│   │   ├── server 1 2.zip
│   │   └── server 1 3.zip  (oldest)
│   ├── server 2/
│   └── network 1/

Creating Backups

1

Open File Manager

Click the Files button in the Discord panel
2

Navigate to .mdbackups

Use the dropdown to select McDis/.mdbackups
3

Choose process folder

Select the folder for the process you want to back upBackups Interface
4

Create backup

Select “Create new backup” from the dropdown menu
5

Stop the process

McDis-RCON will prompt you to stop the process before creating the backup
The process must be stopped to ensure data consistency during backup creation.
6

Wait for completion

The backup will be created and numbered automatically

Backup Interface

When viewing a process’s backup folder, you’ll see:

⬅️ Back

Return to the .mdbackups folder

🔄 Reload

Refresh the backup list

📦 Files

View the raw file interface for manual operations

Dropdown

Lists existing backups and “Create new backup” option

Automatic Backup Rotation

McDis-RCON automatically manages backup rotation:
1

Create new backup

When creating a backup, all existing backups are renumbered:
  • server 1 1.zipserver 1 2.zip
  • server 1 2.zipserver 1 3.zip
  • New backup becomes server 1 1.zip
2

Delete old backups

If the number of backups exceeds your configured limit, the oldest backup is automatically deleted
3

Add timestamp

Each backup includes a backup_log.txt file with creation timestamp:
Backup created on: 2025-03-13 14:30:22
Backup numbering is based on creation time, with 1 being the most recent.

Restoring from Backup

To restore a server from backup:
1

Download the backup

Navigate to .mdbackups/<process>/ and request the desired backup file
Use Flask integration for backups larger than 5MB.
2

Stop the process

Ensure the process is completely stopped:
!!stop SMP
3

Clear process folder

Manually delete the contents of the process folder or use the Terminal
4

Extract backup

Upload and extract the backup ZIP file to the process folder
5

Restart process

Start the process to load the restored data:
!!start SMP

What Gets Backed Up

Backups include the entire process folder:
McDis/server 1/
├── world/              ✓ Included
├── plugins/            ✓ Included
├── server.jar          ✓ Included
├── server.properties   ✓ Included
├── .mdplugins/         ✓ Included
├── .mdcommands/        ✓ Included
└── logs/               ✓ Included
Backups can be large (several GB for worlds with extensive exploration). Ensure you have sufficient disk space.

Backup Best Practices

Regular Backup Schedule

Create backups at regular intervals:
  • Before updates: Back up before updating server software or plugins
  • After major builds: Protect player creations
  • Before configuration changes: Ensure you can rollback if needed

Off-site Storage

For critical servers:
  1. Download backups regularly
  2. Store copies on external drives or cloud storage
  3. Test restore procedures periodically

Backup Before Risky Operations

# Example workflow
!!stop SMP           # Stop the server
# Create backup via Discord interface
# Make risky changes (world edit, config updates, etc.)
!!start SMP          # Restart with changes
# If issues occur, restore from backup

Monitoring Backup Status

Check Backup Count

Navigate to .mdbackups/<process>/ to see how many backups exist:
  • If you have fewer backups than your limit, you have room for more
  • If at the limit, the next backup will delete the oldest

Backup Timestamps

Each backup includes a timestamp in backup_log.txt after extraction:
# Extract backup and check timestamp
unzip "server 1 1.zip"
cat backup_log.txt

Troubleshooting

Possible causes:
  • Process is still running → Stop the process first
  • Insufficient disk space → Free up space
  • File permission issues → Check folder permissions
Solution:
!!stop SMP
# Wait for process to fully stop
# Try backup creation again
Problem: Backup exceeds Discord’s 5MB limitSolution: Enable Flask integration:
  1. Configure Flask in md_config.yml
  2. Request the backup file
  3. Use the generated download link
See Flask Integration for details.
Checklist:
  1. Process must be stopped during restore
  2. Clear old files before extracting backup
  3. Ensure all files extracted to correct location
  4. Remove backup_log.txt after restoration (optional)
  5. Verify folder structure matches original
Combine backups with version control for configuration files (.yml, .json) to track changes over time.

Example Backup Workflow

Here’s a complete workflow for managing backups:
# 1. Pre-update backup
!!stop SMP
# Create backup via Discord Files → .mdbackups → SMP → Create new backup

# 2. Update server software
# Upload new server.jar via File Manager

# 3. Test the update
!!start SMP
# Monitor console for errors

# 4. If successful, keep new backup
# If issues occur, restore from backup:
!!stop SMP
# Extract "SMP 1.zip" to process folder
!!start SMP
Automatic backup rotation ensures you always have recent backups without manual cleanup.

Build docs developers (and LLMs) love