« 
 »

Les Sauvegardes : GMail

Bonjour les geeks, ou pas car c’est un sujet qui peut intéresser beaucoup de monde : Les Sauvegardes.

Jusqu’à  maintenant je travaillais essentiellement sur un MacBook pro et je laissais le soin à  TimeMachine de gérer mes sauvegardes.
Ma machine principale devenant une distribution linux (la batterie du Mac m’a lâchement abandonné), je réfléchis donc à  comment effectuer mes sauvegardes.
Je ferais donc une série d’article sur ce thème. Toute amélioration sera la bienvenue !

Donc premier article sur la sauvegarde de ses mails GMail. Comme beaucoup de monde j’utilise ce webmail depuis maintenant beaucoup d’années. Et comme Google a légalement le droit de supprimer purement et simplement un compte sans avertissement, je préfère effectuer des sauvegardes.
J’ai choisi comme fonctionnement le téléchargement des mails via la protocol POP et le stockage sous le format maildir.

SOMMAIRE :
1 : Configuration du compte GMail pour autoriser le POP sur tous les mails
2 : Installation des outils (logiciels)
3 : Configuration Procmail
4 : Configuration Fetchmail
5 : Script de lancement
6 : Résultats & Conclusion
A1 : Versions utilisées

1 : Configuration du compte GMail pour autoriser le POP sur tous les mails

Il faut tout d’abord autorisé le protocol POP sur votre compte mail et ce pour tous les mails. Pour cela il faut se rendre dans les paramètres du compte GMail à  l’onglet “Transfert et POP/IMAP”.
Configuration Pop Gmail
Attention à  bien sélectionner l’option pour garder les mails sur le serveur.

2 : Installation des outils (logiciels)

Rentrons maintenant dans le vif du sujet.
Les outils utilisés sont standards à  beaucoup de distribution.
Pour ma part étant sur une Fedora, l’installation se fait par la commande suivante

yum install fetchmail procmail

Pour une debian-like l’installation se fera par la commande suivante

apt-get install fetchmail procmail

Fetchmail est chargé d’aller récupérer les mails sur le serveur de Google et Procmail se charge quant à  lui du stockage au format Maildir

Ces outils utilisent en principe des fichiers de configuration situés à  la racine de votre home. Pour une sauvegarde externe plus simple, j’ai déplacé ces fichiers pour avoir dans une seul répertoire les fichiers de configurations, les logs de traitement, le script de lancement et finalement le répertoire stockant tous les mails.

Etant en manque d’inspiration j’ai créé un dossier GMail dans mon home. Je vous passe la commande pour créer un répertoire !

3 : Configuration Procmail

Maintenant on va créer le fichier de configuration pour procmail. Je l’ai nommé “procmailrc” :

VERBOSE=off
MAILDIR=$HOME/GMail/
LOGFILE=$HOME/GMail/procmaillog.log
DEFAULT=$MAILDIR/mails/

  • VERBOSE , le passer à  on peut être intéressant pour débugger
  • MAILDIR , répertoire de travail de procmail
  • LOGFILE , fichier de log
  • DEFAULT , répertoire de stockage des mails

Le répertoire défini par DEFAULT doit être créé avant de lancer le script. Donc encore un petit mkdir.
Voilà  c’est tout pour procmail.

4 : Configuration Fetchmail

Passons maintenant à  fetchmail. J’ai nommé son fichier de configuration “fetchmailrc” :

poll pop.gmail.com
protocol POP3
username 'userid@gmail.com' there with password 'password' is 'account' here
keep ssl
mda "procmail -m ~/GMail/procmailrc"

On indique ici à  fetchmail d’aller chercher les mails sur le serveur “pop.gmail.com” avec le protocol “POP3” avec le nom d’utilisateur “userid@gmail.com” avec comme mot de passe “password” et que c’est le compte local “account” de la machine. Si vous avez activer la sécurité renforcée sur votre compte Google, il vous faudra fournir ici un mot de passe spécifique pour cette application.
La dernière ligne est importante car c’est elle qui redirige vers procmail et dit à  procmail d’utiliser le fichier de configuration précédemment créer.

5 : Script de lancement

Dernière étape le script pour lancer tout ça.

#!/bin/bash
fetchmail -v -f fetchmailrc -i fetchids -L fetchmaillog.log

On indique ici à  fetchmail d’être verbeux, d’utiliser le fichier de configuration créé précédemment, de stocker les ids des mails récupérés dans le fichier fetchids et d’enregistrer ses logs dans le fichier fetchmaillog.log. Attention il faut que ce dernier fichier existe déjà  avant de lancer la commande. On fait donc un petit

touch fetchmaillog.log

Il peut être intéressant de supprimer la redirection vers le fichier de log (-L fetchmaillog.log) pour voir ce qu’il se passe, au moins les premières fois.

6 : Résultats & Conclusion

Une fois le traitement terminé, vous verrez vos mails sous l’arborescence ~/GMail/mails/new.
Chaque fichier est un mail qui peut être ouvert avec Thunderbird par exemple. Je n’ai pas encore chercher comment restaurer les mails car si le besoin venait à  se faire sentir, je pense que je songerai sérieusement à  changer de serveur de messagerie.
Si on fait attention au log de fetchmail ou que l’on compte le nombre de mails téléchargés, vous verrez qu’il n’y en aura que quelques centaines (200~500 environ). Pas d’inquiétude, c’est le fonctionnement de GMail que de limiter le nombre maximum de téléchargement par session. Il suffit donc de lancer plusieurs fois le script (ce qui peut-être réalisé via un cron) et au bout d’un moment, vous verrez qu’il ne téléchargera plus rien.

Voilà  il ne reste plus qu’à  planifier le lancement du script dans la table de Cron de l’utilisateur et vos mails seront sauvegardés automatiquement, mais ceci sera l’objet d’un article futur.


Cet article n’exploite pas toutes les possibilités des outils sus-cités. Procmail est capable de filtrer les mails sur différents champs de manière assez complexe, mais mon but de simple sauvegarde est ici rempli.

A1 : Versions utilisées

Fedora : 17
Fetchmail : 6.3.22
Procmail : 3.22

A propos de l'auteur :

Passionné d'informatique depuis mon premier Atari ...
2 commentaires sur Les Sauvegardes : GMail
    • Admin
    • Très bon article, il va falloir que je teste tout ça.

      Une question cependant, pour ceux qui sont sous Windows, il n’existe pas quelques outils permettant de faire de même ?

Laisser une réponse à Admin
Annuler

*

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Suivez nous sur Twitter Devenez fan de Place4Geek Suivez nous sur Google+ Abonnez-vous à la chaîne Place4Geek Abonnez-vous à notre flux RSS