Назад | Перейти на главную страницу

Удаление файлов резервных копий по мере их старения

Я ищу инструмент (для Linux), который удалит мои файлы резервных копий, а не стандартный logrotate который полностью удаляет их после определенного количества вращений, но где файлы в основном хранятся постоянно, за исключением того, что они удаляются по мере того, как они стареют и стареют. Например:

Существует ли инструмент для такой очистки файлов по времени?

Это может быть либо дата в имени файла, либо временная метка файла (хотя это не идеально).

Я не знаю такого инструмента, обычно он встроен в ваше программное обеспечение для резервного копирования. Какой инструмент резервного копирования вы используете?

я бы порекомендовал rsnapshot Его можно настроить для выполнения тех умных действий, о которых вы просите, и сохранить небольшой размер резервной копии за счет широкого использования жестких ссылок.

Однако если у вас есть собственная cronjobs / система для создания резервных копий, вы можете просто создать еще несколько cronjobs.

  • делать резервные копии в "ежедневную папку"
  • иметь еженедельное задание cron, которое перемещает файлы старше 30 дней из вашей ежемесячной папки в вашу «еженедельную папку» find /path/to/daily -maxdepth 1 -mtime +30 -type f -exec mv "{}" /path/to/weekly/ \;

    поскольку приведенная ниже cronjob удалит старые файлы, это будет резервных файлов только на один день.

  • иметь ежедневное задание cron, которое удаляет файлы старше 30 дней из вашей ежедневной папки (убедитесь, что он запускается после еженедельного cron, указанного выше) find /path/to/daily/* -mtime +30 -exec rm {} \;

повторять еженедельно до ежемесячно и от ежемесячного до ежеквартального