Outils pour utilisateurs

Outils du site

scandir échoué
scandir échoué
scandir échoué

Ceci est une ancienne révision du document !


Thunderbird et POP

De l'art et de la manière de ne pas laisser engraisser son profil.

Position du problème

Lorsque l'on utilise un MUA pour collecter ses messages avec le protocole POP3, les messages récupérés du serveur sont copiés « quelque part » sur la machine locale, pièces jointes comprises. Il se produit alors une occupation de l'espace disque, que l'on peut gérer finement pour peu que l'on ait pris conscience de la façon dont les choses se passent. Nous allons voir comment les messages sont stockés et surtout pourquoi ce que l'on croit effacé ne l'est pas…

La manip.

  1. Un serveur POP3 (Dovecot en l'occurrence, sur une Debian Lenny), va recevoir dans un premier temps trois petits messages à destination d'un utilisateur.
  2. Un MUA (Thunderbird, en l'occurence, sur une Ubuntu Jaunty), va aller lire ces messages et nous allons en profiter pour regarder dans les entrailles de l'oiseau.

Nous passons sur la configuration du serveur et aussi sur celle du MUA, pour arriver tout de suite au cœur du problème : Les trois messages sont relevés sur le serveur

Nous avons « quelque part » (suivant le système d'exploitation utilisé), un dossier créé par Thunderbird, lorsque l'on a configuré le compte POP. Le contenu en est le suivant :

-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Drafts.msf
-rw-r--r-- 1 chris chris 2,0K 2009-05-21 15:38 Inbox
-rw-r--r-- 1 chris chris 2,9K 2009-05-21 15:38 Inbox.msf
-rw------- 1 chris chris   25 2009-05-21 15:38 msgFilterRules.dat
-rw-r--r-- 1 chris chris   61 2009-05-21 15:38 popstate.dat
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Sent.msf
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Templates.msf
-rw-r--r-- 1 chris chris    0 2009-05-21 15:38 Trash
-rw-r--r-- 1 chris chris 1,5K 2009-05-21 15:38 Trash.msf

Nous allons nous intéresser ici aux deux fichiers Inbox et Trash. Ce dernier est actuellement vide, mais pas Inbox :

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000014a155113
X-Mozilla-Status: 0000
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 6374A28F03; Thu, 21 May 2009 14:52:47 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 1
Message-Id: <20090521125247.6374A28F03@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:52:47 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le premier message.

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000024a155113
X-Mozilla-Status: 0000
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 9FC7228F04; Thu, 21 May 2009 14:54:00 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 2
Message-Id: <20090521125400.9FC7228F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:00 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le second message.

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000034a155113
X-Mozilla-Status: 0000
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id E5CB528F04; Thu, 21 May 2009 14:54:19 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 3
Message-Id: <20090521125419.E5CB528F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:19 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le troisième message.

Nous trouvons dans cet unique fichier le texte des trois messages, à la suite l'un de l'autre. Comment Thunderbird s'y retrouve ? Là n'est pas la question. Inbox.msf est là pour ça.

Lecture puis effacement du message 2

Avec notre Thunderbird, nous lisons, puis effaçons le message 2 : Le message a été lu, puis effacé Il nous reste de visibles les messages 1 et 3. Nous pouvons nous attendre à retrouver le message 2 dans la poubelle, donc dans Trash :

-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Drafts.msf
-rw-r--r-- 1 chris chris 2,0K 2009-05-21 15:38 Inbox
-rw-r--r-- 1 chris chris 3,5K 2009-05-21 15:38 Inbox.msf
-rw------- 1 chris chris   25 2009-05-21 15:38 msgFilterRules.dat
-rw-r--r-- 1 chris chris   61 2009-05-21 15:38 popstate.dat
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Sent.msf
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Templates.msf
-rw-r--r-- 1 chris chris  671 2009-05-21 15:38 Trash
-rw-r--r-- 1 chris chris 1,9K 2009-05-21 15:38 Trash.msf

Effectivement, Trash n'est plus vide (671 octets) :

$ cat Trash
From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000024a155113
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 9FC7228F04; Thu, 21 May 2009 14:54:00 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 2
Message-Id: <20090521125400.9FC7228F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:00 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le second message.

Mais il n'a pas échappé à notre œuil de lynx que la taille de Inbox n'a pas diminué pour autant : toujours 2Ko !

$ cat Inbox
From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000014a155113
X-Mozilla-Status: 0000
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: 
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 6374A28F03; Thu, 21 May 2009 14:52:47 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 1
Message-Id: <20090521125247.6374A28F03@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:52:47 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le premier message.

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000024a155113
X-Mozilla-Status: 0009
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: 
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 9FC7228F04; Thu, 21 May 2009 14:54:00 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 2
Message-Id: <20090521125400.9FC7228F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:00 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le second message.

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000034a155113
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: 
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id E5CB528F04; Thu, 21 May 2009 14:54:19 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 3
Message-Id: <20090521125419.E5CB528F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:19 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le troisième message.

Moralité

Le fait d'effacer le message s'est traduit par une augmentation de l'espace disque utilisé !

Vidage de la poubelle

Si nous vidons la poubelle, le fichier Trash sera purgé et reviendra à une taille nulle, mais Inbox reste toujours inchangé :

-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Drafts.msf
-rw-r--r-- 1 chris chris 2,0K 2009-05-21 15:38 Inbox
-rw-r--r-- 1 chris chris 3,5K 2009-05-21 15:38 Inbox.msf
-rw------- 1 chris chris   25 2009-05-21 15:38 msgFilterRules.dat
-rw-r--r-- 1 chris chris   61 2009-05-21 15:38 popstate.dat
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Sent.msf
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Templates.msf
-rw------- 1 chris chris    0 2009-05-21 15:38 Trash
-rw-r--r-- 1 chris chris 1,6K 2009-05-21 15:38 Trash.msf

Notez qu'au passage, Inbox.msf a un tout petit peu grossi. C'est normal, il contient maintenant plus d'informations sur la façon de gérer Inbox.

Moralité

Nous avons lu un message, nous l'avons détruit, nous avons vidé la corbeille. Pourtant, nous n'avons rien gagné en espace disque !

Il vous faut purger

Il y a tout de même moyen de récupérer l'espace perdu dans Inbox, par ces messages détruits mais qui s'accrochent : Compactage du dossier Un clic du bouton droit sur le « Courrier entrant » (qui n'est autre, vous l'avez compris, que le fichier Inbox, dont le contenu est affiché de façon intelligente grâce aux informations contenues dans Inbox.msf) permet d'accéder à la fonction « Compacter ». Le résultat est sans appel :

-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Drafts.msf
-rw------- 1 chris chris 1,4K 2009-05-21 15:38 Inbox
-rw-r--r-- 1 chris chris 2,4K 2009-05-21 15:38 Inbox.msf
-rw------- 1 chris chris   25 2009-05-21 15:38 msgFilterRules.dat
-rw-r--r-- 1 chris chris   61 2009-05-21 15:38 popstate.dat
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Sent.msf
-rw-r--r-- 1 chris chris 1,1K 2009-05-21 15:38 Templates.msf
-rw------- 1 chris chris    0 2009-05-21 15:38 Trash
-rw-r--r-- 1 chris chris 1,4K 2009-05-21 15:38 Trash.msf

Inbox a perdu les 600 octets du message lu et effacé. Vérifions :

$ cat Inbox
From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000014a155113
X-Mozilla-Status: 0000
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id 6374A28F03; Thu, 21 May 2009 14:52:47 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 1
Message-Id: <20090521125247.6374A28F03@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:52:47 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le premier message.

From - Thu May 21 15:03:16 2009
X-Account-Key: account2
X-UIDL: 000000034a155113
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <root@essaivirt.maison.mrs>
X-Original-To: chris
Delivered-To: chris@essaivirt.maison.mrs
Received: by essaivirt.maison.mrs (Postfix, from userid 0)
	id E5CB528F04; Thu, 21 May 2009 14:54:19 +0200 (CEST)
To: chris@essaivirt.maison.mrs
Subject: message 3
Message-Id: <20090521125419.E5CB528F04@essaivirt.maison.mrs>
Date: Thu, 21 May 2009 14:54:19 +0200 (CEST)
From: root@essaivirt.maison.mrs (root)

Ceci est le troisième message.

Il n'y a effectivement plus aucune trace du message 2.

Moralité

Il faut penser à compacter régulièrement les dossiers. La poubelle, ce n'est pas nécessaire. Mais les autres dossiers, il faut les gérer de la même manière, y compris ceux que vous avez pu créer vous-même pour classer votre courrier.

Accessoirement, tant qu'il n'y a pas eu de compactage, il y a toujours moyen de bidouiller quelque chose pour récupérer un message détruit, même une fois la poubelle vidée.

La pièce jointe

Nous avons tous dans nos connaissances des bons vivants qui ne résistent pas au plaisir de nous envoyer des messages avec une pièce jointe, bien propriétaire, bien grosse, bien lourde et (quelquefois) bien drôle.

SMTP ne sait transporter que du texte, ne l'oublions pas. Pourtant, la pièce jointe peut être une vidéo avec des images et du son, mais sans texte. MIME et les encodages type « base-64 » permettent ce prodige. Voyons ce que ça donne, mais avec une simple image jpeg. Le processus serait identique avec toute pièce jointe (jpg, png, bmp, gif (animé), wmv, mpg, avi et toutes les autres formes qui ne sont pas du simple texte).

Je m'envoie un message typique, avec une image typique. La seule différence avec le cas réel, c'est que plus la pièce jointe est drôle, plus la liste des destinataires est longe et visible. Sisi, elle est drôle !Ici l'image est vraiment très drôle, mais la liste des destinataires a volontairement été écourtée.

Ce qui est intéressant dans l'histoire, c'est ce qu'il se passe au niveau du MUA du destinataire :

: Dernière modification le: 21/05/2009 à 14:46 par prof