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

Как отключить рассылку заданий cron пользователю root

В моем файле /etc/cron.d/apache2watch есть следующая строка

* * * * * root /bin/apache2-restart.sh &> /dev/null

В настоящее время я получаю сотни писем в root из-за этого. Я не знаю, почему root все еще получает почту каждую секунду или около того, говоря мне, что задание cron было запущено - хотя я явно перенаправил выходные данные на / dev / null

Может ли кто-нибудь объяснить, почему root продолжает получать почту и как я могу изменить это поведение?

Я работаю на Ubuntu 10.04 LTS

Вставить MAILTO="" прежде чем вы сделаете crontab.

Вы все еще получаете электронные письма, вероятно, потому, что вы перенаправили только стандартный вывод на / dev / null. Ваш сценарий оболочки, вероятно, тоже записывает в stderr, поэтому правильное перенаправление будет таким:

* * * * * root /bin/apache2-restart.sh > /dev/null 2>&1

почему бы вам не установить MAILTO = "" в crontab 'root' конкретного пользователя. Это отключит регистрацию почтовых сообщений в / var / spool / mail /

Вы перенаправили выходные данные в / dev / null, но только если вы используете bash в качестве оболочки crontab. Я считаю, что по умолчанию вы будете использовать / bin / sh.

Чтобы исправить это, я бы порекомендовал решение Тора:

* * * * * root /bin/apache2-restart.sh > /dev/null 2>&1

Другое решение - изменить CRON для использования bash, поместив это в начало вашей записи crontab:

SHELL=/bin/bash