Рано или поздно все засоряется. Будь-то сервер или рабочая станция, да, что там говорить - квартира, улицы, мозги - все засоряется :( Наш сервер резервного копирования стал отсылать уведомления о том, что на нем заканчивается свободное место. Файлов там - тысячи тысяч. Вот бы не плохо там сделать чистку подумали мы :)
Задача простая! Всего пару строк и 10 минут времени и навсегда можно забыть о ненужных старых файлах. FreeBSD уже все содержит для этого. Ничего доставлять не придется. Будем использовать штатную команду find в связке с cron.
Итак, например, нам необходимо удалить все файлы, которые не изменялись в течении 3 месяцев (усредним - получаем 90 дней):
find /backup -mtime +90 -exec rm {} \;
При выполнении данной команды будет выполнен поиск файлов в директории /backup которые не изменялись в течении 90 дней и после этого они будут удалены командой rm {} \
Для того, что бы все время руками не выполнять это действие - воспользуемся cron:
48 3 * * * root find /backup -mtime +90 -exec rm {} \;
Вывод: Каждый день в 03:48 будет происходить очистка от старых файлов.