J'aimerais configurer le programme de messagerie GNU Mailutils afin qu'il fonctionne sur un répertoire maildir déjà existant. Actuellement, mon mailutils.rc ressemble à ceci:
mailbox{
mailbox-pattern "maildir:///home/${user}/Maildir";
mailbox-type maildir;
}
Cela me permet de lire les messages de ce dossier, mais néanmoins, le programme de messagerie déplace toujours tous les messages ouverts vers /home/${user}/mbox
. Y a-t-il un moyen de dire au courrier de conserver les fichiers à leur position d'origine?
J'ai pu reproduire votre problème avec GNU de Mailutil's mail
. Je n'ai pas trouvé de réponse directe à votre question, mais j'ai trouvé une solution à votre problème.
Je suppose que vous avez configuré votre MTA local (Exim) afin que les nouveaux messages soient remis à $HOME/Maildir/
, c'est-à-dire que votre configuration Exim est définie sur dc_localdelivery='maildir_home'
.
Installez heirloom-mailx
qui fournit un remplacement de mailx et offre plus de fonctionnalités que la version de GNU Mailutil de mailx. Assurez-vous qu’il s’agit bien de la disposition réelle de mailx
dans les options config. Habituellement, c'est parce que l'héritage a la plus haute priorité. Vous pouvez vérifier cela comme ceci:
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:
Configurez mailx avec la variable d'environnement $MAIL
. Étant donné que cette configuration implique que le courrier est livré pour tous les utilisateurs à leur Maildir local respectif, je suppose que c'est la manière la plus élégante de procéder:
x60 ~ # echo 'export MAIL=$HOME/Maildir/' > /etc/profile.d/local_mailx.sh
Pas besoin de chmod 755 ce fichier, car il sera fourni par le shell de connexion. Cependant, vous devez vous déconnecter et vous connecter pour que les modifications des variables d'environnement prennent effet.
Preuve de concept:
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/
Problème résolu. Reste la question: Devez-vous vous en tenir à GNU le mailx de Mailutil? J'en doute. Cela est peut-être possible avec GNU, mais comme heirloom offre un sur-ensemble de fonctions et que vous pouvez toujours utiliser d'autres outils de Mailtutils, je ne prendrais pas la peine d'investir davantage dans la recherche. heirloom est un joli logiciel. YMMV et HTH.
S'amuser!