Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1074 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Postfix + Procmail : "can't create user output file" [urgent svp]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Postfix + Procmail : "can't create user output file" [urgent svp]

n°530656
benj63
Posté le 30-07-2004 à 09:13:33  profilanswer
 

Salut,
 
J'ai mis en place un ptit serveur de mail sur une station SUN (Solaris 8), avec postfix.
 
Comme je souhaite mettre en place un message d'absence automatique pendant mes vacances, j'ai installé procmail, et j'ai rajouté dans le script main.cf de postfix :
 

mailbox_command = /usr/bin/procmail -m $HOME/.procmailrc


 
 
Dans le répertoire de chaque utilisateur, par exemple /toto pour l'utilisateur toto, j'ai placé un fichier .procmailrc avec le script suivant pour ceux qui sont en vacances :
 

EMAIL=toto@bidon.fr
SHELL=/bin/sh
 
:0 Whc: vacation.lock
# Perform a quick check to see if the mail was addressed to us
* $^(To|Cc):.*$EMAIL
# Don't reply to daemons and mailinglists
* !^FROM_DAEMON
# Mail loops are evil
* $!^X-Loop: $EMAIL
| formail -rD 8192 vacation.cache
 
:0 ehc         # if the name was not in the cache
| (formail -rI"Precedence: junk" -A"From: $EMAIL" -A"X-Loop: $EMAIL" ; cat $HOME/.autoreply;) | $SENDMAIL -oi -t


(c'est un script que j'ai trouvé sur le web qui permet de renvoyer un mail automatique)
 
Le problème, c'est que lorsque j'envoie un mail à toto@bidon.fr pour faire un essai, toto ne reçoit pas son mail, et je reçois un mail de retour :
 

This is the Postfix program at host mail.bidon.fr.
 
I'm sorry to have to inform you that the message returned
below could not be delivered to one or more destinations.
 
For further assistance, please send mail to <postmaster>
 
If you do so, please include this problem report. You can
delete your own text from the message returned below.
 
   The Postfix program
 
<toto@bidon.fr>: can't create user output file
 
Message/delivery-status
 
Reporting-MTA: dns; mail.bidon.fr
Arrival-Date: Fri, 30 Jul 2004 09:03:31 +0100 (WEST)
 
Final-Recipient: rfc822; toto@bidon.fr
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix; can't create user output file


 
 
J'ai alors tenté de créer un fichier .procmailrc sans le script de renvoi de mail :
 

EMAIL=toto@bidon.fr
SHELL=/bin/sh


 
Je reçois le mail retour de postfix !!  :(  
 
Que dois-je faire ?? Y'a-t'il des paramètres à configurer avec Procmail pour qu'il puisse écrire le fichier de l'utilisateur ??
 
Merci par avance !!  :jap:  :jap:  
 

mood
Publicité
Posté le 30-07-2004 à 09:13:33  profilanswer
 

n°530859
benj63
Posté le 30-07-2004 à 13:14:56  profilanswer
 

:bounce: il n'y a aucun utilisateur de procmail ici ?.... :sweat:


Message édité par benj63 le 30-07-2004 à 13:15:06
n°530865
mikala
Souviens toi du 5 Novembre...
Posté le 30-07-2004 à 13:20:18  profilanswer
 

il n'y a pas d'interet à spéficier dans un premier temps le

-m $HOME/.procmailrc

pour la raison simple que procmail les lis automatiquement si ils existent :) (cf man procmail :D )
tu peux en revanche préciser si ils sont en Maildir ou mbox dans ce fichier ( ou directement au niveau du /etc/procmailrc . )
après le $SENDMAIl existe ?

n°530875
benj63
Posté le 30-07-2004 à 13:34:37  profilanswer
 

mikala a écrit :

il n'y a pas d'interet à spéficier dans un premier temps le

-m $HOME/.procmailrc

pour la raison simple que procmail les lis automatiquement si ils existent :) (cf man procmail :D )
tu peux en revanche préciser si ils sont en Maildir ou mbox dans ce fichier ( ou directement au niveau du /etc/procmailrc . )
après le $SENDMAIl existe ?


 
J'ai ajouté le -m $HOME/.procmailrc car Procmail ne faisait carrément rien du tout sans cette précision ! Je ne comprenais pas pourquoi d'ailleurs, j'avais beau mettre le .procmailrc dans le $HOME des users, procmail ne le trouvait pas (à priori) puisqu'il ne faisait rien.
 
quelle est la différence entre maildir et mbox ?? je peux savoir en quel mode ils sont, si je regarde le main.cf de postfix ?
 
Le $SENDMAIL doit être placé où, et doit avoir quelle valeur ??
 
Merci pour les précisions !!  :jap:

n°530881
mikala
Souviens toi du 5 Novembre...
Posté le 30-07-2004 à 13:53:02  profilanswer
 

c'est bizarre que procmail ne lise pas automatiquement ce fichier (le .procmailrc) ,il est lisible par l'user a qui appartient le répertoire ? car en fait procmail se setuider sous l'user pour lequel il doit déposer le mail donc si ce fichier appartien a root et est en 600 ca risque d'etre effectivement dur pour lui de le lire :)
$SENDMAIl <-- bah il doit contenir le chemin vers ton equivalent binaire sendmail (celui mis en place par postfix lors de son installation ) .
mbox/Maildir .
pour mbox --> man mbox :D
en gros c'est un fichier qui contient tous les mails de l'user . il est classiquement dans /var/spool/mail/user  <-- user étant le nom du fichier et contient les mails de 'user' :D
Maildir --> man Maildir [:ddr555]  
en fait la structure est la totalement différente .
en fait c'est un repertoire ( Maildir ) contenant 3 autres repertoires , cur ,new et tmp .
chaque mail est stocké dans un fichier a part , il est 'plus' sur que le format mbox dans le sens ou quand un mail est dépose , il va dans le tmp/ une fois écris a ce niveau il est déplacé dans new/ , une fois lu il ira dans cur/ .
il est mieux que mbox car il y a notamment pas de lock contrairement a mbox , bref tu peux avoir plusieurs actions en simultanés sur la Maildir il n'y aura pas de blocage , alors que dans un mbox , il faut attendre son tour .
mbox est le format classique des mails sous *nix , et le comportement par défaut de postfix/procmail .
pour spécifier le format utilisé cela dépend du mda choisi :
si tu te sers de local de postfix alors il faut préciser au niveau du main.cf
par le biais de home_mailbox = Maildir/
si tu te sers d'un mda ( cas ou mailbox_command est spécifié )  comme procmail alors il faut le spécifier au niveau de la configuration de ce mda (donc ici procmail )
donc par exemple au niveau du /etc/procmailrc  

Citation :

DEFAULT="$HOME/Maildir/"


comme tu l'auras deviné les Maildir sont dans le $HOME de l'utilisateur et pas dans le /var/spool/mail/ .
 
 
 

n°533389
Tomate
Posté le 03-08-2004 à 23:24:24  profilanswer
 

tiens j ai un pb similaire pour vacation : moi le user recoit son mail mais aucun reply n est envoyé :D


---------------
:: Light is Right ::

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Postfix + Procmail : "can't create user output file" [urgent svp]

 

Sujets relatifs
Postfix : "maildir delivery failed"Debian : user not authorized to run the x server
Postfix et gestion des bal[Sendmail]message bloqué en file d'attente
Activer upload ds proftp pour userPostfix : Envoie d'un mail : " transport is unavailable"
postfix : virtual users et popa3dtraitement de mails, postfix, fetchmail et quelques questions
Configurer Postfix pour qu'il fasse le relay sur deux sites Amavis Clamav Spamassassin et Postfix
Plus de sujets relatifs à : Postfix + Procmail : "can't create user output file" [urgent svp]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR