
Escrita · 15 dez 2023
Esquema de rotação de cópias de segurança
Roda as tuas cópias de segurança com o 'rsync-backup-rotator'
Na era digital em que vivemos, proteger os teus dados é essencial. Fazer simplesmente uma cópia dos ficheiros pode não chegar, porque podem ficar corrompidos, ser substituídos ou ser bloqueados por ransomware. Ter várias cópias de segurança rotativas no tempo (e, idealmente, noutro local) é uma defesa bem mais forte. Criei uma nova ferramenta, o rsync-backup-rotator, para te ajudar com isto.
Esquema de rotação de cópias de segurança
A rotação de cópias de segurança é uma estratégia da gestão de dados em que se criam e guardam várias cópias de segurança em intervalos diferentes, em vez de se depender de uma única cópia. Este método é particularmente útil porque reduz vários riscos associados à perda de dados. Por exemplo, se uma única cópia de segurança ficar corrompida, for substituída ou for comprometida (por exemplo, por ransomware), podem perder-se todos os dados desde a última cópia de segurança. Ao rodar as cópias de segurança, crias vários pontos de recuperação e podes restaurar dados de momentos diferentes. Esta abordagem dá uma rede de segurança mais completa, porque protege tanto contra perdas recentes como contra problemas mais antigos.

A ferramenta `rsync-backup-rotator` adota este conceito de rotação. Automatiza o processo de criar e gerir estas cópias de segurança rotativas. Em concreto, a ferramenta usa uma pasta central “current” com os dados da cópia de segurança mais recente. Com base nas definições do utilizador, roda depois esses dados para pastas diferentes. Nas cópias de segurança diárias, cria e guarda cópias em subpastas com o nome de cada dia da semana, dentro de uma pasta “week”. Ou seja, há uma cópia de segurança separada para cada dia, como “Monday”, “Tuesday”, e assim por diante. Nas cópias de segurança mensais, no primeiro dia de cada mês cria um instantâneo numa subpasta mensal correspondente, dentro de uma pasta “month”, como “January”, “February”, etc. Este sistema garante que os utilizadores têm uma série de cópias de segurança com data, o que dá flexibilidade e segurança na hora de restaurar os dados.
Porquê o rsync?
O rsync é uma ferramenta que torna as cópias de segurança eficientes e eficazes. Funciona a atualizar apenas as partes dos ficheiros que mudaram desde a última cópia de segurança, em vez de copiar tudo outra vez. Esta abordagem reduz muito a quantidade de dados transferidos, poupa o desgaste dos discos rígidos e dos SSDs e reduz os custos do armazenamento na nuvem, porque menos alterações de dados significam menos operações de I/O. Basicamente, o rsync garante cópias de segurança rápidas e leves em recursos, o que o torna uma escolha inteligente para cópias de segurança e rotação regulares.
O rsync é uma ferramenta padrão, não comercial, incluída em muitos sistemas operativos como GNU/Linux, variantes de BSD e macOS, pelo que é fácil de obter sem instalações nem compras adicionais. Com a confiança de milhões de pessoas em todo o mundo, as suas capacidades robustas e eficientes de cópia de segurança fizeram dele um padrão do setor fiável e muito usado.
Criar cópias de segurança com o rsync
Para criar uma única cópia com o rsync, podes usar o comando `rsync -arvz SOURCE TARGET`. Num artigo anterior expliquei como usar o rsync para fazer cópias de segurança, e podes encontrá-lo aqui: Como usar o rsync para fazer cópias de segurança. É importante decidires com cuidado o que queres guardar, seja uma simples pasta de documentos ou uma instalação inteira. A ferramenta `rsync-backup-rotator`, de que falo neste artigo, parte do princípio de que já tens um mecanismo de cópia a funcionar. Esse mecanismo deve manter uma cópia atualizada dos teus ficheiros numa pasta chamada “current”, num caminho acessível à ferramenta, o que permite uma rotação eficiente.
A ferramenta: rsync-backup-rotator
Tal como nos meus relógios, aqui e aqui, prefiro ferramentas intemporais, claras, simples e dedicadas à sua tarefa. O rsync-backup-rotator nasceu com esta mesma filosofia de design.
A ferramenta é um script de bash que corre sem dependências esquisitas nem peso a mais em praticamente todos os sistemas GNU/Linux, BSD e macOS. Caramba, provavelmente consegues pô-la a funcionar também no Windows, com o WSL. Foi pensada para fazer o seu trabalho hoje e no futuro, sem manutenção nem atualizações obrigatórias.
Podes transferir a ferramenta aqui: https://source.willem.com/rsync-backup-rotator/ Lá encontras também as instruções e um registo de alterações. A ferramenta é distribuída como software livre sob a licença GPLv3, pensada para garantir a tua liberdade de usar, partilhar e alterar todas as versões desta ferramenta.
Instalação
- Transfere o script de https://source.willem.com/rsync-backup-rotator/
- Torna o script executável: `chmod +x rsync-backup-rotator.sh`
Utilização
Para usar o rsync-backup-rotator, corre o script com os argumentos necessários: ./rsync-backup-rotator.sh
Opções:
- -w: ativa as cópias de segurança para cada dia da semana.
- -m: ativa as cópias de segurança para o primeiro dia de cada mês.
- --delete: inclui a opção --delete no rsync para remover no destino os ficheiros que já não existem na origem.
- --help: mostra a informação de ajuda.
Exemplos:
- Fazer uma cópia de segurança por dia da semana: `./rsync-backup-rotator.sh /path/to/parent -w`
- Fazer cópias de segurança por dia da semana e mensais, com remoção dos ficheiros apagados: `./rsync-backup-rotator.sh /path/to/parent -w -m --delete`
Conclusão
No futuro pretendo lançar mais ferramentas e aplicações como software livre sob a licença GPLv3. Embora seja um começo pequeno, é a minha humilde tentativa de retribuir algo ao mundo. Mantém-te seguro, mantém as tuas cópias de segurança em dia!
