Poda de arquivos de backup à medida que envelhecem

1

Estou procurando uma ferramenta (para Linux) que apague meus arquivos de backup, não como o padrão logrotate que os exclui completamente após o número definido de rotações, mas onde os arquivos são basicamente mantidos permanentemente, exceto que eles são podadas à medida que envelhecem e envelhecem. Por exemplo:

  • para o primeiro mês Eu quero manter todos os arquivos de backup diários
  • depois disso, só quero manter um backup semanal nos próximos seis meses
  • depois disso, só quero manter um backup mensal por mais 6 meses
  • depois disso, só quero manter um backup trimestral

Existe uma ferramenta para fazer uma limpeza de arquivos baseada em tempo?

Ele pode estar olhando para uma data no nome do arquivo ou para o registro de data e hora do arquivo (embora não seja o ideal).

    
por TheStoryCoder 02.02.2017 / 09:15

1 resposta

0

Não existe essa ferramenta que conheço, geralmente isso está incluído em seu software de backup. Qual ferramenta de backup você usa?

Eu recomendaria rsnapshot Isso pode ser configurado para fazer essas coisas inteligentes que você pede e mantém o tamanho do backup pequeno pelo uso extensivo de hardlinks.

Se, no entanto, você tiver seu próprio cronjobs / sistema para criar backups, crie mais alguns cronjobs .

  • faça backups em uma 'pasta diária'
  • tenha um cronjob semanal que mova os arquivos com mais de 30 dias da sua pasta mensal para a sua 'pasta semanal' find /path/to/daily -maxdepth 1 -mtime +30 -type f -exec mv "{}" /path/to/weekly/ \;

    porque o cronjob abaixo removerá os arquivos mais antigos, esse será apenas um dia de arquivos de backup.

  • tem um cronjob diário que remove arquivos com mais de 30 dias de sua pasta diária (verifique se ele é executado após o cron semanal acima) find /path/to/daily/* -mtime +30 -exec rm {} \;

repita de semanal a mensal e mensal a trimestral

    
por 03.02.2017 / 14:35