Se o separador Backups não aparece no teu servidor, o teu plano não inclui cópias automáticas a partir do painel: as cópias de segurança ficam a teu cargo. A boa notícia é que montá-las leva dez minutos e pode poupar-te meses de trabalho.
O que guardar
- Servidores de jogos: o mundo ou o save, as configs e os recursos ou mods que tenhas alterado.
- Bases de dados: sempre com um dump (
mysqldump), nunca a copiar a pasta de dados com o servidor ligado. - Sites e bots: o código, o
.envou a config, e a respetiva base de dados.
Não precisas de guardar o sistema operativo: se perderes o servidor, reinstala-se em minutos. O que não se recupera são os teus dados.
Windows: cópia diária automática
Guarda isto como C:\copias\copia.ps1 (muda os caminhos para os teus):
$fecha = Get-Date -Format "yyyy-MM-dd"
$destino = "C:\copias\$fecha"
New-Item -ItemType Directory -Force -Path $destino | Out-Null
# 1) Os ficheiros do servidor (exemplo: FiveM)
robocopy "C:\FXServer\txData" "$destino\txData" /E /R:1 /W:1 /NFL /NDL
# 2) A base de dados (ajusta a versão do MariaDB no caminho)
& "C:\Program Files\MariaDB 11.4\bin\mysqldump.exe" -u root -pA_TUA_PALAVRA_PASSE --all-databases --single-transaction --result-file="$destino\bases-de-datos.sql"
# 3) Apaga as cópias com mais de 7 dias
Get-ChildItem "C:\copias" -Directory | Where-Object { $_.CreationTime -lt (Get-Date).AddDays(-7) } | Remove-Item -Recurse -Force
E agenda-a para todos os dias às 5:00 (PowerShell como administrador):
schtasks /Create /TN "Backup diario" /SC DAILY /ST 05:00 /RU SYSTEM /TR "powershell -ExecutionPolicy Bypass -File C:\copias\copia.ps1"
Linux: cópia diária automática
Cria /root/copia.sh:
#!/bin/bash
FECHA=$(date +%F)
DESTINO=/root/copias/$FECHA
mkdir -p "$DESTINO"
# 1) Os ficheiros do servidor (exemplo: Minecraft)
tar -czf "$DESTINO/minecraft.tar.gz" -C /home/minecraft servidor
# 2) A base de dados, se tiveres uma
mysqldump --all-databases --single-transaction > "$DESTINO/bases-de-datos.sql"
# 3) Apaga as que tenham mais de 7 dias
find /root/copias -mindepth 1 -maxdepth 1 -type d -mtime +7 -exec rm -rf {} +
chmod +x /root/copia.sh
crontab -e
# e acrescenta esta linha no fim:
0 5 * * * /root/copia.sh
Tira-as do servidor
Uma cópia que vive no mesmo VPS não te salva se perderes o VPS. Envia pelo menos uma para fora:
- Para o teu PC: no Windows, com a unidade partilhada do Ambiente de Trabalho Remoto; no Linux, com o WinSCP ou o FileZilla (como).
- Para a nuvem, de forma automática: o rclone funciona em Windows e Linux e envia para Google Drive, OneDrive, Dropbox ou S3. Depois de o configurares com
rclone config, acrescenta no fim do teu script algo comorclone copy /root/copias midrive:copias-vps.
Confirma que se restauram
Uma cópia que nunca tentaste restaurar é uma esperança, não uma cópia. Uma vez por mês, descomprime uma noutra pasta e confirma que está tudo lá.
Antes de reinstalar, antes de uma mudança grande ou de um wipe, faz sempre uma cópia à mão.