Конфигурация GNU Mailutils для непосредственной работы на maildir?
Я хотел бы настроить почтовую программу GNU Mailutils так, чтобы она работала в уже существующем каталоге maildir. В настоящее время мой mailutils.rc выглядит так:
mailbox{
mailbox-pattern "maildir:///home/${user}/Maildir";
mailbox-type maildir;
}
Это позволяет мне читать почту из этой папки, но, тем не менее, почтовая программа всегда перемещает все открытые письма в /home/${user}/mbox
, Есть ли способ сообщить почте, чтобы файлы оставались в исходном положении?
1 ответ
Я смог воспроизвести вашу проблему с GNU Mailutil's mail
, Я не нашел прямого ответа на ваш вопрос, но нашел решение вашей проблемы.
Я полагаю, вы настроили свой локальный MTA (exim) так, чтобы новая почта доставлялась $HOME/Maildir/
т.е. ваша конфигурация exim установлена на dc_localdelivery='maildir_home'
,
устанавливать heirloom-mailx
которая обеспечивает замену mailx и предлагает больше функциональных возможностей, чем версия mailx для GNU Mailutil. Убедитесь, что это фактическое предоставление mailx
в конфиге альтернатив. Обычно это так, потому что семейная реликвия имеет самый высокий приоритет. Вы можете проверить это следующим образом:
jb@x60 ~ $ sudo update-alternatives --config mailx
There are 2 choices for the alternative mailx (providing /usr/bin/mailx).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/heirloom-mailx 60 auto mode
1 /usr/bin/heirloom-mailx 60 manual mode
2 /usr/bin/mail.mailutils 30 manual mode
Press enter to keep the current choice[*], or type selection number:
Настройте mailx с помощью переменной среды $MAIL
, Поскольку эта конфигурация подразумевает, что почта доставляется всем пользователям в их соответствующие локальные Maildir, я полагаю, что это самый элегантный способ сделать это:
x60 ~ # echo 'export MAIL=$HOME/Maildir/' > /etc/profile.d/local_mailx.sh
Нет необходимости chmod 755 этот файл, так как он будет получен из оболочки входа в систему. Однако вам нужно выйти из системы и включить ее, чтобы изменения в среде вступили в силу.
Подтверждение концепции:
jb@x60 ~ $ grep dc_localdelivery /etc/exim4/update-exim4.conf.conf
dc_localdelivery='maildir_home'
jb@x60 ~ $ echo $MAIL
/home/jb/Maildir/
jb@x60 ~ $ mail jb
Subject: test
test
.
EOT
jb@x60 ~ $ mail
Heirloom mailx version 12.5 6/20/10. Type ? for help.
"/home/jb/Maildir/": 1 message 1 new
>N 1 Jo Bo Sun Aug 25 14:06 19/489 test
? 1
Message 1:
From jb@x60 Sun Aug 25 14:06:52 2013
Return-path: <jb@x60>
Envelope-to: jb@x60
Delivery-date: Sun, 25 Aug 2013 14:06:52 +0200
Date: Sun, 25 Aug 2013 14:06:52 +0200
To: jb@x60
Subject: test
User-Agent: Heirloom mailx 12.5 6/20/10
Content-Type: text/plain; charset=us-ascii
From: Jo Bo <jb@x60>
Status: R
test
? q
Held 1 message in /home/jb/Maildir/
Задача решена. Остается вопрос: вам нужно придерживаться GNU Mailutil mailx? Я сомневаюсь в этом. Возможно, это возможно сделать с помощью GNU, но так как семейная реликвия предлагает расширенный набор функций, и вы все еще можете использовать другие инструменты из Mailtutils, я бы не стал вкладывать средства в дальнейшие исследования. семейная реликвия - хороший кусок программного обеспечения. YMMV и HTH.
Веселиться!