OVH Cloud OVH Cloud

[Sendmail] script & spool

2 réponses
Avatar
Fab!
Bonjour,

Sur l'excellent site http://www.funix.org/ un script est proposé afin de
modifier le "sender" (par exemple) d'un message en attente dans le spool
(/var/spool/mqueues) de sendmail, parfait, mais voila, en ce qui me concerne
je lance sendmail comme ceci:


#sendmail -bd -q 01

ce qui a pour effet de ne pas mettre en attente les messages (en réalité je
ne sais pas si un message passe quand même dans le spool, en a t'il le
temps...?) mais de l'envoyer directement.

Question: en imaginant que le délai de latence soit de 10s avant l'envoi, ce
qui laisserai largement le temps au script de s'exécuté, comment faire pour
que le script s'exécute quand le spool est non-vide ?

J'imagine qu'il faudrait un script qui scrute le répertoire en question
régulièrement (avec un cron), un peu lourd comme solution, donc si quelqu'un
a une idée différente :)

Et puis il existe un autre problème, si sendmail vide le spool toutes les
10secondes, mais qu'un message est envoyé 1 seconde avant le vidage du
spool, cela ne laisserait pas le temps au script de faire son boulot :(

Je précise que les mails partent d'un Windows et passent par un autre PC
(linux), donc sendmail.

En espérant avoir été clair :)

Merci!

2 réponses

Avatar
Jean-Yves LENHOF
On Thu, 14 Aug 2003 16:57:21 +0200, Fab! wrote:

Bonjour,

Sur l'excellent site http://www.funix.org/ un script est proposé afin de
modifier le "sender" (par exemple) d'un message en attente dans le spool
(/var/spool/mqueues) de sendmail, parfait, mais voila, en ce qui me
concerne je lance sendmail comme ceci:


#sendmail -bd -q 01

ce qui a pour effet de ne pas mettre en attente les messages (en réalité
je ne sais pas si un message passe quand même dans le spool, en a t'il le
temps...?) mais de l'envoyer directement.

Question: en imaginant que le délai de latence soit de 10s avant l'envoi,
ce qui laisserai largement le temps au script de s'exécuté, comment
faire pour que le script s'exécute quand le spool est non-vide ?

J'imagine qu'il faudrait un script qui scrute le répertoire en question
régulièrement (avec un cron), un peu lourd comme solution, donc si
quelqu'un a une idée différente :)

Et puis il existe un autre problème, si sendmail vide le spool toutes les
10secondes, mais qu'un message est envoyé 1 seconde avant le vidage du
spool, cela ne laisserait pas le temps au script de faire son boulot :(

Je précise que les mails partent d'un Windows et passent par un autre PC


Ba pour ma part j'utilise directement des fonctionnalités de sendmail pour
ré-écrire mon adresse pour qu'elle sorte avec un nom explicite aux yeux
extérieurs

En effet mon user local s'appelle jylenhof...mais quand j'envoie un mail
l'adresse est ré-écrite dans un format plus user friendly pour les
extérieurs ()

www#cat /etc/mail/genericstable
jylenhof
www#

Et dans l'autre sens j'ai un alias de

jean-yves vers jylenhof dans mon fichier /etc/mail/aliases

Il faut faire qq modifs ds le sendmail.cf, que je génére avec
les macros m4 en ajoutant qq part cette ligne

FEATURE(`genericstable',`hash -o /etc/mail/genericstable')dnl

Lorsque tu crées ton fichier /etc/mail/genericstable.... Il faut faire
après un hash -o /etc/mail/genericstable et il te génère un fichier
/etc/mail/genericstable.db

En éspérant avoir fait avancer le chmil'blik

Jean-Yves LENHOF

Avatar
Fab!
"Jean-Yves LENHOF"



www#cat /etc/mail/genericstable
jylenhof
www#

(...)

En éspérant avoir fait avancer le chmil'blik



Je pense que c'est le bonne solution, merci!