$ linux modulo_5

Backup 3-2-1 com Restic e Rsync

Um backup que ninguém nunca restaurou não é backup, é esperança. Monte uma rotina criptografada, com retenção e um teste de restore de verdade.

O que você vai aprender

1. Repositório Restic

Restic cria snapshots incrementais e criptografados dos diretórios que você escolher. Antes de rodar o primeiro backup, é preciso inicializar o repositório com uma senha — guarde essa senha com o mesmo cuidado que guardaria uma chave privada.

export RESTIC_PASSWORD_FILE=/etc/restic/password
restic init
restic backup /etc /opt /srv
restic snapshots
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --prune
ATENÇÃO A senha do repositório não pode ficar no histórico do shell. Proteja o arquivo com chmod 600 e mantenha uma cópia segura fora do servidor.

O comando forget com --prune aplica a política de retenção definida (diário, semanal, mensal) e remove os dados órfãos, mantendo o repositório enxuto sem perder histórico relevante.

2. Regra 3-2-1

A regra prática é simples: 3 cópias dos dados, em 2 mídias diferentes, com 1 cópia fora do local (off-site). Um snapshot do Restic no mesmo disco do servidor não conta como backup — se o disco falhar, os dois vão junto.

3. Cópia simples com rsync

Para réplicas diretas de diretórios (sem versionamento nem criptografia embutida), o Rsync continua sendo a ferramenta mais previsível. Rode sempre com --dry-run primeiro pra conferir o que seria alterado.

rsync -aHAX --delete /srv/ backup@storage:/backups/servidor/srv/
rsync -aHAX --dry-run /srv/ backup@storage:/backups/servidor/srv/

4. Restore é o teste

Um backup só vale alguma coisa se você já provou, em algum momento, que consegue restaurá-lo. Agende testes periódicos de restore em um ambiente isolado.

mkdir /tmp/restore
restic restore latest --target /tmp/restore
DICA DE PRODUÇÃO Calendarize um restore de teste (mensal ou trimestral). É o único jeito de descobrir problemas de backup antes de precisar dele de verdade.
EXERCÍCIO Inicialize um repositório Restic local, faça backup de um diretório de teste, aplique uma política de retenção e execute um restore completo em /tmp/restore para confirmar que os dados voltam íntegros.

Sumário do curso

Precisa de algo assim, sob medida pro seu negócio?

agendar diagnóstico gratuito →