Eu tenho um pequeno servidor doméstico (Ubuntu Server 17.10) e gostaria de configurar alguns backups para ele. Meus principais pontos são:
- O servidor tem dois discos rígidos. O primeiro (um SSD) é particionado com a partição EFI e um espaço LVM; dentro há dois volumes LVM, e eu quero fazer backup de um deles. Deixei espaço suficiente para fazer um volume instantâneo quando necessário. O segundo tem duas partições e eu quero montar o segundo quando necessário para armazenar os backups. Estas duas partições no segundo HDD não fazem parte do espaço LVM
- O servidor não está em 24/7
- Eu gostaria de ter algum backup assim:
- Todos os dias, a 1.00 *, execute um backup incremental; se o backup não for executado porque o PC está desligado, execute-o quando estiver pronto
- Mantenha no máximo 5 * backups incrementais diários. Se um dia o backup não foi executado porque o PC estava desligado durante todo o dia, deve haver sempre backups de 5 *.
- Todo mês deve haver um backup completo (ou seja, não incremental) para proteger contra corrupção de dados
- Mantenha no máximo 3 * backups mensais completos. O mesmo conceito explicado no ponto 2 se aplica (3 * backups, não os backups dos últimos 3 * meses)
Nota: o tempo e a quantidade de backups (anotados por um *) podem ser alterados.
Por exemplo, hoje é o 14/03. No dia 11/03 o PC ficou desligado o dia todo, então no banco de dados deve haver:
Backups incrementais: 14/03, 13/03, 12/03, 10/03, 09/03 (09/03 também podem ser preenchidos se necessário) Backups completos: 01/03, 01/02, 01/01
Agora, sou muito novo nisso, então comecei a olhar em volta e encontrei o Attic e depois o Borg. Mas não consigo entender se o que eu quero alcançar é factível com borg ou não, ou se existem maneiras mais fáceis de fazer isso do que usar este programa (considerando que estou no LVM, então talvez eu possa usar um instantâneo para " faixa "muda ou .. o que for).
Então ... O que eu descrevi pode ser implementado em um script borg simples (ou duplo)? Você recomenda outras ferramentas (ou uma cópia simples)? Ou você acha que a estratégia que descrevi é inútil / não é suficiente?
Obrigado
NOTA: Por engano, eu abri isso no serverfault, e como não consegui movê-lo e não houve comentários nem respostas, preferi excluir o antigo e abri-lo novamente aqui para acelerar a transição e evitar deixar este tarefa para os moderadores
EDIT: Talvez eu não expliquei da maneira correta, então estou fazendo mais algumas linhas nesta questão.
Minha experiência com instantâneos "incrementais" vem do Virtualbox. Nesse caso, quando você remove um instantâneo, as modificações são mescladas.
Para evitar escrever muito, estou fazendo um exemplo usando no máximo três backups diários.
Suponha que estamos na condição
- Backup diário 12/03 - Cópia completa do sistema de arquivos em 12/03
- Backup diário 13/03 - Modificações entre 12/03 e 13/03
- Backup diário 14/03 - Modificações entre 13/03 e 14/03
Hoje é um novo dia, então o backup é iniciado. Mas já existem 3 backups diários. Portanto, o backup de 12/03 e o 13/03 são mesclados (as diferenças de 13/03 são aplicadas na versão base) e um novo backup incremental é feito. Dessa forma, você perde as diferenças entre 12 e 13, mas o backup permanece "cheio":
- Backup diário 13/03 - Cópia completa do sistema de arquivos em 13/03
- Backup diário 14/03 - Modificações entre 13/03 e 14/03
- Backup diário 15/03 - Modificações entre 14/03 e 15/03
Eu acho que esse é o comportamento normal da ameixa borg (corrijam-me se eu estiver errado, por favor)
Outra opção (que é mais desejável na minha opinião) seria mesclar os backups incrementais do backup mensal. Quero dizer algo como:
- Backup mensal 01/03 - Cópia completa do sistema de arquivos em 01/03
- Backup diário 12/03 - Modificações entre 01/03 e 12/03
- Backup diário 13/03 - Modificações entre 12/03 e 13/03
- Backup diário 14/03 - Modificações entre 13/03 e 14/03
Ao remover, o 12 e o 13 são mesclados (por isso, torna-se o backup diário 13/03 - Modificações entre 01/03 e 13/03) e um novo é criado.
A última opção, menos desejável na minha opinião (mas se você acha que é melhor argumentar isso) é manter backups diários em relação ao mensal.
- Backup mensal 01/03 - Cópia completa do sistema de arquivos em 01/03
- Backup diário 12/03 - Modificações entre 01/03 e 12/03
- Backup diário 13/03 - Modificações entre 01/03 e 13/03
- Backup diário 14/03 - Modificações entre 01/03 e 14/03
Nesse caso, é mais simples: basta remover o backup diário sem olhar para trás.