Как указано в более раннем ответе,
это происходит потому, что ваши задания cron производят выходные данные,
а затем демон cron пытается отправить вам этот вывод.
Если вы не хотите (или не можете) установить MTA,
но вы хотите увидеть результат,
вы можете перенаправить вывод задания cron в файл журнала.
Измените файл crontab с помощью
crontab -e
(используйте sudo
, если проблема связана с crontab root)
и добавьте >> /some/log/file 2>&1
после каждой команды, например:
0 3 * * * cmd >> /some/log/file 2>&1
Если в строке имеется несколько команд,
разделенные ;
, &&
или ||
,
вы должны сделать выше для каждой команды, например:
0 3 * * * cmd1 >> /some/log/file 2>&1; cmd2 >> /some/log/file 2>&1
или сгруппируйте их, например:
0 3 * * * (cmd1; cmd2) >> /some/log/file 2>&1
Если вы хотите игнорировать stdout и захватывать только stderr,
вместо этого используйте > /dev/null 2>> /some/log/file
.
Поместите файл журнала туда, где вы хотите - ваш домашний каталог,
/var/log
или даже /tmp
, если вы уверены, что вам не нужно его хранить.
Затем просмотрите файл журнала после выполнения задания.