Конфигурация GNU Mailutils для непосредственной работы на maildir?

Я хотел бы настроить почтовую программу GNU Mailutils так, чтобы она работала в уже существующем каталоге maildir. В настоящее время мой mailutils.rc выглядит так:

mailbox{
        mailbox-pattern "maildir:///home/${user}/Maildir";
        mailbox-type maildir;
}

Это позволяет мне читать почту из этой папки, но, тем не менее, почтовая программа всегда перемещает все открытые письма в /home/${user}/mbox. Есть ли способ сообщить почте, чтобы файлы оставались в исходном положении?

6
задан 20 August 2013 в 23:56

1 ответ

Мне удалось воспроизвести вашу проблему с помощью GNU Mailutil 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.

Веселись!

0
ответ дан 20 August 2013 в 23:56

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

Похожие вопросы: