crontab не работает для удаления старых файлов из папки журнала

У меня есть эта строка в моем crontab для удаления старых файлов:

1 * * * * find /var/log/abc/ -mtime +7 -type f -delete

К сожалению, это не работает.

Я попытался дать всем пользователям разрешение на очистите эту папку с помощью

chmod +777 /var/log/abc

Но chmod не работал. Что еще я мог попробовать?


Следуя рекомендациям по регистрации вывода, я обнаружил, что это есть в журналах:

/bin/sh: 1: find: not found

Так что я думаю, что мне нужно правильно указать свой путь ...

0
задан 12 February 2020 в 22:27
1 ответ

В качестве хорошей практики добавьте пользователя, который будет запускать этот crontab.

1 *    * * *   root    find /var/log/abc/ -mtime +7 -type f -delete

Вы доказали, что поиск работает правильно вне cron?

Попробуйте выполнить его вручную и посмотрим, что происходит, в cron нет ничего плохого.

В качестве второй полезной практики попробуйте записать то, что cron делает в системный журнал, например, с помощью регистратора:

1 *    * * *   root    find /var/log/abc/ -mtime +7 -type f -delete 2>&1 | logger -t cron_find_delete

2> & 1

в конце будет записывать бросить в регистратор Sterr и stdout.

1
ответ дан 26 February 2020 в 00:36

Теги

Похожие вопросы