Se nel tuo server non compare la scheda Backup, il tuo piano non include backup automatici dal pannello: i backup sono affar tuo. La buona notizia è che impostarli richiede dieci minuti e può farti risparmiare mesi di lavoro.
Cosa copiare
- Server di gioco: il mondo o la partita, i file di configurazione e le risorse o le mod che hai modificato.
- Database: sempre con un dump (
mysqldump), mai copiando la cartella dei dati con il server acceso. - Siti web e bot: il codice, il
.envo la configurazione, e il relativo database.
Non serve copiare il sistema operativo: se il server va perso, si reinstalla in pochi minuti. Ciò che non si può recuperare sono i tuoi dati.
Windows: backup giornaliero automatico
Salva questo come C:\copias\copia.ps1 (cambia i percorsi con i tuoi):
$fecha = Get-Date -Format "yyyy-MM-dd"
$destino = "C:\copias\$fecha"
New-Item -ItemType Directory -Force -Path $destino | Out-Null
# 1) I file del server (esempio: FiveM)
robocopy "C:\FXServer\txData" "$destino\txData" /E /R:1 /W:1 /NFL /NDL
# 2) Il database (adatta la versione di MariaDB nel percorso)
& "C:\Program Files\MariaDB 11.4\bin\mysqldump.exe" -u root -pLA_TUA_PASSWORD --all-databases --single-transaction --result-file="$destino\bases-de-datos.sql"
# 3) Elimina i backup più vecchi di 7 giorni
Get-ChildItem "C:\copias" -Directory | Where-Object { $_.CreationTime -lt (Get-Date).AddDays(-7) } | Remove-Item -Recurse -Force
E pianificalo per tutti i giorni alle 5:00 (PowerShell come amministratore):
schtasks /Create /TN "Backup giornaliero" /SC DAILY /ST 05:00 /RU SYSTEM /TR "powershell -ExecutionPolicy Bypass -File C:\copias\copia.ps1"
Linux: backup giornaliero automatico
Crea /root/copia.sh:
#!/bin/bash
FECHA=$(date +%F)
DESTINO=/root/copias/$FECHA
mkdir -p "$DESTINO"
# 1) I file del server (esempio: Minecraft)
tar -czf "$DESTINO/minecraft.tar.gz" -C /home/minecraft servidor
# 2) Il database, se ce l'hai
mysqldump --all-databases --single-transaction > "$DESTINO/bases-de-datos.sql"
# 3) Elimina quelli più vecchi di 7 giorni
find /root/copias -mindepth 1 -maxdepth 1 -type d -mtime +7 -exec rm -rf {} +
chmod +x /root/copia.sh
crontab -e
# e aggiungi questa riga alla fine:
0 5 * * * /root/copia.sh
Portali fuori dal server
Un backup che vive sullo stesso VPS non ti salva se perdi il VPS. Portane almeno uno fuori:
- Sul tuo PC: su Windows, con l'unità condivisa del desktop remoto; su Linux, con WinSCP o FileZilla (come fare).
- Nel cloud, in automatico: rclone funziona su Windows e Linux e carica su Google Drive, OneDrive, Dropbox o S3. Dopo averlo configurato con
rclone config, aggiungi alla fine del tuo script qualcosa comerclone copy /root/copias midrive:copias-vps.
Verifica che si possano ripristinare
Un backup che non hai mai provato a ripristinare è una speranza, non un backup. Una volta al mese, decomprimine uno in un'altra cartella e controlla che ci sia tutto.
Prima di reinstallare, di una modifica importante o di un wipe, fai sempre un backup a mano.