Sauvegarde des mails avec Offlineimap

L’ IMAP c’est bien (syn­chro­ni­sa­tion des mes­sa­ges envoyés et des dos­siers entre les dif­fé­rents clients mails), mais les mails res­tent sur le ser­veur. Pour se met­tre à l’abri d’un pro­blème sur le ser­veur (comme celui qui a pro­vo­qué la perte des mails pour cer­tains uti­li­sa­teurs de Free), il est donc néces­saire de faire des sau­ve­gar­des. Pour cela, une solu­tion est d’uti­li­ser Offli­nei­map.

Offli­nei­map per­met de syn­chro­ni­ser un ser­veur IMAP et une boîte au for­mat Mail­dir. La syn­chro­ni­sa­tion signi­fie qu’il est pos­si­ble de modi­fier les mails loca­le­ment (avec Mutt par exem­ple) et les ren­voyer sur le ser­veur. Après l’avoir ins­tallé (un coup d’apt-get, yum ou pac­man), on trouve des exem­ples de con­fi­gu­ra­tion mini­male et détaillé dans /usr/share/offlineimap/ pour Archli­nux, /usr/share/doc/offlineimap/ pour Debian. Voici un exem­ple de con­fi­gu­ra­tion avec deux comp­tes (free et gmail):

[gene­ral]
accounts = free,gmail

ui = Cur­ses.Blin­ken­lights        # inte­rac­tif et en cou­leur, mais bug d'affi­chage
#ui = TTY.TTYUI                     # inte­rac­tif sim­ple
#ui = Nonin­te­rac­tive.Basic, Nonin­te­rac­tive.Quiet # pour les tâches cron

[Account free]
local­re­po­si­tory = free_local
remo­te­re­po­si­tory = free_remote

[Repo­si­tory free_local]
type = Mail­dir
local­fol­ders = ~/Mail/free.fr

[Repo­si­tory free_remote]
type = IMAP
# ssl = yes # pas de ssl chez Free ...
remo­te­host = imap.free.fr
remo­teu­ser = xxxxxxxxx

[Account gmail]
local­re­po­si­tory = gmail_local
remo­te­re­po­si­tory = gmail_remote

[Repo­si­tory gmail_local]
type = Mail­dir
local­fol­ders = ~/Mail/gmail.com
sub­scri­be­donly = no

[Repo­si­tory gmail_remote]
type = Gmail
remo­teu­ser = xxxxxxxxxx@g­mail.com
real­de­lete = no
fol­der­fil­ter = lambda fol­der­name: fol­der­name not in [ '[Gmail]/All Mail',
                                                      '[Gmail]/Star­red',
                                                      '[Gmail]/Spam']

Quel­ques remar­ques:

  • l’inter­face Curses.Blinkenlights souf­fre d’un bug qui pète l’affi­chage du ter­mi­nal quand Offli­nei­map rend la main. Il suf­fit de taper reset (même si rien ne s’affi­che) ou de lan­cer Offli­nei­map avec la com­mande offlineimap ; reset
  • il y a un type de compte exprès pour Gmail
  • il est pos­si­ble de met­tre les mots de passe dans ce fichier de con­fig, si on veut auto­ma­ti­ser les backups avec une tâche cron par exem­ple, mais dans ce cas il vaut mieux modi­fier les droits du fichier pour le ren­dre inac­ces­si­ble aux autres uti­li­sa­teurs du PC (chmod 600 .offlineimaprc).
  • pour Gmail, j’ai mis un fil­tre (folderfilter) pour ne pas récu­pé­rer les mes­sa­ges avec les labels All Mail (pour évi­ter de télé­char­ger les mails en dou­ble, tous mes mails ayant déjà un label), Star­red et Spam.
  • pour véri­fier que tout a bien fonc­tioné, on peut ouvrir une boite mail avec mutt: mutt -f ~/Mail/gmail.com/INBOX
Vus : 593
Publié par Saïmon : 88