Почему /usr/bin/mail игнорирует псевдонимы в $HOME/.mailrc
Когда я отправляю электронную почту, используя / usr / bin / mail в командной строке (Ubuntu 13.04 64-bit), он не обращает внимания на псевдонимы в моем файле.mailrc. Кто-нибудь знает, как это исправить?
Чтобы воспроизвести проблему:
Поместите псевдоним в $HOME/.mailrc
псевдоним foo me@whwhat.com
Попробуйте отправить псевдоним по почте:
$ echo привет | /usr/bin/mail -s testing foo
Прочтите /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
Файл без запуска вышеуказанной команды впоследствии не будет вносить никаких изменений в систему.
Этот пост может иметь отношение к вашему вопросу.