Sauvegarde automatique avec le backup FTP d’un serveur kimsufi

Ce tutoriel explique comment automatiser une tâche de sauvegarde de répertoires spécifique d’un serveur kimsufi sur le backup FTP d’OVH. Le tutoriel est conçu pour une distribution Ubuntu server 12.04 LTS et fortement inspiré par celui-ci.

L’automatisation de la tâche de sauvegarde utilise le package backup-manager disponible dans les dépôts Ubuntu :

sudo apt-get install backup-manager

Dans un premier temps, vous pouvez laisser les champs remplis tels quels ; vous relancez une configuration plus complète avec :

sudo dpkg-reconfigure backup-manager

Les questions suivantes sont posées :

  • Please enter the name of the directory where backup manager will store the generated archives : entrer ici le dossier de stockage sur votre serveur, par exemple /home/save. N’oubliez pas de créer le répertoire correspondant et d’en interdire l’accès en lecture à tout autre personne que le propriétaire (root) :
    sudo mkdir /home/save
    chmod o-rxw /home/save
  • owner user of the repository : root
  • owner group of the repository : root
  • storage format : tar.gz (ou tout autre format que vous pourriez préférer pour la compression des archives)
  • CRON frequency : weekly (si une sauvegarde hebdomadaire est suffisante ; sinon, daily pour une sauvegarde journalière)
  • follow simulink : no (cette option permet de conserver les liens symboliques dans les archives ; si vous souhaitez effectivement conserver les liens symboliques, choisissez yes)
  • archive name format : short (si vous préférez un nommage complet, choisissez long)
  • age of kept archives : 10 (c’est le nombre de jours durant lesquels les archives seront conservées)
  • directories to archive : entrez ici la liste des dossiers/fichiers que vous souhaitez archiver en les séparant par un espace ; par exemple /home/moi /etc/postfix /etc/hosts
  • directories to skip in archives : /home/save (pour ne pas sauvegarder le répertoire d’archives lui-même
  • encrypt with gpg : les archives peuvent être cryptées avec une clé GnuPG (voir ce post pour de plus amples informations). Si vous souhaitez crypter les données sauvegardées, choisissez yes ; sinon, no
  • enable backup-manager's uploading system? : cette option permet de transférer les fichiers sauvegardés sur l’espace backup FTP fourni par OVH avec les serveurs kimsufi. Répondre yes
  • transfer-mode : choisir ftp
  • remote host list : entrer l’adresse du backup FTP de votre compte OVH ; celle-ci est du type ftpback-.... On la trouve en activant le backup FTP dans le manager OVH : une fois connecté à son manager, choisir dans le menu de gauche “Service” puis au centre “Backup FTP” ; après activation, le login et le mot de passe ainsi que l’adresse du serveur sont envoyés par email (voir aussi ce post)
  • remote host user : votre nom d’utilisateur pour la connexion FTP est également fourni dans le manager. Elle est du type ....kimsufi.com
  • remote host password : votre mot de passe pour la connexion FTP
  • remote host directory : tapez / à moins que vous ne souhaitiez transférer les archives dans un sous-répertoire particulier, par exemple /sauvekimsufi
  • automatic burning : si vous souhaitez créer automatiquement une image DVD à graver ; sinon répondre no

Finalisez la configuration en éditant (en mode super-utilisateur) le fichier de configuration /etc/backup-manager.conf en vérifiant en particulier les lignes

export BM_UPLOAD_FTP_PASSIVE="false"
export BM_UPLOAD_FTP_HOSTS="ftpback-..."

Vous pouvez tester la configuration en lançant en super-utilisateur la commande

sudo backup-manager

Si vous avez programmé la sauvegarde d’un nombre important de dossiers lourds, cette commande peut prendre un moment à s’exécuter. Dans ce cas, je vous conseille l’utilisation du logiciel screen :

sudo apt-get install screen

qui permet de lancer une commande dans un terminal que vous détachez avant de quitter votre session :

screen
sudo backup-manager

La combinaison de touche Ctrl+a suivie de la touche d permet de détacher le terminal screen et la commande

screen -r

de le récupérer. Plus d’informations sur screen sur la documentation ubuntu francophone.

La tâche de sauvegarde est ensuite lancée périodiquement automatiquement grâce au fichier cron /etc/cron.weekly/backup-manager.