Разработчики cron предполагали, что пользователи cron будут соответствующим образом направлять вывод (stdout & stderr) и, таким образом, любой вывод, который не был перенаправлен ни на одну из файл или другой процесс, скорее всего, был ошибкой.
Их выбор состоял в том, чтобы пересылать через sendmail весь ложный (т. е. не перенаправленный) вывод владельцу задания cron.
Если вы проверите / var / log / syslog , вы должны найти такую запись:
Jun 26 22:18:01 sys0af3e3 CRON[16529]: (CRON) info (No MTA installed, discarding output)
Программа, обычно вызываемая cron, - это / usr / sbin / sendmail, но вы можете проверить, какая из них используется в вашей реализации, запустив:
strings /usr/sbin/cron | grep -i '^/.*mail'
Если вы должны были создать / usr / sbin / sendmail (он должен быть исполняемым) с содержимым:
echo "####################" >> /tmp/mail.out 2>&1
date >> /tmp/mail.out 2>&1
cat >> /tmp/mail.out 2>&1
затем запустите:
systemctl restart cron #this must be run as root
вы обнаружите, что недостающий вывод добавляется к файлу /tmp/mail.out после каждого запуска.
Не забудьте удалить / usr / bin / sendmail и перезапустите cron после завершения теста.