2011-07-04 15:23:42 +0000 2011-07-04 15:23:42 +0000
446
446

Что такое "У вас новая почта" в Linux/UNIX?

Иногда, когда я захожу в ящик и “su” в root, я получаю милое маленькое сообщение, говорящее, что у меня есть почта (слава Богу, это не AOL).

  • Где эта почта?
  • Что она содержит?
  • Кто/Что ее послал?
  • Насколько она важна?

  • Является ли это вообще “почтой” в том же смысле, что и почта? Или это просто моя система мне что-то говорит?

EDIT: В связи с вопросом этот , смогу ли я отправлять себе почту, используя программу sendmail типа так: email@localhost?

Ответы (7)

367
367
367
2011-07-04 16:30:34 +0000

Где эта почта?

Скорее всего, в файле спула: /var/mail/$USER или /var/spool/mail/$USER - наиболее распространенные локации в Linux и BSD.

(Возможны и другие локации - проверьте, установлена ли $MAIL - но по умолчанию система информирует вас только об /var(/spool)/mail. )

Обычно файл спула имеет очень простой формат mbox, поэтому его можно открыть в текстовом редакторе или на пейджере.

Для немного более удобного способа, большинство дистрибутивов поставляются с программой под названием mail (или Mail, mailx). Вы можете попробовать mutt или alpine; вы даже можете настроить ее на отправку на внешний почтовый ящик. (Смотрите “это настоящее письмо?” ниже.)

Что в нем содержится, и кто/что отправил?

Чаще всего сообщения содержат вывод заданий cron, или отчет о безопасности системы по logwatch, или подобный мусор. Читайте и узнайте.

Насколько это важно?

сильно зависит от содержания каждого сообщения.

Вы should хотя бы сканируете заголовки тем - часто люди месяцами игнорируют почту, никогда не понимая, что их ежедневные задания cron терпят неудачу.

Является ли это вообще действительной “почтой” в том же смысле, что и почта? Или это просто моя система говорит мне что-то?

Да, и то, и другое - она генерируется вашей системой и говорит вам что-то, но это также реальная почта и может быть обработана как таковая.

Вы можете (и должны) настроить ваше почтовое программное обеспечение - “MTA” aka /usr/sbin/sendmail - для пересылки сообщений на ваш личный почтовый адрес. Точные инструкции варьируются в зависимости от того, какой MTA (при наличии) вы установили, является ли это персональный компьютер или сервер, есть ли у вас собственный домен или используете @gmail.com и т.д.

Обратите внимание, что /usr/sbin/sendmail в настоящее время является общим API и does не обязательно означает оригинальный Sendmail MTA. На самом деле, вы shouldn’t используете Sendmail, но что-то более современное, например OpenSMTPD, Postfix или Exim4. Все они предоставляют один и тот же инструмент /usr/sbin/sendmail, но они проще в настройке, более безопасны и столь же мощны.

219
219
219
2011-11-25 11:46:45 +0000

Самым простым для меня было запустить в терминале:

cat /var/spool/mail/root
```.
64
64
64
2014-08-30 19:47:07 +0000

Для тех, кому интересно, как читать эти сообщения по очереди, можно просто использовать ‘mail’

$ mail

Then type a message number from the list which you want to read.

Чтобы перейти к следующему сообщению, можно набрать ‘next’, еще одна полезная команда - ‘delete’…

Чтобы узнать больше о том, как работает программа mail, смотрите выходной файл man mail.

41
41
41
2011-07-04 16:31:21 +0000

Просто чтобы внести некоторые разъяснения, долгое время было традицией для ящиков UNIX запускать “локально сконфигурированный” почтовый демон, который не маршрутизирует сообщения через Интернет, а только копирует сообщения в другие пользовательские каталоги спула (как упоминал @John T). Это настоящая SMTP-совместимая почта, она просто не маршрутизируется через Интернет, потому что не должна быть.

Таким образом, если вы запускаете почтовый клиент (например, alpine или mutt), вы можете посылать почту другим пользователям в системе, обращаясь к user@hostname, или во многих случаях, просто указывая пользователя. Скорее всего, у вас также есть утилита командной строки под названием mailx, которая может быть использована для отправки быстрых сообщений с помощью вашей оболочки.

Теперь, если вы хотите отправлять сообщения пользователям на системах, отличных от тех, на которые вы вошли, вот с чего начинается настоящее веселье. Вам нужно настроить почтового демона, чтобы он распознавал и передавал внешнюю почту агенту переноса, настроить агента переноса и сделать кучу вещей, которые я сам еще не понял.

26
26
26
2011-07-04 15:29:18 +0000

Где эта почта?

Очень вероятно, что она хранится на вашей машине, в папке почтовых ящиков для корневого пользователя (где это зависит от того, какой почтовый сервер вы установили). Вероятно, вы можете получить доступ к ней довольно быстро через alpine.

Что в ней содержится?

Вероятно, просто какой-то системный отчет. “Итак, и так пытались войти 10 раз с неправильным паролем”… “Хотел бы я, чтобы кто-нибудь запустил обновления на мне”, “драйвер бота постоянно не работает”, “Бот NSA увеличил производительность на 1%”… и т.д…

Кто/Что прислал?

Службы на вашем сервере, скорее всего.

Как это важно?

Зависит от того, насколько важен ваш сервер.

14
14
14
2011-07-04 15:28:29 +0000

Эта почта обычно находится в /var/spool/mail/root, когда настроен (обычный) демон sendmail по умолчанию. Оно содержит почтовое сообщение в формате RAW, которое может быть прочитано утилитой mail. Кто его послал, может быть найден запуском утилиты mail и пейджингом через сообщения или чтением RAW заголовков.

Важность сообщения обычно зависит от предыдущего фактора, кто его послал :)

Многие системные утилиты используют почтовую подсистему как средство отчетности и протоколирования. Утилиты просмотра журналов и другие сервисы могут посылать электронное письмо локальному пользователю root в качестве напоминания о конкретном событии, например, о малом объеме дискового пространства или об ошибках аппаратного обеспечения. Демон почтового сервера также предупредит вас, если он не смог отправить исходящее письмо.

12
12
12
2014-09-03 00:16:39 +0000

less +G /var/spool/mail/root

показывает последние сообщения в конце, если файл.

Прямое отображение почтового файла является хорошей идеей, но использование cat может легко пойти не так. Вы не хотите, чтобы все сообщения прокручивались мимо, если в файле много сообщений или очень длинные сообщения. Я только что видел одно с 150MB, два миллиона строк.

Если вы не корневой:

sudo less +G /var/spool/mail/root

Опция +G используется, чтобы показать новейшее сообщение первым; Она не в верхней части файла, а в конце.

Это опция less, заставляя его показывать последнюю страницу файла после запуска. Это покажет последнее сообщение (последнее), если оно помещается на одну страницу, или конец этой страницы.

Имя файла может быть /var/spool/mail/mail вместо /var/spool/mail/root.

Похожие вопросы

6
10
5
37
2