Ошибки

No MTA installed, discarding output: что значит в журнале cron

Это не ошибка запуска: cron выполнил задачу, она что-то вывела, и cron хотел отправить вывод письмом. Почтовой программы на сервере нет — вывод выброшен. Решение — направить вывод в файл.

Обновлено 10.10.2026≈ 3 мин чтения
Содержание 10

Что сделать прямо сейчас

Откройте расписание:

crontab -e

Допишите в конец строки задачи запись вывода в файл:

30 3 * * * /home/ivan/backup.sh >> /home/ivan/backup.log 2>&1

Сохраните: в nano — Ctrl+O, Enter, Ctrl+X. После следующего запуска откройте файл — там будет то, что задача выводила, в том числе ошибки:

cat /home/ivan/backup.log

Команды вводятся в терминале сервера после подключения по SSH (как подключиться).

Как выглядит сообщение

В журнале cron — sudo journalctl -u cron — сразу после строки запуска задачи:

Oct 10 03:30:01 myserver CRON[2345]: (ivan) CMD (/home/ivan/backup.sh)
Oct 10 03:30:02 myserver CRON[2344]: (CRON) info (No MTA installed, discarding output)

Почему так происходит

Всё, что задача выводит в терминал, cron собирает и отправляет письмом владельцу расписания. Для отправки ему нужна почтовая программа — MTA, от английского mail transfer agent. Если её на сервере нет, cron пишет в журнал эту строку и выбрасывает вывод.

Сама задача при этом выполнилась. Но если вывод — сообщение об ошибке, вы его не увидите. Поэтому важно, что именно задача выводила.

Способ 1. Сохранять вывод в файл

Это основной способ: вывод и ошибки останутся на сервере, и их можно прочитать.

30 3 * * * /home/ivan/backup.sh >> /home/ivan/backup.log 2>&1
  • >> /home/ivan/backup.log — дописывать вывод в конец файла. Один знак > перезаписывал бы файл при каждом запуске.
  • 2>&1 — туда же отправлять ошибки.

Файл растёт с каждым запуском. Очистить его, не удаляя:

truncate -s 0 /home/ivan/backup.log

Способ 2. Не отправлять письма

Строка MAILTO="" в начале расписания выключает письма для всех задач ниже неё:

MAILTO=""
30 3 * * * /home/ivan/backup.sh

Строка No MTA installed в журнале пропадёт, но вывод задач по-прежнему никуда не сохраняется. Если задача сломается, вы об этом не узнаете — поэтому вывод важных задач лучше писать в файл.

Способ 3. Выбрасывать вывод намеренно

Если задача проверена и её вывод не нужен, направьте его в /dev/null — специальный файл, который всё поглощает:

*/5 * * * * /home/ivan/task.sh > /dev/null 2>&1

Строки No MTA installed в журнале не будет, но и ошибок задачи тоже не будет видно.

А если нужны письма на почту

Чтобы cron отправлял вывод на вашу почту, на сервере должна работать почтовая программа, а в расписании — стоять строка MAILTO=ivan@example.com с вашим адресом. Настройка отправки почты с сервера — отдельная задача: письма с нового VPS без настроенного домена могут не дойти или попасть в спам. Для контроля задач проще файл с выводом.

Похожие ошибки

ОшибкаРазбор
Задача не выполняется или не работаетРазбор
errors in crontab file, can't install.Разбор

Команды и тексты сообщений сверены с пакетом cron 3.0pl1-184ubuntu2 из Ubuntu 24.04 — его справкой и исходным кодом.

Источники

Сверено 10 октября 2026 года.

Что почитать дальше

Проверено и обновлено: 10.10.2026