Назад | Перейти на главную страницу

Вакансии Cron больше не работают

Задания Cron работали месяцами в прошлом, но недавно у меня была высокая нагрузка на сервер, и теперь задания Cron не выполняют мои файлы php (те же, которые работали раньше). Когда я проверяю журнал cron, я вижу следующее, которое, как мне кажется, как-то связано с проблемой:

(CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable

Что мне нужно сделать, чтобы решить эту проблему? Я использую CentOS 7.

РЕДАКТИРОВАТЬ: Я отметил это как ответ, поскольку думал, что проблема связана с зависанием процесса. Сегодня я проснулся, и возникла та же проблема. Интересно, что могло быть причиной этого.

В журнале cron я вижу:

Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0anacron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25444]: finished 0anacron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0yum-hourly.cron
Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25450]: finished 0yum-hourly.cron
Oct 11 05:01:01 CROND[25434]: (CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable
Oct 11 05:01:01 CROND[25429]: (apache) MAIL (mailed 71 bytes of output but got status 0x0001

ОБНОВИТЬ:

В моем почтовом журнале я заметил две вещи.

Oct  8 14:01:39 postfix/local[12886]: 5180C2D098A5: to=<N@mail.domain.com>, orig_to=<N>, relay=local, delay=1.1, delays=0.07/0.01/0/1, dsn=5.1.1, status=bounced (unknown user: "n")
Oct  9 04:19:10 postfix/local[12452]: C8F762D012D6: to=<root@mail.domain.com>, orig_to=<apache>, relay=local, delay=0.22, delays=0.13/0.02/0/0.07, dsn=5.2.0, status=bounced (cannot update mailbox /var/mail/root for user root. cannot open file: Is a directory)

(CRON) EXEC FAILED (/ usr / sbin / sendmail): ресурс временно недоступен

Это не проблема cron. из exec (3):

 The execl(), execle(), execlp(), execvp() and execvP() functions may fail
 and set errno for any of the errors specified for the library functions
 execve(2) and malloc(3).

Из execve (2):

 [ENOMEM]           The new process requires more virtual memory than is
                    allowed by the imposed maximum (getrlimit(2)).

Из malloc (3):

   ENOMEM
       Memory allocation error.

В большинстве систем UNIX любой вышедший из-под контроля процесс может потреблять достаточно ресурсов, чтобы вызвать сбой обычного распределения виртуальной памяти неуправляемыми процессами.

Это не проблема cron, это проблема системных ресурсов, использования или настройки.