[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: fetchmail (procmail mutt) : timeout socket error



Le Sunday 26 July 2009 12:43:52 Michaël Pierson, vous avez écrit :
> Le vendredi 24 juillet 2009 à 01:25:47, serge@srv0.ath.cx a écrit :
> > Le Friday 24 July 2009 00:34:30 Michaël Pierson, vous avez écrit :
> > > Le mercredi 22 juillet 2009 à 10:24:45, Edi Stojicevic a écrit :
> > > > * Michaël Pierson <michael.y.f.pierson@gmail.com> [2009-07-22
> > > > 19:03:35
> >
> > +0200] wrote :
> > > > > Je relève mes mails tous les quart d'heure (crontab):
> > > > > */15 * * * * fetchmail --silent
> > > >
> > > > Pourquoi ne pas mettre dans ton ~/.fetchmailrc
> > > > set daemon 900
> > >
> > > oui pourquoi pas
> > >
> > > > > Ce 22 juillet (à quelques autres reprises) j'ai reçu de Cron Deamon
> > > > > le mail suivant:
> > > > > fetchmail: timeout after 300 seconds waiting for server
> > > > > mail.voo.be. fetchmail: socket error while fetching from
> > > > > *moi*@*server* fetchmail: Query status=2 (SOCKET)
> > > > >
> > > > > Jj'ai rien dans /var/log/mail.info
> > > >
> > > > et dans /var/log/mail.(err|log) ?
> > >
> > > non rien du tout
> >
> > * Avec ces lignes ( au debut de "~/.fetchmailrc" ):
> >
> > set no syslog
> > set logfile ~/.fetchmail.log
>
> Lignes ajoutées le 24 juillet en début de fichier comme recommandé.
> 2 nouveaux messages mails de Cron Deamon le 25.
> Je n'ai pas de fichier "~/.fetchmail.log" créé.
>
> @+
> Michaël


Salut;

Il y a deux manières d'utiliser fetchmail:
	- mode utilisateur ( un fichier ~/.fetchmailrc par utilisateur );
	- mode système ( un unique fichier /etc/fetchmailrc pour tous les
	  utilisateurs et administré par un utilisateur spécifique ou root ).

Les paramètres utilisés pour chaque mode sont certaines fois différents, et le 
mode de lancement différents aussi, mais ils n'utilisent pas un service cron.

Celui qui t'intéresse est certainement le mode utilisateur, avec un fichier de 
configuration placé dans le 'home' de l'utilisateur: ~/.fetchmailrc

Pour lancer fetchmail automatiquement en mode 'daemon' lorsque l'utilisateur 
se connecte ( login ), on utilise soit '~/.bash_login' ou '~/.bash_profile' 
en y ajoutant:

if [ -f ~/.fetchmailrc -a -x /usr/bin/fetchmail ]; then
    # Vérification des permissions
    if [ "$(stat -c '%U %a' ~/.fetchmailrc)" != "$USER 600" ]; then
        chown -h $USER  ~/.fetchmailrc
        chmod -f 0600  ~/.fetchmailrc
    fi
    # Si il y a une instance de fetchmail
    if [ -f ~/.fetchmail.pid ]; then
        PIDSTATUS="/proc/$(head -n 1 ~/.fetchmail.pid)/status"
        if [ -f "$PIDSTATUS" -a "$(grep fetchmail $PIDSTATUS)" ]; then
            /usr/bin/fetchmail --quit
            sleep 1
        fi
    fi
    # Lancement de fetchmail en mode daemon
    # avec interval entre ramassage de 300 s
    # et journal des actions.
    /usr/bin/fetchmail  \
	--daemon 300 \
	--logfile ~/.fetchmail.log \
	--pidfile ~/.fetchmail.pid
fi

Par la suite pour terminer proprement fetchmail en sortant, on ajout 
à '~/.bash_logout':

if [ -f ~/.fetchmail.pid ]; then
    PIDSTATUS="/proc/$(head -n 1 ~/.fetchmail.pid)/status"
    if [ -f "$PIDSTATUS" -a "$(grep fetchmail $PIDSTATUS)" ]; then
        /usr/bin/fetchmail --quit
    fi
fi

@+
-- 
(o_
(/)_
S e r g e


Reply to: