Сообщения для root — You have mail in /var/mail/root

Работая в консоли периодически можно встречать сообщения вида You have mail in /var/mail/root. Они возникают когда кто-то или что-то отправляет письма системному пользователю. На практике это обычно CRON.

 

 

You have mail in /var/mail/root и алисы для почты системного пользователя

Если CRON задания выполняются с ошибками — демон генерирует сообщения  и отправляет их по адресу username@localhost. Если задания CRON выполняются от имени пользователя root сообщения будут приходить ему.

 

Когда в консоли возникает подобное сообщение — можно посмотреть письмо как обычный файл — например используя less

 

less /var/mail/root

 

Однако использовать less для чтения почты не очень удобно, пропускать же письма не следует потому, что в них часто содержится информация о неполадках.

 

Обычной практикой является задание алиасов и перенаправление писем на реально существующий адрес.

 

Редактируем файл /etc/aliases добавляя в него строку root: admin@example.com

 

mcedit /etc/aliases

# See man 5 aliases for format
postmaster: root
root: admin@example.com

 

Все сообщения, отправляемые root будут пересылаться на ящик admin@example.com.

Как следует из подсказки в файле — можно выполнить в консоли man 5 aliases чтобы просмотреть полную справку.

 

Далее требуется обновить информацию

newaliases

 

И перезапустить почтовую службу

/etc/init.d/postfix restart

 

Сейчас можно проверить придет ли письмо в ящик admin@example.com, который задан в качестве алиаса

echo «mail for root» | mail -s test root@localhost

 

В теле письма будет «mail for root», тема «test». Чтобы отправлять письма таким образом должен быть установлен пакет mailutils.

 

 

Читайте про отладку CRON заданий, обычно письма root отправляются именно из-за неверного синтаксиса CRON