Где найти логи Crontab в CentOS

37

Прежде всего я использую CentOS

 [root@a etc]# cat system-release
 CentOS release 6.5 (Final)

[root@a cron.daily]# ps -ef | grep cron
root       982     1  0 Jun14 ?        00:01:15 crond
root      5692  5441  0 00:49 pts/0    00:00:00 grep cron
[root@a cron.daily]#

И у меня заканчиваются мои ресурсы, поэтому я хочу удалить старые файлы журналов. В этом случае я хотел бы удалить старые безопасные журналы, размер которых почти превышает 100 МБ, поэтому я дал приведенные ниже записи crontab для rootпользователя. ,

[root@a etc]# crontab -l
0 1 * * * find /var/log -name "secure-*" -mtime +5 -exec rm {} \;
[root@a etc]#

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

[root@a log]# find /var/log -name "secure-*"
/var/log/secure-20141214
/var/log/secure-20141107
/var/log/secure-20141130
/var/log/secure-20141221
[root@a log]#

Позже я попытался найти журналы crontab в каталоге /etc/crontab.daily и не нашел соответствующих результатов. Где найти журналы crontab и как узнать, успешно ли работает crontab или нет?

простое число
источник

Ответы:

58

Журналы Cron на CentOS 6 расположены /var/log/cronпо умолчанию. Это только регистрирует выполнение команд, но не результаты или статусы выхода. Вывод выполненной команды отправляется на почту пользователя по умолчанию (в данном случае это почта root). Альтернативный адрес электронной почты может быть указан с помощью переменной MAILTO внутри crontab.

Вам следует взглянуть на корректирующие logrotateправила, а не свои пользовательские cron, которые уже обрабатывают удаление / var / log / secure logs.

jordanm
источник
2
Вы можете использовать run-parts stackoverflow.com/questions/4984725/how-to-test-cron-job, чтобы протестировать cron и проверить вывод команд по адресу /var/spool/mail/(user) superuser.com/questions/306163/…
Junior M