CentOS 7
開発マシンで、localhost
アドレス間で電子メールを交換できるようにpostfixを構成しました。 Mailx
もインストールされます。メールを送信できますが、ログファイルにメールが配信されたことが示されています。しかし、ターミナルで表示するメールが見つかりません。 何が間違っているのですか?ターミナルでこれらの新しく送信された電子メールを表示するにはどうすればよいですか?
ターミナルでmailx root@localhost
と入力し、プロンプトに従って件名と本文を追加し、次にCtrl-D
を入力してコマンドプロンプトを取得することで、電子メールを送信できます。また、rootとしてログインしたときにmail
またはmailx
と入力すると、端末は、postfix
が電子メールを保存するように変更される前に保存されたいくつかの古い電子メールのリストで応答します。 /Maildir
にありますが、新しいメールは見つかりません。 nano /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
のアドバイスに従って、nano ~/.mailrc
と入力し、保存する前に次を追加しました。
set MAIL=/home/root/Maildir
set folder=mail
次に、mailx
と入力しましたが、端末はNo mail for root
で応答しました。そこで、次のような新しいメールを作成しました。
[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は読み取りmboxファイル/var/spool/mail/$username
を検索します。以下のコマンドで表示できます(credit to beginlinux.com website)
$ set | grep -i mail
MAIL=/var/spool/mail/myuser
MAILCHECK=60
Postfixでパラメータhome_mailbox
を変更するときは、mailx構成を調整して、新しい場所でメールを検索するようにする必要があります。 home_mailbox = Maildir/
を使用すると、postfixはメールをMaildirディレクトリに保存しますユーザーのホームディレクトリと比較して。
接尾辞からのスニペット man postconf
home_mailbox(デフォルト:空)
local(8)ユーザーのホームディレクトリからのメールボックスファイルのオプションのパス名。
Qmailスタイルの配信の場合は、「/」で終わるパス名を指定します。
したがって、メールは$HOME/Maildir/
に保存され、$ HOMEがホームディレクトリになります。ルートの場合、彼のホームディレクトリは/root/
です。他のユーザーの場合、彼のホームディレクトリは通常/home/otheruser/
にあります。 mur の説明を参照してください nix.SE:ルート/ホームディレクトリvs〜(チルダ) 。
あなたの場合、~/.mailrc
を編集して、これらの2行を追加する必要があります
set MAIL=/root/Maildir
set folder=mail