Não sou expert em script para backups e assim como quase todos admins, tenho que me virar na hora da correria.
Estava escrevendo um script de backup esses dias e, precisava que o script ao gerar o backup do dia, apaga-se o backup do dia anterior.
Como os dados ficariam em fita, não precisava guardar os backups de todos os dias em disco mas, gostaria que ele apaga-se o backup feito no dia anterior, de uma forma "elegante" ao invés de mandar um "rm -rf" na pasta.
Para executar esse rm dos dias anteriores adicionei a seguinte linha dentro do script de backup, no final dele:
rm nome-do-arquivo-$(date --date="1 day ago" +%Y-%m-%d).tgz
Claro que tudo depende de como você fez o backup.
O nome do arquivo no meu caso é sempre o mesmo, o formato da data também é o mesmo e o tipo de compactacão que usei foi .tgz, se isto não estiver de acordo ele não vai encontrar o arquivo de backup que foi gerado.
Bom, nesta opcão posso colocar "4 days ago" para deletar o backup de 4 dias atrás mas, contato a partir da data em que rodo o script por exemplo, se rodar hoje 09-05-2008 ele vai apagar os backups do dia 05-05-2008.
Se omitir esta opcão de data na linha de comando, ele vai remover os backups não importa a data atual, será sempre da quantidade de dias que você colocar.
Essa dica é boa, contanto que você não ache melhor colocar um "rm" após gerar o backup. Mas lembre-se de transferi-lo para outro lugar antes de remover.
Até mais..
Nenhum comentário:
Postar um comentário