Gdzie znaleźć dzienniki Crontab w CentOS

37

Przede wszystkim używam 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]#

Skończyły mi się zasoby, więc chcę usunąć stare pliki dziennika. W tym przypadku chciałbym usunąć stare bezpieczne dzienniki, które mają rozmiar prawie 100 MB, więc podałem poniższe wpisy crontab dla rootużytkownika .

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

Po kilku dniach poznałem, że ten wpis crontab nie działa i nadal widzę stare pliki.

[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]#

Później próbowałem wyszukać dzienniki crontab w katalogu /etc/crontab.daily i nie znalazłem żadnych istotnych wyników. Gdzie znaleźć dzienniki crontab i jak sprawdzić, czy crontab działa poprawnie, czy nie?

główny
źródło

Odpowiedzi:

58

Logi Cron na CentOS 6 są /var/log/crondomyślnie zlokalizowane . To tylko rejestruje wykonanie poleceń, a nie statusy wyników lub wyjścia. Dane wyjściowe wykonanego polecenia są domyślnie wysyłane do poczty użytkownika (w tym przypadku do poczty użytkownika root). Alternatywny adres e-mail może zostać określony przez zmienną MAILTO w pliku crontab.

Powinieneś spojrzeć na dostosowywanie logrotatereguł, zamiast na własne cron, które już obsługują usuwanie / var / log / secure logs.

Jordan
źródło
2
Można użyć run-parts stackoverflow.com/questions/4984725/how-to-test-cron-job do testu cron i sprawdzić wyjście komendy AT /var/spool/mail/(user) superuser.com/questions/306163/...
Junior M