Voltar ao blog
Janeiro 13, 2026Guias

Como configurar cópias de segurança automáticas no servidor Linux

Guia passo a passo sobre a configuração de scripts de cópia de segurança automatizados utilizando cron jobs para ficheiros e bases de dados.

Como configurar cópias de segurança automáticas no servidor Linux

Cópias de segurança regulares são essenciais para proteger os seus dados. Este guia mostra-lhe como configurar cópias de segurança automáticas para os seus ficheiros e bases de dados utilizando scripts de shell e cron jobs no seu servidor Hiddence.

Criar script de cópia de segurança

Crie um script de cópia de segurança para os seus ficheiros:

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 cron job

Agende cópias de segurança automáticas usando o cron:

bash
sudo crontab -e
# Adicione esta linha para executar o backup diariamente às 2 da manhã
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1

Script de cópia de segurança da base de dados

Crie um script para cópias de segurança da base de dados 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

Armazenamento de cópias de segurança remotas

Copie as cópias de segurança para um servidor remoto utilizando rsync ou 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 retenção de cópias de segurança

Configure a retenção para manter cópias de segurança por um período específico:

bash
# Manter backups diários por 7 dias
find /backups -name "backup_*.tar.gz" -mtime +7 -delete

# Manter backups semanais por 4 semanas
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete

# Manter backups mensais por 12 meses
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -delete

Melhores práticas de cópia de segurança

  • Teste a restauração da cópia de segurança regularmente
  • Armazene cópias de segurança em múltiplos locais
  • Encripte dados de cópia de segurança sensíveis
  • Monitorize os logs de cópia de segurança para erros
  • Documente os seus procedimentos de cópia de segurança
  • Configure alertas para falhas na cópia de segurança