Почему /usr/bin/mail игнорирует псевдонимы в $HOME/.mailrc

Когда я отправляю электронную почту, используя / usr / bin / mail в командной строке (Ubuntu 13.04 64-bit), он не обращает внимания на псевдонимы в моем файле.mailrc. Кто-нибудь знает, как это исправить?

Чтобы воспроизвести проблему:

  1. Поместите псевдоним в $HOME/.mailrc

    псевдоним foo me@whwhat.com

  2. Попробуйте отправить псевдоним по почте:

    $ echo привет | /usr/bin/mail -s testing foo

  3. Прочтите /var/log/mail.log и увидите, что "foo" отказов как неизвестный пользователь:

    7 сентября 11:15:39 postfix/local моего компьютера [9707]: EE038F6028B: to =, relay = local, delay = 0.1, задержки =0.07/0/0/0.03, dsn=5.1.1, status=bounce (неизвестный пользователь: "foo")

Однако другие мои почтовые программы, такие как Emacs VM, уважают псевдонимы в $HOME/.mailrc.

Такого не было в Ubuntu 10.04 LTS, моей предыдущей системе.

На дальнейшее расследование... я побежал:

$ mail -f mymailbox
? alias foo
foo        me@whatever.com

Таким образом, / usr / bin / mail действительно обрабатывает $HOME/.mailrc, но каким-то образом, хотя "mail" знает псевдоним "foo", в результате postfix видит сообщение электронной почты "foo@mycomputer.mydomain" вместо расширение псевдонима. Я не знаю, кто неправильно настроен: mail (GNU mailutils) или postfix.

3 ответа

Я сделал:

sudo apt-get install bsd-mailx

и проблема ушла. Почтовые программы, предоставляемые bsd-mailx, поддерживают псевдонимы.mailrc, в то время как, очевидно, те, что в mailutils - нет.

Благодарим mdpc ( mdpc) за то, что он привел меня к этому решению в своем комментарии выше.

Так bsd-mailxможет не иметь этой проблемы; но у него намного меньше возможностей, чем у gnu mailutils.

Я также недавно столкнулся с этой проблемой при новой установке Ubuntu; но обнаружил, что в моем ~/.mailrc исправил проблему:

set inplacealiases

Вот и все. Псевдонимы работали после того, как я это сделал.

Насколько я помню... почтовая программа является агентом локальной доставки почты и обычно вызывается из таких программ, как sendmail. Я обнаружил, что программа mailx - более удобная программа, в которой гораздо больше свистков и наворотов. Насколько я помню, mailx доступен и может использоваться практически на всех системах Linux/UNIX.

Я привык к использованию mailx по почте еще во времена Solaris.

После того, как вы установили почтовый сервер, используя что-то вроде sudo apt-get install mailutils Создав файл псевдонимов, вы должны дать системе возможность прочитать и создать хеш-файл конфигурации псевдонимов.

sudo newaliases

Изменение aliases Файл без запуска вышеуказанной команды впоследствии не будет вносить никаких изменений в систему.

Этот пост может иметь отношение к вашему вопросу.

Другие вопросы по тегам