Problèmes et Solutions

S'il n'y a pas de solution c'est qu'il n'y a pas de problème. (Dicton Shadok)
Avec mes remerciements à l'Université de Pau pour sa compilation des proverbes Shadoks

Exposé du problème (Linux famille Debian, Ubuntu...)

Un fichier de log reçoit des events sans raison apparente

Linux logue tous les évènements dans des fichiers rangés dans /var/log
Ces fichiers accumulent les "events" et dans cerains cas ils croissent sans raison apparente.
Il convient donc d'isoler les causes de cette croissance parasite et corriger le problème.

Cas pratique suite à installations multiples

Lors de l'installation d'une fonction par une méthode "Try and Test", des programmes sont
lancés dans l'arrière plan, (BackGround) et font appel à des fonctions qui seront supprimées
dans une prochaine itération de "Try and Test". Dans ce cas les "DAEMONS" ne trouvent
plus leur cibles ce qui provoque une erreur système.

C'est ce qui est arrivé lors de la mise en place et de l'essai de différentes versions de "sendmail".

Diagnostic

Le fichier "/var/log/mail.log" enregistre des nouvelles entrées plusieurs fois par seconde :
Jan  6 07:45:33 picolo sm-mta[2633]: r02C21ic004971: Warning: program /usr/sbin/sensible-mda unsafe: No such file or directory
Le programme /usr/sbin.sensible-mda semble ne pas exister.

Ceci est confirmé par la commande "locate sensible-mda" or ce programme qui n'existe plus est bien appelé mais par qui ?

Solution

Identification du process appelant

Dans un premier temps il faut créer de toute pièce sous "root" un script "/usr/sbin/sensible-mda" qui
a pour vocation de piéger la routine de niveau supérieur.

Ici les données issues du script sont contenues dans le fichier "/tmp/piege.log".
Le fichier "/tmp/piege.log" pointe le process appelant qui est désigné par
"Process = xxxxx" qui est suivi des informations système fournies par la commande "ps -ef"

Premiers pas vers la solution

L'arrêt des appels parasites est réalisé par un "kill xxxx" où xxxx est le numéro de process repéré par
"Process=xxxx"
Ici les process à tuer sont "30591" et "6212" (voir les 3 dernières lignes de "/usr/sbin/sensible-mda")

En fait ces process sont des process orphelins issus d'installations antérieures, il reste à vérifier que le
problème est bien résolu en scrutant la taille du fichier piège /tmp/piege.log"

Finalisation de la solution du problème

Malgré l'arrêt des process orphelins, après un délai de quelques minutes, le fichier /tmp/piege.log"
reçoit à nouveau des events. Mais cette fois "Process=xxxx" ne donne plus qu'une seule source,
c'est-à-dire "sendmail : MTA". Or ce serveur n'utilise plus la fonction "sendmail", celle-ci était restée
active malgré une désinstallation. Pour régler le problème il ne restait plus qu'à stopper le service par
la commande passée sous "root"
"service sendmail stop" qui en arrêtant le service règle les accès parasites.

RETOUR (Home page)