blog-image

Les sauvegardes pour MytinyDC - BackupPC

  • dHENRY
  • 19/03/2019
  • (Durée de lecture : 4 mn)

J’utilise BackupPC depuis de nombreuses années. Certes l’interface de gestion est d’un autre temps, mais ne nous arrêtons pas à cela… Ce choix reste d’actualité car très simple à mettre en œuvre, pas de client à installer, tout se fait par des accès SSH et Rsync. Le nombre de fonctionnalités est élevé, et gèré au travers d’une interface web. Possibilité de délégation de gestion par compte/mot de passe. Le système d’alerte prévient quand un serveur n’a pas pu être sauvegardé, vous pouvez ordonner des opérations pré et/ou post sauvegarde. Du fait qu’il n’y ait pas besoin de client, son intégration dans une installation automatique par bootp est très simple, il suffit juste de pré-charger la clé d’authentification SSH sur le nouveau serveur. BackupPC dispose d’un processus d’optimisation de l’espace de stockage. Quand vous sauvegardez, par exemple, 2 unités dont le système est quasiment identique, BackupPC ne va conserver qu’une seule copie des fichiers communs et réduire ainsi considérablement l’espace de stockage, surtout quand le parc est très homogène.

Installation du serveur

Installer les paquets nécessaires, sur un des serveurs du Datacenter :

apt install backppc par2 rsync

Créer une clé SSH pour l’utilisateur backuppc :

su - backuppc
ssh-keygen

Les données de sauvegardes des serveurs clients sont stockées dans le répertoire “/var/lib/backuppc”. Je vous conseille de monter un système de fichier indépendant (carte SD,…) de type XFS. Choisir le type XFS évite de d’être confronté au problème du nombre d’inodes utilisés. Ce répertoire va comporter une multitude de fichiers de petites taille. XFS génére les inodes nécessaire dynamiquement, contrairement à ext4.

# stop backuppc
systemctl stop backuppc
#Copie du système initialisé de l'architecture backuppc
tar cvf /root/backuppc-init.tgz /var/lib/backuppc_**
# suppression du système initialisé de l'architecture backuppc
rm -r /var/lib/backuppc/*

Préparer votre Filesystem indépendant, par exemple une carte SD avec le type XFS. Ajouter le au fichier /etc/fstab :

[device ou UUID] /var/lib/backuppc xfs defaults 0 0

montage du nouveau FS

mount -a

Vérifier que la carte SD soit bien montée sur /var/lib/backuppc

# Réinstallation du système initialisé de l'architecture backuppc
cd /;tar xvf /root/backuppc-init.tgz
# suppression de la sauvegarde
rm /root/backuppc-init.tgz

Installation des clients

Il n’y a pas de client backuppc, tout se déroule au travers d’un canal SSH, vérifiez seulement que le paquet rsync est installé :

apt install rsync

Copiez la clé id_rsa.pub du serveur backuppc dans le fichier /root/.ssh/authorized_keys

Accès au serveur

Utilisez votre navigateur, puis tapez l’url d’accès au service Web de Backuppc : http://[adresse IP ou Fqdn]/backuppc
Si vous obtenez cette boîte de dialogue (download Bin file), ajoutez “/index.cgi” à la fin de l’url, je n’ai pas trouvé d’explications… : http://[adresse IP ou Fqdn]/backuppc/index.cgi

Vous devrez renseigner le compte (backuppc) et le mot de passe d’accès, qui vous a été donné lors de l’installation du service.

Paramétrage du serveur

Les sauvegardes s’effectuent par une liaison de type SSH. La première connexion à un serveur via ce protocole nécessite d’accepter la “fingerprint” du serveur auquel on se connecte. Le problème va se produire lorsque le service backuppc, va effectuer les premières sauvegardes.
Le commande de backup, enregistrée dans les paramètres du service, nécessite une modification :

Configuration de la méthode de sauvegarde avec rsync et une liaison SSH

Cliquer sur le menu “Edit Config”, onglet “Xfer”, et remplacez le contenu des zones “RsyncClientCmd” et “RsyncClientRestoreCmd” par :

$sshPath  -o StrictHostKeyChecking=no -q -x -l root $host $rsyncPath $argList+

Cliquez sur le bouton “Save” en haut de la page pour appliquer ces modifications

Cette modification évite d’obtenir l’erreur (log backuppc) : “Unable to read 4 bytes”. La solution alternative mais plus fastidueuse, consiste à se connecter à partir du compte “backuppc”, à chacun des serveurs à sauvegarder et d’accepter la “fingerprint”.

Lors de cette opération, si il apparaît le message : “ParPath must be a valid executable path”, installer le paquet “par2” :

apt install par

Exclusions de fichiers

Les exclusion peuvent être gérées d’une manière générale, par le menu “Edit Config” du menu principal, ou, cas par cas : Sélectionnez un serveur, puis cliquer sur le menu “Edit Config” de sa zone. Sélectionnez l’onglet “Xfer
Ajouter des paramètres dans la zone “RsyncArgs”, un par exclusion, comme suit : –exclude=[Chemin absolu du répertoire ou du fichier à exclure]

Cliquez sur le bouton “Save” pour enregistrer les modifications.

Changement du mot de passe d’accès à l’interface web

Ouvrir un console “root” sur le serveur Backuppc, puis :

cd /etc/backuppc
htpasswd ./htpasswd backuppc
# Renseigner et confimer le nouveau de passe, le changement est immédiatement effectif.

Licence de ce document : Creative Commons (CC BY-NC-ND 4.0)

CETTE DOCUMENTATION EST LIVRÉE “EN L’ÉTAT”, SANS GARANTIE D’AUCUNE SORTE ET DISTRIBUÉE DANS UN BUT ÉDUCATIF EXCLUSIVEMENT. L’AUTEUR, CONTRIBUTEURS DE CETTE DOCUMENTATION OU ©MYTINYDC.COM NE SAURAIENT EN AUCUN CAS ÊTRE TENUS RESPONSABLES DES DOMMAGES DIRECTS OU INDIRECTS POUVANT RÉSULTER DE L’APPLICATION DES PROCÉDURES MISES EN ŒUVRE DANS CETTE DOCUMENTATION, OU DE LA MAUVAISE INTERPRÉTATION DE CE DOCUMENT.