В CentOS 7
машина разработки, я настроил postfix, чтобы разрешить обмен электронной почты между localhost
адреса. Mailx
также установлен. Я могу отправить электронное письмо, и в файлах журнала указано, что письмо было доставлено. Однако я не могу найти электронные письма для просмотра в терминале. Что я делаю не так? Как я могу просмотреть эти недавно отправленные электронные письма в терминале?
Я могу отправить электронное письмо, набрав mailx root@localhost
в терминале, а затем, следуя подсказкам, добавьте тему и текст, затем Ctrl-D
чтобы получить командную строку. Кроме того, когда я печатаю mail
или mailx
при входе в систему как root терминал отвечает списком нескольких старых писем, которые были сохранены до 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=<username@localhost.localdomain>, 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=<root@localhost.localdomain>, 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=<20150105222920.7F4439A616@localhost.localdomain>
Jan 5 14:29:20 localhost postfix/qmgr[3058]: 7F4439A616: from=<username@localhost.localdomain>, size=334, nrcpt=1 (queue active)
Jan 5 14:29:20 localhost postfix/local[5271]: 7F4439A616: to=<root@localhost.localdomain>, 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=<20150105225710.A21B49A618@localhost.localdomain>
Jan 5 14:57:10 localhost postfix/qmgr[3058]: A21B49A618: from=<root@localhost.localdomain>, size=534, nrcpt=1 (queue active)
Jan 5 14:57:10 localhost postfix/local[5531]: A21B49A618: to=<root@localhost.localdomain>, 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=<20150105234738.F312D9A618@localhost.localdomain>
Jan 5 15:47:39 localhost postfix/qmgr[3058]: F312D9A618: from=<root@localhost.localdomain>, size=458, nrcpt=1 (queue active)
Jan 5 15:47:39 localhost postfix/local[5977]: F312D9A618: to=<username@localhost.localdomain>, 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=<20150105234820.A826C9A618@localhost.localdomain>
Jan 5 15:48:20 localhost postfix/qmgr[3058]: A826C9A618: from=<username@localhost.localdomain>, size=461, nrcpt=1 (queue active)
Jan 5 15:48:20 localhost postfix/local[5977]: A826C9A618: to=<username@localhost.localdomain>, 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=<20150105234829.54AA19A618@localhost.localdomain>
Jan 5 15:48:29 localhost postfix/qmgr[3058]: 54AA19A618: from=<username@localhost.localdomain>, size=461, nrcpt=1 (queue active)
Jan 5 15:48:29 localhost postfix/local[5977]: 54AA19A618: to=<root@localhost.localdomain>, 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=<20150105235203.C756E9A618@localhost.localdomain>
Jan 5 15:52:03 localhost postfix/qmgr[3058]: C756E9A618: from=<root@localhost.localdomain>, size=491, nrcpt=1 (queue active)
Jan 5 15:52:03 localhost postfix/local[6076]: C756E9A618: to=<root@localhost.localdomain>, 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
выглядит следующим образом (обратите внимание, что необходимо разрешить учетным записям localhost отправлять друг другу электронные письма):
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
. Вы можете просмотреть его с помощью команды ниже (кредит на сайт beginlinux.com)
$ set | grep -i mail
MAIL=/var/spool/mail/myuser
MAILCHECK=60
Когда вы меняете параметр home_mailbox
в postfix вам нужно настроить конфигурацию mailx, чтобы он выполнял поиск почты в новом месте. С участием home_mailbox = Maildir/
, postfix сохранит письмо в каталоге Maildir родственник с домашним каталогом пользователя.
Фрагмент из постфикса человек postconf
home_mailbox (по умолчанию: пусто)
Необязательный путь к файлу почтового ящика относительно домашнего каталога локального (8) пользователя.
Укажите путь, заканчивающийся на "/" для доставки в стиле qmail.
Ваша электронная почта будет храниться в $HOME/Maildir/
, где $ HOME - ваш домашний каталог. Для root его домашний каталог /root/
; для другого пользователя его домашний каталог обычно находится в /home/otheruser/
. Видеть Муру объяснение в unix.SE: корневой / домашний каталог vs ~ (тильда).
В вашем случае вам нужно отредактировать ~/.mailrc
и добавьте эти две строки
set MAIL=/root/Maildir
set folder=mail
Ссылки -> Форум Fedora: изменения ~ / .mailrc
У меня была такая же проблема, все электронные письма, отправленные на root@mydomain.co.uk, не сохранялись в почтовом ящике root
я прокомментировал эту строку в mail.cf home_mailbox = Maildir /
тогда мне пришлось установить владельца var / spool / mail / root на "root"
Если у вас есть другие пользователи, возможно, вам нужно создать файл в папке var / spool / mail / с их именем пользователя, а также установить для владельца файлов то же имя пользователя?