Volver a herramientas

Cómo usar el script de backup

  1. Genera el script usando el formulario anterior
  2. Descarga o copia el script
  3. Guarda el script en tu servidor: sudo nano /usr/local/bin/backup.sh
  4. Hazlo ejecutable: sudo chmod +x /usr/local/bin/backup.sh
  5. Prueba ejecutándolo: sudo /usr/local/bin/backup.sh
  6. Programa la tarea en crontab: sudo crontab -e y añade 0 2 * * * /usr/local/bin/backup.sh

Requisitos

  • Linux/Unix con Bash 4+
  • tar, gzip/bzip2/xz (según compresión elegida)
  • rsync (si usas sincronización incremental)
  • mailutils (para notificaciones por email)

Preguntas frecuentes

¿Qué incluye un script de backup profesional?

Un script de backup profesional incluye: compresión con tar y gzip/bzip2/xz, rotación automática de backups antiguos, notificaciones por email al administrador, logs detallados de cada ejecución, y opcionalmente sincronización incremental con rsync a un servidor remoto.

¿Cada cuánto debo hacer backups de mi servidor?

Para servidores de producción se recomienda: backups completos diarios con retención de 7-30 días, backups semanales con retención de 3 meses, y backups mensuales con retención de 1 año. La frecuencia depende del volumen de datos y la criticidad del servicio.

¿Dónde debo almacenar los backups?

Sigue la regla 3-2-1: 3 copias de tus datos, en 2 tipos de almacenamiento diferentes, con 1 copia fuera del sitio (off-site). Ejemplo: copia local en el servidor, copia en disco externo o NAS, y copia en la nube (S3, rsync.net, Backblaze).

¿Cómo pruebo el script de backup antes de usarlo en producción?

Para probar tu script de backup de forma segura: 1) Ejecútalo manualmente con "sudo /usr/local/bin/backup.sh" desde una terminal. 2) Verifica que los archivos comprimidos se hayan creado en el directorio de destino. 3) Revisa los logs en /var/log/backup/ para confirmar que no hay errores. 4) Restaura un archivo de prueba a un directorio temporal con "tar -xzf backup.tar.gz -C /tmp/test-restore". 5) Simula la ejecución con "bash -x backup.sh" para ver cada paso en detalle.

¿Cómo restauro datos desde un backup?

Para restaurar desde un backup: si usas el script basado en tar, navega al directorio de backups y ejecuta "tar -xzf backup_YYYYMMDD_HHMMSS.tar.gz -C /ruta/restauracion". Para restaurar archivos específicos usa "tar -xzf backup.tar.gz --wildcards 'ruta/especifica/*'". Si usaste rsync para sincronización remota, invierte el comando: "rsync -avz usuario@servidor:/ruta/backup/ /ruta/restauracion/". Siempre restaura primero a un directorio temporal para verificar la integridad antes de sobrescribir datos originales.

¿Qué es la regla 3-2-1 de backup y por qué es importante?

La regla 3-2-1 es el estándar de la industria para la protección de datos: 3 copias de tus datos (1 original + 2 backups), almacenadas en 2 tipos de medios diferentes (ej. disco local + almacenamiento en la nube), con 1 copia fuera del sitio para protegerte contra desastres físicos como incendios, robos o inundaciones. Esta estrategia garantiza que incluso si dos sistemas fallan simultáneamente, aún puedas recuperar tus datos.

¿Cuál es la diferencia entre backup completo e incremental?

Un backup completo copia todos los datos seleccionados sin importar si han cambiado o no. Ocupa más espacio y tiempo, pero la restauración es más rápida ya que solo necesitas un archivo. Un backup incremental solo copia los datos que han cambiado desde el último backup (completo o incremental). Ocupa menos espacio y se ejecuta más rápido, pero la restauración requiere procesar toda la cadena de incrementales en orden.

Tipos de backup: completo vs incremental vs diferencial

CaracterísticaCompletoIncrementalDiferencial
Datos copiadosTodos los datosCambios desde último backupCambios desde último completo
VelocidadLentaMuy rápidaModerada
AlmacenamientoAltoBajoMedio (crece)
RestauraciónRápida (1 archivo)Lenta (cadena)Media (2 archivos)
FrecuenciaSemanalDiariaDiaria