BackupPC, un logiciel de sauvegarde automatique

I. Présentation

BackupPC a été créé par Craig Barratt et est actuellement développé par quatre développeurs bénévoles.

Voici les dates de sortie des différentes versions :

  • Première version stable : septembre 2001

    • Deuxième version beta : février 2003
    • Deuxième version stable : juin 2003
    • Troisième version beta : juillet 2006
    • Troisième version stable (que j’ai mise en place) : janvier 2007

    Les principales fonctionnalités de BackupPC

    Un des principaux avantages de BackupPC est son interface Web très complète. Il faut bien distinguer l’interface Web accessible par et pour l’administrateur et l’interface Web accessible par et pour le client :

    – Du côté de l’administrateur :
    L’administrateur, par l’intermédiaire de cette interface Web, peut gérer intégralement le serveur à distance. En effet, il a accès à la configuration complète du serveur (détaillée ci-dessous), il peut également voir tous les fichiers de logs de BackupPC (les erreurs de sauvegardes, les erreurs du serveur en lui même, …).
    Il peut également voir toutes les sauvegardes effectuées pour tous les comptes et les erreurs éventuelles.

    – Du coté du client :
    L’interface Web fournit les deux principaux services de BackupPC pour l’utilisateur :
    D’une part, il peut lancer lui même une sauvegarde à n’importe quel moment et d’autre part il peut explorer ses sauvegardes (qui ont été faites de manière automatique ou manuelle) afin de pouvoir restaurer ses données à tout moment.

    II. Fonctionnement de BackupPC

    1. Le logiciel se réveille toutes les heures. Il sonde le pool de machines spécifiées dans le fichier /etc/backuppc/host. Puis, pour chaque poste allumé, il fonctionne ainsi :
  • Interrogation de la période du Blackout, si l’hôte est dans sa période de blackout, le serveur passe à la machine suivante.
    • Sinon, il étudie la machine hôte.
      1. Pour chaque machine, BackupPC examine les dates des dernières sauvegardes effectuées:
  • Si la date de dernière sauvegarde complète a plus de trente jours, il en fait une nouvelle.

    • Sinon il regarde la date de la dernière sauvegarde incrémentielle. Si celle-ci a plus d’un jour, il lance une sauvegarde incrémentielle.

    S’il y a plus de dix-neuf sauvegardes incrémentielles, il supprime les plus anciennes de manière à ce qu’il n’en reste que dix-neuf (limitation de l’espace disque consommé).

    III. Les logiciels et protocoles de transferts utilisés

    Nous l’avons vu, BackupPC est capable de sauvegarder tout type de machines (Linux, Windows et Mac). Cependant, les techniques de transferts utilisées ne sont pas les mêmes.

    • Pour les postes Linux , nous utilisons Rsync (basé sur le protocole SSH).
      Rsync (remote synchronization, synchronisation distante) est un logiciel de synchronisation de fichiers, distribué sous licence GPL. La synchronisation est unidirectionnelle, autrement dit, elle copie les fichiers de la source en direction de la destination. (source Wikipédia)
      BackupPC utilise donc ssh pour se connecter à distance sur l’hôte à sauvegarder.

    • Pour les postes Mac et Windows , nous utilisons Samba (basé sur le protocole SMB).
      Samba est un logiciel libre sous licence GPL supportant le protocole SMB. Ce protocole est employé par Microsoft pour le partage de diverses ressources (fichiers, imprimantes, etc.) entre ordinateurs équipés de Windows. Samba permet aux systèmes Unix d’accéder aux ressources de ces systèmes et vice-versa. (source Wikipédia)
      BackupPC utilise donc le protocole SMB, natif chez Microsoft et Apple pour transférer ses données.

    VI. Téléchargements

    J’ai donc passé deux mois en stage, pour mon BTS, à mettre en place BackupPC. Je vous mets à disposition trois documents que j’ai créé durant ce stage :

  • Une notice que j’ai faite pour les utilisateurs de BackupPC, une sorte de mode d’emploi simplifié qui explique à un utilisateur comment lancer une sauvegarde ou comment lancer une restauration : Mode d’emploi de BackupPC
    • Une note que j’ai faite pour l’administrateur de BackupPC, elle décrit comment faire pour ajouter (ou supprimer) un poste à sauvegarder, quelque soit sa plateforme : Ajouter ou supprimer un utilisateur
    • Enfin je mets à disposition ma note de synthèse (ou rapport de stage) de 19 pages que j’ai du faire à la fin de mon stage. Pour les BTS IG qui veulent utiliser cette note de synthèse, pas de problème, laissez moi juste un petit commentaire afin de me dire ce que vous devez faire en stage, … 🙂 P.S. : grâce à cette note de synthèse (et au diaporama), j’ai obtenu 19,5/20 le jour de mon examen : Note de synthèse