Ответы:
По умолчанию логи cron сохраняются в / var / log / syslog. Это зависит от конфигурации rsyslogd. Вы можете изменить это:
Зайдите в config rsyslog
cd /etc/rsyslog.d/
sudo nano 50-default.conf
Uncoment line:
# cron. * /var/log/cron.log
Сохраните файл и перезапустите rsyslog
перезапуск службы rsyslog
Перезапустите ваш демон cron, чтобы получить его сообщения из нового файла.
перезапуск cron службы sudo
Когда cron
не работает, он отправит письмо пользователю root
. Единственная проблема: у вас нет программного обеспечения для отправки / хранения почты в почтовых ящиках.
Но не бойтесь, Postfix
здесь!
sudo apt-get update sudo apt-get установить postfix heirloom-mailx
При установке postfix
он спросит вас, как вы хотите его настроить. На первом экране выберите local only
и перейдите к настройкам по умолчанию для всего остального.
Теперь, используя ваш любимый редактор, редактируйте /etc/aliases
. Вначале это будет выглядеть примерно так:
# Смотрите man 5 псевдонимов для формата почтмейстер: root
Это означает, что любая отправленная почта postnaster
теперь будет отправляться root
также. В этом случае мы хотим, чтобы любая почта, отправленная root
(для почты cron и любой другой системной почты), была отправлена username
(нам).
Итак, отредактируйте, /etc/aliases
чтобы выглядеть так:
# Смотрите man 5 псевдонимов для формата почтмейстер: root корень: норманн
(Замените, norman
очевидно, своим именем пользователя. Если у вас нет такого же имени / имени пользователя, как у меня. :))
После того, как это все сказано и сделано, выполните следующую команду с push
изменениями:
sudo newaliases
Теперь после этого запустите:
sudo dpkg-переконфигурировать постфикс
При установке вы получите тот же экран, что и раньше postfix
. Запустите настройки по умолчанию ( Local Only
и т. Д.). Когда вы доберетесь до части, когда она запрашивает псевдоним root и postmaster, просто убедитесь, что она такая же, как та, которую вы добавили /etc/aliases
выше. Затем продолжите работу с настройками по умолчанию.
Когда вы закончите, выполните следующую команду, чтобы перезапустить postfix
и начать работу!
перезапуск службы sudo
Теперь, если у cron есть ошибка, она будет отправлена вам по почте. Но вы, наверное, задаетесь вопросом, как в мире я могу проверить свою (местную) почту?
Для этого выполните команду:
почта
Так просто. Если нет почты, это скажет No mail for <username>
. В противном случае вы получите удобный интерфейс терминала. См. Справочную страницу для получения информации о том, как взаимодействовать с вашим почтовым ящиком.
Или, если хотите, вы можете получить доступ к своей местной справочной странице, используя:
человек почта
И теперь, вы сделали! :)
PS Вы должны прочитать это, чтобы узнать больше о cron
проблеме.
При запуске mail
я получил следующий ответ:
The program 'mail' is currently not installed. To run 'mail' please ask your administrator to install the package 'mailutils'
Вместо этого я нашел ошибки / письма, хранящиеся в /var/mail/root
Это /var/log/syslog
по умолчанию.
Но его можно настроить для создания отдельного cron.log, что более полезно.
Этот Q & A описывает процесс:
16.04: Как заставить cron создать cron.log и отслеживать его в режиме реального времени?
Также в этом ответе приведены инструкции по созданию wcron
команды, отображающей ее практически в реальном времени. Плюс, это ссылка на другой ответ,
Как изменить уровень журнала cron?
это показывает, как изменить уровень журнала, чтобы он включал в себя больше, чем просто начало заданий - уровень 15 также покажет ошибки и время окончания.
crond
отправляет письмо владельцу задания, не обязательно root, поэтому, если вы установили свою работу,crontab -e
вы получите письмо. Это также верно независимо от того, «проваливается» ли задание ... оно просто отправляет вам по электронной почте расшифровку любого вывода, полученного заданием.