Работая в консоли периодически можно встречать сообщения вида 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: [email protected]
mcedit /etc/aliases
# See man 5 aliases for format
postmaster: root
root: [email protected]
Все сообщения, отправляемые root будут пересылаться на ящик [email protected].
Как следует из подсказки в файле — можно выполнить в консоли man 5 aliases чтобы просмотреть полную справку.
Далее требуется обновить информацию
newaliases
И перезапустить почтовую службу
/etc/init.d/postfix restart
Сейчас можно проверить придет ли письмо в ящик [email protected], который задан в качестве алиаса
echo "mail for root" | mail -s test root@localhost
В теле письма будет mail for root, тема test. Чтобы отправлять письма таким образом должен быть установлен пакет mailutils.
Читайте про отладку CRON заданий, обычно письма root отправляются именно из-за неверного синтаксиса CRON