在maildir中找不到postfix / mailx邮件,为什么不呢?

CentOS 7开发机器上,我已经configuration了postfix来允许在localhost地址之间交换电子邮件Mailx也被安装。 我能够发送电子邮件,日志文件表明邮件已经发送。 但是,我无法find要在terminal中查看的电子邮件。 我究竟做错了什么? 我如何查看这些新发送的邮件在terminal?

我可以通过在terminal中inputmailx root@localhost来发送电子邮件,然后按照提示添加主题和正文,然后Ctrl-D以获取命令提示符。 此外,当以root用户身份login时键入mailmailx时,terminal响应一个在postfix被更改为在/Maildir存储电子邮件之前存储的几个旧电子邮件列表,但是没有新的电子邮件被发现。 当我inputnano /var/spool/mail/root ,我可以查看那些旧电子邮件,当然新邮件不存储在/var/spool/mail/root

没有/var/log/mail 。 但是, nano /var/log/maillog包含:

 Jan 5 12:09:40 localhost postfix/postfix-script[6162]: starting the Postfix mail system Jan 5 12:09:40 localhost postfix/master[6164]: daemon started -- version 2.10.1, configuration /etc/postfix Jan 5 12:46:00 localhost postfix/postfix-script[3036]: starting the Postfix mail system Jan 5 12:46:00 localhost postfix/master[3047]: daemon started -- version 2.10.1, configuration /etc/postfix Jan 5 13:12:02 localhost postfix/smtpd[4642]: connect from localhost.localdomain[127.0.0.1] Jan 5 13:12:02 localhost postfix/smtpd[4642]: DB1249A618: client=localhost.localdomain[127.0.0.1] Jan 5 13:12:02 localhost postfix/cleanup[4645]: DB1249A618: message-id=<1738078707.0.1420492322780.JavaMail.username@localhost.localdomain> Jan 5 13:12:02 localhost postfix/qmgr[3058]: DB1249A618: from=<[email protected]>, size=632, nrcpt=1 (queue active) Jan 5 13:12:02 localhost postfix/smtpd[4642]: disconnect from localhost.localdomain[127.0.0.1] Jan 5 13:12:02 localhost postfix/local[4646]: DB1249A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.11, delays=0.06/0.02/0/0.03, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 13:12:02 localhost postfix/qmgr[3058]: DB1249A618: removed Jan 5 14:29:20 localhost postfix/pickup[5207]: 7F4439A616: uid=1000 from=<username> Jan 5 14:29:20 localhost postfix/cleanup[5266]: 7F4439A616: message-id=<[email protected]> Jan 5 14:29:20 localhost postfix/qmgr[3058]: 7F4439A616: from=<[email protected]>, size=334, nrcpt=1 (queue active) Jan 5 14:29:20 localhost postfix/local[5271]: 7F4439A616: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.13, delays=0.1/0.01/0/0.02, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 14:29:20 localhost postfix/qmgr[3058]: 7F4439A616: removed Jan 5 14:57:10 localhost postfix/pickup[5207]: A21B49A618: uid=0 from=<root> Jan 5 14:57:10 localhost postfix/cleanup[5529]: A21B49A618: message-id=<[email protected]> Jan 5 14:57:10 localhost postfix/qmgr[3058]: A21B49A618: from=<[email protected]>, size=534, nrcpt=1 (queue active) Jan 5 14:57:10 localhost postfix/local[5531]: A21B49A618: to=<[email protected]>, orig_to=<root>, relay=local, delay=0.38, delays=0.34/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 14:57:10 localhost postfix/qmgr[3058]: A21B49A618: removed Jan 5 15:47:38 localhost postfix/pickup[5207]: F312D9A618: uid=0 from=<root> Jan 5 15:47:39 localhost postfix/cleanup[5975]: F312D9A618: message-id=<[email protected]> Jan 5 15:47:39 localhost postfix/qmgr[3058]: F312D9A618: from=<[email protected]>, size=458, nrcpt=1 (queue active) Jan 5 15:47:39 localhost postfix/local[5977]: F312D9A618: to=<[email protected]>, orig_to=<username@localhost>, relay=local, delay=0.12, delays=0.09/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 15:47:39 localhost postfix/qmgr[3058]: F312D9A618: removed Jan 5 15:48:20 localhost postfix/pickup[5207]: A826C9A618: uid=1000 from=<username> Jan 5 15:48:20 localhost postfix/cleanup[5975]: A826C9A618: message-id=<[email protected]> Jan 5 15:48:20 localhost postfix/qmgr[3058]: A826C9A618: from=<[email protected]>, size=461, nrcpt=1 (queue active) Jan 5 15:48:20 localhost postfix/local[5977]: A826C9A618: to=<[email protected]>, orig_to=<username@localhost>, relay=local, delay=0.11, delays=0.08/0/0/0.03, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 15:48:20 localhost postfix/qmgr[3058]: A826C9A618: removed Jan 5 15:48:29 localhost postfix/pickup[5207]: 54AA19A618: uid=1000 from=<username> Jan 5 15:48:29 localhost postfix/cleanup[5975]: 54AA19A618: message-id=<[email protected]> Jan 5 15:48:29 localhost postfix/qmgr[3058]: 54AA19A618: from=<[email protected]>, size=461, nrcpt=1 (queue active) Jan 5 15:48:29 localhost postfix/local[5977]: 54AA19A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.11, delays=0.09/0/0/0.02, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 15:48:29 localhost postfix/qmgr[3058]: 54AA19A618: removed Jan 5 15:52:03 localhost postfix/pickup[5207]: C756E9A618: uid=0 from=<root> Jan 5 15:52:03 localhost postfix/cleanup[6074]: C756E9A618: message-id=<[email protected]> Jan 5 15:52:03 localhost postfix/qmgr[3058]: C756E9A618: from=<[email protected]>, size=491, nrcpt=1 (queue active) Jan 5 15:52:03 localhost postfix/local[6076]: C756E9A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.13, delays=0.09/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir) Jan 5 15:52:03 localhost postfix/qmgr[3058]: C756E9A618: removed Jan 5 16:02:36 localhost postfix/smtpd[6213]: connect from localhost.localdomain[127.0.0.1] Jan 5 16:04:26 localhost postfix/smtpd[6213]: disconnect from localhost.localdomain[127.0.0.1] 

日志说delivered to maildir 我是否使用错误的语法来访问maildir内容?

此外, main.cf如下(注意它需要允许本地主机帐户相互发送电子邮件):

 queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix myorigin = localhost inet_interfaces = localhost inet_protocols = all unknown_local_recipient_reject_code = 550 mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 relayhost = alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases home_mailbox = Maildir/ mailbox_command = debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.10.1/samples readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES 

我究竟做错了什么?

编辑:

根据masegaloeh的build议,我inputnano ~/.mailrc并在保存之前添加以下内容:

 set MAIL=/home/root/Maildir set folder=mail 

接下来,我inputmailx ,但terminal回应No mail for root 。 所以我创build了一个新的电子邮件,内容如下:

 [root@localhost ~]# mailx No mail for root [root@localhost ~]# mailx root@localhost Subject: another 905pm test. gonna try again now. EOT [root@localhost ~]# mailx No mail for root 

正如你所看到的,没有办法读取我刚刚发送的电子邮件。 我究竟做错了什么?

默认情况下,mailx将search读取mbox文件/var/spool/mail/$username 。 你可以用下面的命令查看它( 信贷到beginlinux.com网站

 $ set | grep -i mail MAIL=/var/spool/mail/myuser MAILCHECK=60 

当您在postfix中更改参数home_mailbox时,您需要调整mailxconfiguration,以便在新位置search邮件。 使用home_mailbox = Maildir/ ,postfix会将邮件存储在与用户主目录相对的 Maildir 目录中

来自postfix man postconf的片段

home_mailbox(默认:空)

邮箱文件相对于本地(8)用户的主目录的可选path名。

为qmail风格的传递指定一个以“/”结尾的path名。

所以你的电子邮件将存储在$HOME/Maildir/ ,$ HOME是您的主目录。 对于root用户,他的主目录是/root/ ; 对于其他用户,他的主目录通常在/home/otheruser/ 。 请参见unix.SEM中的 muru解释:根/主目录vs〜(代字号) 。

在你的情况下,你需要编辑~/.mailrc并添加这两行

 set MAIL=/root/Maildir set folder=mail 

参考 – > Fedora论坛:〜/ .mailrc的变化

我有同样的问题发送到[email protected]的所有电子邮件都没有被保存到根邮箱

我在mail.cf中注释了这一行home_mailbox = Maildir /

那么我不得不将var / spool / mail / root的所有者设置为“root”

如果你有其他用户,也许你不得不在var / spool / mail /文件夹中用他们的用户名创build一个文件,并且将文件所有者设置为相同的用户名?