На этот вопрос уже есть ответ здесь:
У меня есть только один очень простой сценарий оболочки в /etc/hourly.cron. Он просто управляет ботом Twitter - он запускает короткий скрипт python, который отправляет сообщения в Twitter с помощью tweepy. Он не включает электронную почту или какие-либо команды sendmail.
Я настраивал эту систему почти год без проблем, но теперь она дает сбой из-за странных ошибок, связанных с sendmail.
Сначала в / var / log / syslog я получил следующее:
Dec 30 10:17:01 sarah-ThinkPad-X220 CRON[29527]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Dec 30 10:17:02 sarah-ThinkPad-X220 cron[865]: Please install an MTA on this system if you want to use sendmail!
Dec 30 10:17:02 sarah-ThinkPad-X220 CRON[29526]: (root) MAIL (mailed 2136 bytes of output but got status 0x00ff from MTA#012)
Затем я установил postfix, чтобы попытаться отладить это, и получил следующее:
Dec 30 15:17:01 sarah-ThinkPad-X220 CRON[4542]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Dec 30 15:17:03 sarah-ThinkPad-X220 cron[865]: sendmail: fatal: open /etc/postfix/main.cf: No such file or directory
Dec 30 15:17:03 sarah-ThinkPad-X220 postfix/sendmail[4546]: fatal: open /etc/postfix/main.cf: No such file or directory
Dec 30 15:17:03 sarah-ThinkPad-X220 CRON[4541]: (root) MAIL (mailed 250 bytes of output but got status 0x004b from MTA#012)
Я новичок в cron и понятия не имею, почему MTA может быть вообще необходимо. Любая помощь будет оценена по достоинству.
По умолчанию любой вывод, произведенный вещами, выполненными кроном, отправляется по электронной почте владельцу crontab. Для отключения этого, или удостоверяются, что сценарии не производят вывода, или перенаправляют его к /dev/null
в crontab или добавляют MAILTO=""
наверху crontab.
Просто установленный в вершине файла
MAILTO=""
крона И никакой почты будет, отправляют