Как я могу найти свою локальную почтовую катушку?


18

Я аспирант и относительный новичок в Linux. Этот вопрос является своего рода побочным продуктом моего предыдущего вопроса . В моем учреждении есть кластер Ubuntu Linux. Я просто пользователь; У меня нет разрешений системного администратора, и у меня, конечно, нет опыта, чтобы быть системным администратором!

У меня вопрос, как мне найти свою локальную почтовую папку? Насколько я знаю, я не использую агента пересылки почты. Ответы на мой предыдущий вопрос подсказали, что я ищу файл /var/spool/mail/$USER, но, к сожалению, я не вижу файл, соответствующий моему имени пользователя. При /var/spool/mail/использовании lsя вижу только два файла: nobodyи www-data, которые оба являются файлами без расширения.

Есть ли у вас какие-либо идеи о том, где я могу найти свою почтовую папку (которая, вероятно, является локальной, поскольку, насколько мне известно, у меня не настроен агент пересылки почты)?


3
попробуйтеecho $MAIL
квадратборг

1
Вы отправили электронное письмо себе? Файлы почтовых ящиков обычно создаются по мере необходимости.
AnFi

@Shutupsquare Это интересно. Когда я печатаю echo $MAIL, он возвращает /var/mail/myusername, где myusernameмое имя пользователя. Но когда я перехожу к /var/mail/, файл myusernameтам не существует.
Андрей

@ AndrzejA.Filip Помимо использования atдля отправки локального сообщения, когда запланированный процесс генерирует вывод, как я могу попытаться отправить сообщение самому себе? Это все так ново для меня.
Андрей

Вы можете использовать следующую команду , чтобы отправить тестовое сообщение самому себе: (echo Subject: test; echo) | /usr/sbin/sendmail -i YOUR_LOGIN. Заглушка Sendmail предоставляется и другими серверами MTA (например, postfix, exim).
AnFi

Ответы:


20

Почтовые катушки, как правило, находятся здесь:

/var/spool/mail/$USER

Где $USERваше имя пользователя Например, в моей системе Fedora Linux:

$ ls -l /var/spool/mail/
total 1908
-rw-------. 1 root root 1943163 Jul 13 12:00 root
-rw-rw----. 1 rpc  mail       0 Dec 18  2010 rpc
-rw-rw----. 1 saml mail     689 Jul 12 19:38 saml

Почтовые катушки, однако, не обязательно являются локальными. Если у вас нет этого файла, ваша почта хранится на другом сервере. Вы можете взаимодействовать с этим сервером, используя протоколы, такие как IMAP или POP3 .

Именно в этой системе поддерживается ваша электронная почта.

В некоторых средах почтовая папка может быть разделена как часть домашнего каталога пользователя, часто в каталоге с именем mail ($HOME/mail). В других случаях его можно разделить как свою собственную долю под чем-то вроде /mail/users/$USER.

Это действительно зависит от того, как сисадмины в данной среде решают это делать.


2
Примечание: если есть /var/mail, как в вопросе, это может быть символическая ссылка /var/spool/mail, как в этом ответе, или наоборот. По крайней мере, так обстоит дело на моем домашнем ноутбуке с Ubuntu от System76. Удаление файлов / папок из любого каталога предположительно приведет к удалению соответствующего файла из другого каталога.
trysis

7

Если ваш компьютер не настроен неправильно, команда mail(или другие почтовые программы, такие как mutt) получит доступ к вашему локальному почтовому ящику. Обычно локальный почтовый ящик/var/spool/mail/$USER или /var/mail/$USER. Если почтовый ящик находится в нестандартном расположении, системный администратор, возможно, настроил систему для установки MAILпеременной среды в местоположение вашего почтового ящика.

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

Если какие - либо почты никогда не доставлены на этой машине, то почтовый перевод агент будет запущен. Вы никогда не будете взаимодействовать напрямую с MTA: это то, что настроил администратор.

Наличие файлов /var/spool/mail/nobodyи /var/spool/mail/www-dataпоказывает, что существует (или был) MTA, работающий и доставляющий почту локально. Они, вероятно, содержат отчеты о работе cron.

Вы сможете получать почту с других компьютеров только в том случае, если эта машина настроена на получение почты. В среде с несколькими компьютерами обычно настраивают один компьютер для получения всей почты. Это указано через DNS . Если существует запись MX для хоста, она указывает, какой хост должен получать почту, предназначенную для этого хоста. Вы можете увидеть запись MX с помощью host -t MX $HOSTNAMEили dig MX $HOSTNAME.

Даже если вы получаете почту локально, возможно, она будет перенаправлена ​​на другой компьютер. Проверьте, есть ли у вас файл, который называется .forwardв вашем домашнем каталоге: он содержит адрес электронной почты, на который перенаправляется ваша почта, или какую-либо другую директиву, сообщающую MTA, что делать при получении почты. У вас также может быть .procmailrcфайл, если MTA настроен на использование procmail для доставки почты, что является довольно распространенным явлением.


6

Вы должны найти его в /var/spool/mail/(традиционном месте) или /var/mail(новом рекомендуемом месте). Обратите внимание, что одна может быть символической ссылкой на другую, поэтому лучше перейти к той, которая является действительным каталогом (а не просто ссылкой). Здесь вы должны найти файл, который называется так же, как ваше имя пользователя, то есть ваш почтовый ящик. Он должен принадлежать вам, поэтому вы легко сможете его скопировать.


К сожалению, /var/spool/mail/и у /var/mail/каждого есть только два файла: nobodyи www-dataни один из которых не является моим именем пользователя. Спасибо за ваше время.
Андрей

@Andrew - отсутствие вашего имени пользователя в этих каталогах просто говорит о том, что в этой конкретной системе не было доставлено никакой локальной почты.
slm
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.