BackupsRsyncAutomatización8 min de lectura

Configurar backups automáticos con rsync

Automatizá backups incrementales con rsync y cron para proteger tus datos en un servidor remoto.


rsync permite hacer copias incrementales eficientes: solo transfiere los archivos que cambiaron. Combinado con cron, tenés backups automáticos sin intervención.

Paso 1 — Instalar rsync

bash
sudo apt update
sudo apt install rsync -y

Paso 2 — Configurar claves SSH sin contraseña

Para que el backup corra sin intervención:

bash
ssh-keygen -t ed25519 -f ~/.ssh/backup_key -N ""
ssh-copy-id -i ~/.ssh/backup_key.pub usuario@SERVIDOR_BACKUP

Paso 3 — Crear el script de backup

Creá /usr/local/bin/backup.sh:

bash
#!/bin/bash
FECHA=$(date +%Y-%m-%d_%H%M)
ORIGEN="/var/www /home /etc"
DESTINO="usuario@SERVIDOR_BACKUP:/backups/mi-vps/"
LOG="/var/log/backup-$FECHA.log"

echo "Inicio backup: $FECHA" > $LOG

for dir in $ORIGEN; do
  rsync -avz --delete \
    -e "ssh -i /root/.ssh/backup_key" \
    $dir $DESTINO \
    >> $LOG 2>&1
done

echo "Fin backup: $(date)" >> $LOG

Dale permisos:

bash
sudo chmod +x /usr/local/bin/backup.sh

Paso 4 — Programar con cron

bash
sudo crontab -e

Agregá (backup diario a las 3 AM):

terminal
0 3 * * * /usr/local/bin/backup.sh

Paso 5 — Backup con retención por fecha

Para mantener backups históricos:

bash
#!/bin/bash
FECHA=$(date +%Y-%m-%d)
DESTINO="usuario@SERVIDOR_BACKUP:/backups/mi-vps/$FECHA/"

rsync -avz --delete \
  -e "ssh -i /root/.ssh/backup_key" \
  /var/www/ $DESTINO

Paso 6 — Verificar backups

bash
# Simulación sin transferir (dry-run)
rsync -avzn --delete /var/www/ usuario@SERVIDOR_BACKUP:/backups/test/

# Ver último log
ls -lt /var/log/backup-*.log | head -1 | xargs cat

Opciones útiles de rsync

bash
--exclude='*.log'       # Excluir archivos
--exclude='node_modules' # Excluir directorios
--bwlimit=5000          # Limitar ancho de banda (KB/s)
--compress              # Comprimir durante transferencia

Con esta configuración, tu VPS de Baires Host mantiene copias seguras automáticas en un servidor externo.


¿Te resultó útil esta guía?