Étant donné qu’une erreur du côté Google ou tout autre service de mails est possible, il est préférable de sauvegarder ses mails en local, on ne sais jamais….

Je voulais sauvegarder mes mails avec un seul fichier par mail. Donc sauvegarder le fichier de Thunderberd n’était pas envisageable, et il me faillait quelque chose d’automatique. Je me suis donc servi de mon Banana pi sous Debian Wheezy. Le système le plus simple étant d’utiliser le logiciel Getmail4.

Configuration de Getmail4

J’ai testé avec Gmail et OVH, cela fonctionne sans souci.

Faites quand même attention et lisez le man, Getmail4 sert à la base pour synchroniser ses mails distants et locaux. Donc une fausse manip peut également supprimer vos mails distants.

Getmail4 à l’avantage de tenir à jour un fichier de status pour savoir quels mails sont déjà synchronisés en local. Il va donc chercher les nouveaux de manière incrémentale.

Voici un exemple de fichier de configuration IMAP pour Gmail. Remplacer l’utilisateur local « localuser » par le votre :

        [retriever]
        type = SimpleIMAPSSLRetriever
        server = imap.googlemail.com
        port = 993
        username = 
        password =
        mailboxes = ("INBOX",)

        [destination]
        type = Maildir
        path = /stock/backup_mails/mails1/
        user = localuser

        [options]
        read_all = false
        delivered_to = false
        received = false
        verbose = 2
        message_log = /var/log/backup_mails/mail1.log

Créez les répertoires nécessaires et les droits associés :

mkdir -p belgotux-mails/cur belgotux-mails/new belgotux-mails/tmp
chown -R localuser belgotux-mails

Pour lancer différentes configurations en une seule commande :

/usr/bin/getmail -l -r /stock/protected-data/backup_mails/belgotux-getmail.conf -r /stock/protected-data/backup_mails/gaetan110589-getmail.conf -r /stock/protected-data/backup_mails/brogniaux.gaetan-getmail.conf -r /stock/protected-data/backup_mails/ovh-getmail.conf -g /stock/protected-data/backup_mails

Status des mails

Le status des mails déjà synchronisés est mis dans un fichier binaire type « oldmail-imap.googlemail.com-993-xxx-[Gmail].Tous les messages ». Si vous voulez relancer une synchronisation complète, il faut supprimer ce fichier en plus des archives mails de /stock/backup_mails/mails1/