Bizarrerie de Fetchmail

[Résolu/Fermé]
Signaler
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
-
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
-
Bonjour.

Si vous conaissez Fetchmail, peut-être sauriez-vous pourquoi je n'arrive pas à récupérer mes messages sur le serveur du rectorat de la Réunion (pop3.ac-reunion.fr) avec Fetchmail, alors que ça mache avec kmail.

Remarque:
J'arrive sans problème à récupérer mes mails sur le serveur de wanadoo (pop.wanadoo.fr) ou celui de laposte.net (pop.laposte.net), que ce soit avec Fetchmail ou avec kmail.

------------------
Pour info, voici mon fichier de configuration de fetchmail .fetchmailrc :

poll pop.laposte.net with proto POP3
user 'moncompteutilisateur1' there with password 'monmdp1' is 'dawid@pentium4.localdomain' here
poll pop3.ac-reunion.fr with proto POP3
user 'monutilisateur2' there with password 'monmdp2' is 'dawid@pentium4.localdomain' here

13 réponses

Messages postés
13531
Date d'inscription
jeudi 9 janvier 2003
Statut
Contributeur
Dernière intervention
16 mai 2014
526
Salut,

tu as un message d'erreur ? des logs ?
Messages postés
5583
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
9 juillet 2021
942
Salut,

lance fetchmail en ligne de commande avec les options -v -v -k et dit nous ce que celà raconte.


Dal
Messages postés
70
Date d'inscription
jeudi 9 juin 2005
Statut
Membre
Dernière intervention
30 août 2006
2
salut rajoute sur chaque ligne
user 'moncompteutilisateur1' there with password 'monmdp1' is 'dawid@pentium4.localdomain' here option fetchall

voila
n'oublie pas de relancer fetchmail
A plouche
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
tu as un message d'erreur ? des logs ?
Non, aucun message d'erreur. C'est ça qui est curieux.
Comme je l'ai dit, le seul truc que je remarque, c'est que Fetchmail ne ramène pas mon courrier uniquement sur le serveur de mon académie (ac-réunion.fr).

lance fetchmail en ligne de commande avec les options -v -v -k
C'est sûr que c'est 2 fois -v ?
En tous cas, je n'ai aucun message d'erreur...

option fetchall
C'est censé faire quoi ?

Voila ce que ça me donne :
pentium4 dawid # /etc/init.d/fetchmail restart
* Starting fetchmail ...
fetchmail:/var/fetchmail/.fetchmailrc:17: syntax error at option
Messages postés
5583
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
9 juillet 2021
942
Re,

Je disais :

lance fetchmail en ligne de commande avec les options -v -v -k et dit nous ce que celà raconte

Celà signifie que dans ton shell, tu le logues sous l'utilisateur sous lequel le .fetchmailrc a été créé et tu tapes, à la ligne de commande :

fetchmail -v -v -k -f /var/fetchmail/.fetchmailrc

(le "-f /var/fetchmail/.fetchmailrc" doit être ajouté dans ton cas pour que la version "standalone" de fetchmail le trouve puisque tu sembles utiliser fetchmail en tant que démon. D'ailleurs, tu pourrais aussi arrêter ton démon jusqu'à ce que tu saches ce qui arrive)

Tu réponds :

C'est sûr que c'est 2 fois -v ?

Oui, c'est le mode verbose très verbeux, pour savoir ce que fait exactement fetchmail. Si tu avais regardé la page de manuel, tu ne poserais pas cette question (man fetchmail).

En tous cas, je n'ai aucun message d'erreur...

Après avoir lancé cette commande, à l'écran, tu dois voir tout un tas de lignes qui défilent concernant les différents serveurs pops consultés.

Ce sont les lignes relatives au serveur pop duquel tu ne reçois rien qui nous intéressent. Copies les ici comme je te le demande au lieu de nous déclarer "je n'ai aucun message d'erreur".

option fetchall
C'est censé faire quoi ?


man fetchmail

Voila ce que ça me donne :
pentium4 dawid # /etc/init.d/fetchmail restart
* Starting fetchmail ...
fetchmail:/var/fetchmail/.fetchmailrc:17: syntax error at option


Il y a quoi ligne n°17 de ton fichier fetchmail (et autour) ?


Dal
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
Il y a quoi ligne n°17 de ton fichier fetchmail (et autour) ?
Il y a la fameuse option fetchall !
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
Copies les ici comme je te le demande au lieu de nous déclarer "je n'ai aucun message d'erreur".

T'en fais pas, j'ai compris ce que tu disais, c'est pas la pas de me répondre comme ça !

Quand je dis "je n'ai aucun message d'erreur", c'est que je n'ai aucun message d'erreur :

J'ai un utilisateur fetchmail, donc je fais :
su fetchmail
fetchmail -v -v -k -f /var/fetchmail/.fetchmailrc


et bien la commande s'exécute et je n'ai rien qui s'affiche.
Le "tout un tas de ligne qui s'affichent", pour moi, c'est rien du tout !

La commande s'exécute à la manière de modprobe unmodule. Tu sais, quand le module se charge bien, c'est que la commande a fonctionné. Il n'y a pas "tout un tas de lignes".
Messages postés
5583
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
9 juillet 2021
942
Salut,

1.

Tu as une faute de syntaxe dans ton fetchmailrc. La première chose à faire est de la corriger. Comme tu n'as pas donné l'information de contexte demandée, j'en suis réduit aux suppositions.

Alors, je vais supposer que tu as fait l'erreur de mettre "option fetchall" au début d'une nouvelle ligne (en ligne 17) et non pas à la fin de ta ligne "user 'moncompteutilisateur1' there with (...)" qui serait la ligne précédente.

Si j'ai bon, tu peux me décerner une médaille de devin.

Je suppose aussi que ce n'est pas la cause de ton problème premier, mais que cette erreur de syntaxe n'est là que parce que tu as suivi la suggestion de "harnis".

2.

Ensuite, ton message <4> n'indiquait même pas que tu avais lancé la commande, ni comment tu l'avais fait, ni son résultat. Il y a une différence entre dire "il n'y a pas de message d'erreur" et dire "après avoir tapé cette commande xxx et avoir validé, le programme semble s'exécuter, mais rien ne s'affiche et le système d'exploitation me redonne la main", car on peut comprendre dans le premier cas que tu as vu quelque chose et que tu estimes que ce ne sont pas des erreurs, alors que l'information utile, à nous qui ne sommes pas en face de ton écran, est toute autre et que tu l'as omise.

3.

J'ignore la raison pour laquelle la commande "fetchmail" ne renvoie rien à l'écran. Il est possible que ce soit parce que tu ne lances pas fetchmail en version "standalone" et que ce que tu lances c'est un script qui est prioritaire dans le $PATH (et qui comporte l'option --daemon ou -d).

Une fois que tu auras corrigé ton fichier fetchmailrc, localise les exécutables dénommés "fetchmail" dans ta machine et lance le bon avec son chemin complet et avec les options que j'ai citées, si tu veux faire ce test.

locate fetchmail

Si, au lieu d'avoir les messages d'erreur directement à l'écran, tu veux générer des logs en exécutant fetchmail comme daemon, vérifie que tu génères bien des logs et que fetchmail se lance avec l'option --syslog.

Mais pour déboguer, c'est mieux de ne pas s'embarasser d'un daemon, comme je te l'ai dit.

C'est toi qui vois.

Bonne chance.


Dal
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
Ton paragraphe 1 me déçoit un peu.
J'avais compris qu'il fallait écrire l'option à la fin de la ligne et pas en dessous (après quelques années sous Linux, on sait tous ce genre de choses).
Quant à "l'erreur" de la ligne 17, c'est justement le paramètre "option fetchall" que j'ai ajouté à la fin de la ligne qui se rapporte au serveur pop quime cause du soucis.

Pour le reste, si je n'avait rien à l'affichage, c'est que je lançais fetchmail en démon et pas en standalone.

Voila ce que j'obtiens comme messages quand je lances fetchmail de cette façon-là:
*********************************************************
fetchmail: 6.3.2 interroge pop3.ac-reunion.fr (protocole POP3) à mer 28 jun 2006 21:28:59 RET : récupération en cours
fetchmail: POP3< +OK service pop Rectorat de la Reunion
fetchmail: POP3> CAPA
fetchmail: POP3< +OK list follows
fetchmail: POP3< TOP
fetchmail: POP3< PIPELINING
fetchmail: POP3< UIDL
fetchmail: POP3< RESP-CODES
fetchmail: POP3< AUTH-RESP-CODE
fetchmail: POP3< SASL PLAIN
fetchmail: POP3< USER
fetchmail: POP3< .
fetchmail: POP3> USER *monutilisateur*
fetchmail: POP3< +OK Name is a valid mailbox
fetchmail: POP3> PASS *
fetchmail: POP3< -ERR [AUTH] Authentication failed
fetchmail: [AUTH] Authentication failed
fetchmail: Échec de l'autorisation sur *monutilisateur*@virtual-smtp-pop-server.ac-reunion.fr
fetchmail: POP3> QUIT
fetchmail: POP3< +OK
fetchmail: 6.3.2 interroge pop3.ac-reunion.fr (protocole POP3) à mer 28 jun 2006 21:29:04 RET : interrogation finie
fetchmail: État de la requête=3 (ECHEC DE L'AUTHENTIFICATION)
fetchmail: Effacement du fichier fetchids.
fetchmail: terminaison normale, état 0
fetchmail: Effacement du fichier fetchids.
************************************************************
Et voici mon /var/fetchmail/.fetchmailrc:

*************************************************************
#set daemon 300
set postmaster "postmaster"
set no bouncemail
set no spambounce
set properties ""
poll pop.wanadoo.fr with proto POP3
user '******' there with password '*****' is 'dawid@pentium4.localdomain' here
poll pop.wanadoo.fr with proto POP3
user '*****' there with password '******' is 'dawid@pentium4.localdomain' here
poll pop.wanadoo.fr with proto POP3
user '********' there with password '*****' is 'dawid@pentium4.localdomain' here
poll pop.wanadoo.fr with proto POP3
user '****' there with password '******' is 'dawid@pentium4.localdomain' here
poll pop.laposte.net with proto POP3
user '*******' there with password '*******' is 'dawid@pentium4.localdomain' here
poll pop3.ac-reunion.fr with proto POP3
user '******' there with password '*********' is 'dawid@pentium4.localdomain' here option fetchall
****************************************************************

Rmq :
En fait, j'ai retiré la fameuse option fetchall parce qu'elle empêche fetchmail de se lancer.

En regardant un peu tout ça, j'ai l'impression que l'authentification est rejetée sur le serveur pop3.ac-reunion.fr.
Attention : il n'y a pas de problème avec les autres serveurs (pop.wanadoo.fr ou pop.laposte.net) et surtout, kmail parvient sans problème à récupérer les messages de pop3.ac-reunion.fr.

La question serait donc : "existe-t-il une option à passer à Fetchmail pour qu'il puisse s'authentifier correctement sur le serveur pop (comme parvient à le faire kmail).
Autre question : pourquoi l'option fetchall ne marche-t-elle pas (elle ne provoque pas un message d'erreur sur ta machine ?)
Messages postés
5583
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
9 juillet 2021
942
Salut Dawid,

Désolé si j'ai blessé ton amour propre en "devinant mal", mais si je n'avais pas été réduit à deviner, celà ne serait pas arrivé. Note bien que je n'ai pas conseillé cette option (je n'utilise, personnellement, que les options de ligne de commande). Le problème de syntaxe pourrait provenir du fait que le mot clé est "options" et non pas "option",... à tester si tu le veux. L'option "fetchall" ne résoudra pas ton problème cependant, puisqu'il faut encore que tu sois authentifié avec succès pour que Fetchmail récupère les e-mails "lus" ou non sans distinction.

Pour ton problème d'authentification, ton login semble correct puisque le serveur POP indique qu'il correspond à une boite existante. Si le mot de passe est lui aussi correct (à vérifier, bien sûr), le problème peut provenir de la méthode d'authentification.

Le serveur POP distant semble indiquer qu'il supporte SASL et PLAIN (du moins, c'est ce qu'il annonce), par défaut Fetchmail devrait essayer d'utiliser SASL. Il est possible que le problème se situe au stade de négociation SASL.

Essaye de lancer fetchmail avec l'option "--auth password" pour voir si celà change quelque chose.


Dal
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
Eh, il ne faut pas s'énerver ! On peut essayer de s'entraider dans la bonne humeur !

Depuis le début Dal, tu m'as servi du "Si tu avais regardé la page de manuel, tu ne poserais pas cette question" ou du "Copies les ici comme je te le demande au lieu de nous déclarer "je n'ai aucun message d'erreur" ".
Et c'est quoi ton " si je n'avais pas été réduit à deviner, celà ne serait pas arrivé " ou ton "Désolé si j'ai blessé ton amour propre en "devinant mal" " ???

C'est pas un peu "too much" tout ça ?
Je te les ai données les infos. Mais pourquoi cette fixation sur le "deviner" ?
Je n'en ai aucune idée.

En tous cas, un grand merci à "Harnis" pour son idée de rajouter l'option fetchall.
La syntaxe n'était pas bonne mais il a deviné juste.

Tout fonctionne parfaitement lorsque que rajoute le simple mot fetchall (pas option fetchall ni options fetchall) à la fin de la ligne user 'moncompteutilisateur1' there with password 'monmdp1' is 'dawid@pentium4.localdomain' here.
Messages postés
5583
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
9 juillet 2021
942
Salut Dawid,

Les mots clés dans le fichier .fetchmailrc ne sont là que dans un but cosmétique, pour que la ligne semble avoir un sens en langage naturel. En réalité, ils sont ignorés par Fetchmail (si on utilise les bons mots clé). Qu'ils soient là ou non, ne fait aucune différence pour lui.

Sur la forme, je trouve dommage que tu ne te remettes pas en question une seconde. Pour qu'il y ait "entraide", il faut que l'aide soit réciproque. Relis ce fil et médite un instant. Je n'épiloguerai plus sur ce sujet, que je considère épuisé.

Sur le fond, ton problème est résolu, et j'en suis ravi pour toi.

Félicitations !

Pour mon information personnelle, j'aimerai bien qu'une âme charitable se penche sur ce cas et nous explique comment le fait de passer un paramètre fetchall, qui sert simplement à dire à Fetchmail de récupérer les e-mails qu'ils soient déjà lus ou pas, peut permettre de résoudre ce qui semble être un problème d'authentification selon la trace POP reproduite en <9>.

Voilà ce que dit ma page de manuel sur le sujet :
       -a | --all
              (Keyword:  fetchall)  Retrieve  both old (seen) and new messages
              from the mailserver.  The default is to fetch only messages  the
              server has not marked seen.  Under POP3, this option also forces
              the use of RETR rather  than  TOP.   Note  that  POP2  retrieval
              behaves  as  though  --all  is  always on (see RETRIEVAL FAILURE
              MODES below) and this option does not work with ETRN or ODMR.

Cette option serait utile après avoir fait usage de -k, ou après un plantage pour récupérer des e-mails restés sur la boite POP ou simplement pour être sûr de bien vider la boite intégralement.

Sinon, ce n'est pas grave.

Bonne continuation :)


Dal
Messages postés
432
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
24 décembre 2011
62
Dommage que nous ayons perdu notre temps et notre énergie à nous disputer inutilement.
On est en face d'un problème de communication : je ne comprends même pas ce que tu veux dire quand tu parles de se remettre en question (crois-moi, j'en suis aussi réduit à deviner).
En tous cas, comme tu le dis, on peut considérer que le sujet est épuisé.

Le plus important est cette histoire de Fetchmail.
Je te remercie aussi de t'être intéressé au sujet et d'avoir proposé quelques pistes.

C'est pas parce que tu ne m'as pas livré la solution "clés en main" que tu ne m'as pas aidé à trouver.
En fait, j'ai trouvé la solution-qui-marche comme ça :
1°) En essayant l'idée de "Harnis".
2°) Ça n'as pas marché, et j'étais près à tout laisser tomber et quand tu m'as dit qu'il y avait une faute sur "option" (le s manquant). C'est grâce à ça que je n'ai pas abandonné la piste.
3°) Pendant qu'on polémiquait sur le sens du mot "deviner", j'ai utilisé mon ami Google et je suis tombé sur ce site : https://linuxfr.org/forums/linux-debutant/posts/comment-vider-une-bal-pop3-avec-fetchmail
Ça m'a encouragé à rester sur l'idée de l'option fetchall.
4°) J'ai remarqué qu'àprès le here (dans le .fetchmailrc), il y avait directement le mot fetchall, sans le mot "options".

C'est comme ça que j'ai trouvé le moyen de relever correctement les messages de ma boite de messagerie.

Il est vrai que j'ai procédé comme un Windozien qui clique partout jusqu'à trouver par hasard la petite case à cocher qui résoud son problème.
Etant sous Linux, je n'ai pas cliqué bêtement, mais je tapé tout aussi bêtement des options sans chercher vraiment à savoir tout leur sens.

J'ai l'impression que tu n'as pas la même approche et que tu cherches tout comprendre avant d'appliquer.
Moi, ma démarche est inverse : j'essaie d'avoir un résultat "tout de suite" et plus tard, j'essaie de comprendre en analysant ce que j'ai fait et en répétant éventuellement la procédure.

Je pense pouvoir deviner (et oui encore une fois) que tu es plus expérimenté que moi. Par exemple, la notion de négociation SASL m'était totalement inconnue avant que tu m'en parles.
Tu es à un stade où tu peux aborder l'étude de Linux de façon plus profonde (tu t'intéresses aux protocoles qui s'exécutent, chose que je ne fais pas).
Moi, j'en suis toujours au stade où quand ça marche, je suis content, peu importe comment.
mais j'évolue : avant, j'étais sous Windows et je me contentais de cliquer.
Après je suis passé sous Mandrake et j'ai beaucoup aprécié les outils maison qui configurent tout sans que j'aie à mettre trop souvent la main dans le cambouis.
Je suis resté 3 ans sous Mandrake (puis Mandriva) mais en essayant toujours de privilégier les procédures standard par rapport à celles qui n'existent que sous Mandriva.
Divers problèmes (dont ceux de compilation) m'ont incité à changer de distribution.
Maintenant, avec la Gentoo, je vais plus dans les fichiers de configuration, je n'ai plus peur du ./configure, make, make install et je compile mon noyau (plusieurs fois par semaine si nécessaire).
Cependant, j'ai encore beaucoup de chemin à faire avant d'en arriver à ta façon de procéder.

L'entraide au sens que tu la conçoit n'est donc pas encore possible entre nous.
Je te remercie pour ton aide, mais je regrette de ne pas pouvoir te rendre la pareille.
Je ne peux pour l'instant aider que ceux qui ne s'intéressent qu'au "commentonfaitpourqueçamarche" mais pas encore à l'ultime "commentçamarche".

Bonne continuation à toi aussi.