crontab удаление файлов старше 30 дней

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Happy_Man
проходил мимо
Сообщения: 6
Зарегистрирован: 2023-05-20 17:35:27

crontab удаление файлов старше 30 дней

Непрочитанное сообщение Happy_Man » 2023-05-20 17:50:47

Добрый день, вроде банальная задача, удалять из папки спам почтового сервера письма старше 30 дней
Установлен FreeBSD
Добавляю в crontab -e

Код: Выделить всё

0 1 * * * root	/usr/bin/find /var/mail/SApermreject -type f -mtime +30 -exec rm {} \;
удалять каждый день в час ночи, для теста сейчас выставил каждые 5 минут
задача выполняется, но в папке файлы все остаются, кусок лог cron

Код: Выделить всё

May 20 01:00:00 mail /usr/sbin/cron[94860]: (root) CMD (root^I/usr/bin/find /var/mail/SApermreject/new -type f -mtime +30 -exec rm {$
пробовал и с косой чертой в конце и без, задача выполняется, файлы не удаляются

Код: Выделить всё

May 20 17:05:00 mail /usr/sbin/cron[10989]: (root) CMD (root^I/usr/bin/find /var/mail/SApermreject -type f -mtime +30 -exec rm {} \;)
May 20 17:10:00 mail /usr/sbin/cron[11061]: (root) CMD (root^I/usr/bin/find /var/mail/SApermreject -type f -mtime +30 -exec rm {} \;)
May 20 17:15:00 mail /usr/sbin/cron[11369]: (root) CMD (root^I/usr/bin/find /var/mail/SApermreject -type f -mtime +30 -exec rm {} \;)
попробовал через delete

Код: Выделить всё

May 20 17:25:00 mail /usr/sbin/cron[11986]: (root) CMD (root^I/usr/bin/find /var/mail/SApermreject -type f -mtime +30 -delete)
файлы на месте.

Код: Выделить всё

May 20 17:30:00 mail /usr/sbin/cron[12406]: (root) CMD (root^Ifind /var/mail/SApermreject -type f -mtime +30 -delete)
файлы на месте.

если с консоли под пользователем root выполнить команду

Код: Выделить всё

find /var/mail/SApermreject/ -type f -mtime +30 –delete
то файлы в каталоге удаляются
Подскажите что я делаю не так?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

guest
проходил мимо

crontab удаление файлов старше 30 дней

Непрочитанное сообщение guest » 2023-05-20 19:40:22

не перенаправляете stdout и stderr

Happy_Man
проходил мимо
Сообщения: 6
Зарегистрирован: 2023-05-20 17:35:27

crontab удаление файлов старше 30 дней

Непрочитанное сообщение Happy_Man » 2023-05-20 21:26:52

разобрался, вот такой формат правильный, проверил работает

Код: Выделить всё

0 1 * * * /usr/bin/find /var/mail/SApermreject -type f -mtime +30 -exec /bin/rm -f {} \;

lazhu
сержант
Сообщения: 254
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

crontab удаление файлов старше 30 дней

Непрочитанное сообщение lazhu » 2023-05-23 17:27:11

ну да, забыли для rm полный путь указать

Happy_Man
проходил мимо
Сообщения: 6
Зарегистрирован: 2023-05-20 17:35:27

crontab удаление файлов старше 30 дней

Непрочитанное сообщение Happy_Man » 2023-05-23 18:49:54

lazhu писал(а):
2023-05-23 17:27:11
ну да, забыли для rm полный путь указать
не только, имя root надо было еще убрать
оно крон и так руутом запускает
вот тут видно было

Код: Выделить всё

(root) CMD (root^I/usr/bin/find