And*_*rew 19 email mail-transport-agent
我是一名研究生,也是一个相对的 Linux 新手。这个问题是我之前问题的衍生。我的机构有一个 Ubuntu Linux 集群。我只是一个用户;我没有系统管理员权限,当然也不具备成为系统管理员的专业知识!
我的问题是,如何找到我的本地邮件假脱机?据我所知,我没有使用邮件传输代理。 对我上一个问题的回答建议我查找文件/var/spool/mail/$USER,但不幸的是,我没有看到与我的用户名对应的文件。在 中/var/spool/mail/,使用ls我只看到两个文件:nobody和www-data,它们都是无扩展名的文件。
对于我可以在哪里查找我的邮件池(据我所知,这可能是本地的,因为我没有配置邮件传输代理),您还有其他想法吗?
slm*_*slm 21
邮件线轴通常位于以下位置:
/var/spool/mail/$USER
Run Code Online (Sandbox Code Playgroud)
$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
Run Code Online (Sandbox Code Playgroud)
然而,邮件假脱机不一定是本地的。如果您没有此文件,则您的邮件将在另一台服务器上维护。您可以使用IMAP或POP3等协议与此服务器交互。
正是在此系统上维护您的邮件假脱机。
在某些环境中,邮件假脱机可以作为用户主目录的一部分共享出去,通常在名为mail ($HOME/mail). 其他时候,它可以在类似/mail/users/$USER.
这实际上取决于给定环境中的系统管理员如何选择这样做。
除非您的机器配置错误,否则该命令mail(或其他邮件程序,例如mutt)将访问您的本地邮箱。通常本地邮箱是/var/spool/mail/$USER或/var/mail/$USER。如果邮箱位于非标准位置,则系统管理员可能已将系统配置为将MAIL环境变量设置为您邮箱的位置。
如果您从未在该机器上收到过邮件,则该文件将不存在。给自己发送一封邮件,文件将被创建。
如果任何邮件曾经在这台机器上传递过,那么邮件传输代理正在运行。您永远不会直接与 MTA 交互:这是管理员设置的内容。
该文件的存在/var/spool/mail/nobody,并/var/spool/mail/www-data显示有(或曾经)的MTA运行并在本地传递邮件。它们可能包含来自 cron 作业的报告。
如果该机器配置为接收邮件,您将只能从其他机器接收邮件。在多计算机环境中,通常将一台机器配置为接收所有邮件。这是通过DNS指示的。如果有主机的MX 记录,则它指示哪个主机将接收发往该主机的邮件。您可以使用host -t MX $HOSTNAME或来查看 MX 记录dig MX $HOSTNAME。
即使您在本地接收邮件,它也可能被重定向到另一台机器。检查.forward您的主目录中是否有一个文件:它包含一个将您的邮件重定向到的电子邮件地址,或一些其他指令,告诉 MTA 在您收到邮件时要做什么。.procmailrc如果 MTA 配置为使用procmail来传递邮件,您可能还有一个文件,这很常见。
您应该在/var/spool/mail/(传统位置)或/var/mail(新推荐位置)中找到它。请注意,一个可能是到另一个的符号链接,因此最好转到实际目录(而不仅仅是链接)的那个。在这里您应该找到一个与您的用户名相同的文件,即您的邮箱。它应该归您所有,因此您应该可以轻松制作它的副本。