Я пытаюсь отладить проблему, когда cron не отправляет почту на ящик Centos 6, который я не настроил. Как я могу определить, какой почтовый cron использует для отправки почты? В справочной странице crontab есть, что сказать, частично:
В дополнение к LOGNAME, HOME и SHELL, cron (8) будет проверять MAILTO, если у него есть какая-либо причина для отправки почты в результате выполнения команд в "this" crontab. Если MAILTO определено (и не пусто), почта отправляется пользователю с таким именем. Если MAILTO определено, но пусто (MAILTO = ""), письмо не будет отправлено. В противном случае почта отправляется владельцу crontab. Эта опция полезна, если вы выбрали / bin / mail вместо / usr / lib / sendmail в качестве почтовой программы при установке cron - / bin / mail не выполняет псевдонимы, а UUCP обычно не читает почту.
Часть со звездочками - это та часть, которая заставляет меня задуматься: «Ну, это sendmail или mail?»
Согласно справочной странице для cron (8) (демон, который фактически отправляет сообщение):
Это наводит меня на мысль, что по умолчанию используется sendmail. Давайте проверим с помощью strace:
Настройте работу cron, которая будет генерировать электронную почту:
Теперь найдите идентификатор процесса для crond:
Присоедините к процессу crond с помощью strace, ища действия, связанные с процессом. Когда strace пишет в stderr, я перенаправил его в stdout и добавил «mail»:
Да, это sendmail.
источник
CRONDARGS=
). Тот факт, что это настраивается, - вот почему я включил шаги, чтобы проверить себя.