Volver al blog
Enero 13, 2026Guías

Cómo configurar copias de seguridad automáticas en un servidor Linux

Guía paso a paso sobre la configuración de scripts de copia de seguridad automatizados mediante tareas cron para archivos y bases de datos.

Cómo configurar copias de seguridad automáticas en un servidor Linux

Las copias de seguridad regulares son esenciales para proteger sus datos. Esta guía le muestra cómo configurar copias de seguridad automáticas para sus archivos y bases de datos utilizando scripts de shell y tareas cron en su servidor Hiddence.

Creación del script de copia de seguridad

Cree un script de copia de seguridad para sus archivos:

bash
sudo nano /usr/local/bin/backup.sh
#!/bin/bash
BACKUP_DIR="/backups"
SOURCE_DIR="/var/www"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz $SOURCE_DIR
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/backup.sh

Configurar la tarea cron

Programe las copias de seguridad automáticas mediante cron:

bash
sudo crontab -e
# Añadir esta línea para ejecutar la copia de seguridad diariamente a las 2 AM
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1

Script de copia de seguridad de la base de datos

Cree un script para las copias de seguridad de la base de datos MySQL:

bash
sudo nano /usr/local/bin/db_backup.sh
#!/bin/bash
BACKUP_DIR="/backups/db"
DB_NAME="your_database"
DB_USER="root"
DB_PASS="your_password"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db_backup_$DATE.sql
gzip $BACKUP_DIR/db_backup_$DATE.sql
find $BACKUP_DIR -name "db_backup_*.sql.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/db_backup.sh

Almacenamiento remoto de copias de seguridad

Copie las copias de seguridad a un servidor remoto utilizando rsync o SCP:

bash
#!/bin/bash
BACKUP_DIR="/backups"
REMOTE_HOST="backup-server.com"
REMOTE_USER="backup"
REMOTE_DIR="/backups"
rsync -avz -e ssh $BACKUP_DIR/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/

Política de retención de copias de seguridad

Configure la retención para mantener las copias de seguridad durante un periodo específico:

bash
# Mantener las copias de seguridad diarias durante 7 días
find /backups -name "backup_*.tar.gz" -mtime +7 -delete

# Mantener las copias de seguridad semanales durante 4 semanas
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete

# Mantener las copias de seguridad mensuales durante 12 meses
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -delete

Mejores prácticas de copia de seguridad

  • Pruebe la restauración de las copias de seguridad regularmente
  • Almacene las copias de seguridad en varias ubicaciones
  • Cifre los datos sensibles de las copias de seguridad
  • Monitorice los registros de copias de seguridad para detectar errores
  • Documente sus procedimientos de copia de seguridad
  • Configure alertas para fallos en las copias de seguridad