Вы хотите получать уведомления по электронной почте об ошибках, возникающих при выполнении заданий cron.
Я использую CentOS и файл / etc / crontab для настройки.
Первый шаг, который я сделал:
MAILTO=my_email_address
а затем я добавил это к каждой записи crontab:
2>/dev/null
Это означает это
24 4 * * * root /usr/sbin/ntpdate pool.ntp.org
становится:
24 4 * * * root /usr/sbin/ntpdate pool.ntp.org 2>/dev/null
Таким образом я должен подавить нормальный вывод и разрешить отправку сообщений об ошибках.
Я хотел бы знать, считаете ли вы то, что я сделал, правильным и есть ли в этом подводные камни.
Спасибо, Дэн
На самом деле, я думаю, вы сделали прямо противоположное тому, что хотели; вы подавили сообщения об ошибках (отправив STDERR в / dev / null) и получите только нормальный вывод.
Пытаться
24 4 * * * root /usr/sbin/ntpdate pool.ntp.org > /dev/null
Еще лучше запустить ntpd; это гораздо лучший способ синхронизировать ваши часы, чем переустановка их раз в день.
IIRC cron отправляет по электронной почте вывод команды, поэтому, если вы подавляете ошибки (бросая их в / dev / null) вы получите ТОЛЬКО вывод команды, а не ошибки. Нашел хороший скрипт: хронический который охватывает команды в crontab и делает именно то, что вы хотите: отправлять электронные письма только при ошибках.