Retour

Les sauvegardes

Généralités sur la sauvegarde

La sauvegarde[1] consiste à dupliquer des données stockées dans le Système Informatique (SI) de l'entité, dans le but de les mettre en sécurité.

Cette mise en sécurité a pour but de répondre à deux éventualités de restauration[2] :

  • la restauration de tout ou d'une partie du SI, suite à une dégradation importante ou à une destruction ;

  • la restauration de quelques fichiers, suite à une corruption ou une destruction limitée de données.

On distingue trois types de sauvegardes :

  • la sauvegarde totale ;
  • la sauvegarde différentielle ;
  • la sauvegarde incrémentale.

La sauvegarde peut être :

  • réalisée localement ;

  • sur un média (serveur, disque, bande, CD-ROM) ;

  • hébergé dans le SI (Système Informatique) à des fins de restauration rapide ;

  • archivée  ;

  • externalisée.

Sauvegarde totale

Une sauvegarde totale ou complète, correspond à la copie intégrale d'un contenu à un instant T, sans prendre en compte l'historique.

Coûteuse en temps et en espace, cette sauvegarde reste malgré tout la plus fiable, puisqu'elle assure à elle seule l'intégrité de l'ensemble des données sauvegardées.

Il n'est pas judicieux de ne pratiquer que ce type de sauvegarde, car l'ensemble des données n'est jamais totalement modifié entre deux sauvegardes.

Il existe deux autres méthodes qui procèdent à la sauvegarde des seules données modifiées et/ou ajoutées entre deux sauvegardes totales :

  • la sauvegarde incrémentale ;

  • la sauvegarde différentielle.

Sauvegarde incrémentale

Une sauvegarde incrémentale réalise une copie des fichiers créés ou modifiés depuis la dernière sauvegarde quel que soit son type (complète, différentielle ou incrémentale).

Une sauvegarde totale est réalisée le jour T. Le jour T+1, la sauvegarde incrémentale est réalisée par référence à la sauvegarde précédente, donc la sauvegarde T. Le jour T+2, la sauvegarde incrémentale est réalisée par référence à la sauvegarde précédente, à savoir T+1. Et ainsi de suite.

La restauration d'un système complet à un jour donné (par ex : au jour T+3) se fait en appliquant la dernière sauvegarde complète (jour T), ainsi que toutes les sauvegardes incrémentales jusqu'au jour cible, à savoir T+1, T+2 et T+3.

Lorsqu'il s'agit de la restauration d'un fichier ou d'un répertoire qui a été sauvegardé à la date T+3 (T étant le jour de la sauvegarde totale de référence), seule la sauvegarde incrémentale du jour T+3 est nécessaire.

Sauvegarde différentielle

Une sauvegarde différentielle réalise une copie des fichiers crées ou modifiés, en se basant sur les différences constatées avec la dernière sauvegarde totale (quelles que soient les sauvegardes intermédiaires).

Attention

La notion de sauvegarde différentielle peut varier suivant la solution de sauvegarde utilisée.

Cette présentation est fidèle à l'outil de sauvegarde choisi par EOLE.

Des outils de sauvegarde

Les systèmes GNU/Linux embarquent depuis toujours des outils unitaires d'archivage qui permettent de réaliser des embryons de stratégie de sauvegarde.

Ainsi des outils tels que la commande tar permettent de créer des archives sur des médias locaux (disques, ou lecteurs de bandes).

Via des scripts se basant sur les dates de modifications, il est possible d'implémenter les méthodes de sauvegarde détaillées dans les paragraphes précédents.

Des outils plus complexes, et souvent propriétaires, ont été développés depuis, pour faciliter la création de ces sauvegardes (gestion du contenu à sauvegarder), mais aussi pour faciliter la gestion du calendrier de sauvegarde (programmation des tâches et des successions de sauvegardes).

Enfin, la plupart de ces outils intègrent la gestion de la restauration, avec la possibilité de choisir la date cible à restaurer.

Les solutions logicielles les plus connus sont :

La sauvegarde EOLE

À partir d’EOLE 2.5 l'outil de sauvegarde utilisé est l’application libre Bareos.

Backup Archiving REcovery Open Sourced est un dérivé (fork[3]) de l'outil de sauvegarde Bacula : http://www.bareos.org

Bareos permet de sauvegarder :

  • des fichiers et des dossiers

Bareos permet de sauvegarder des données (indifféremment sur des disques locaux ou distants, des bandes magnétiques), de gérer un nombre important et non limité de clients, et évidemment de restaurer facilement les sauvegardes.

Bareos supporte, entre autres, la possibilité de faire des sauvegardes sur plusieurs unités de stockage si une première unité possède une capacité insuffisante.

Le vocabulaire Bareos

Bareos utilise un nombre important de ressources pour définir une sauvegarde.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-60001.3

Quelques définitions

Job

L'objet le plus élevé est la définition d'un Job, représentant une "sauvegarde" au sens Bareos du terme.

Un Job Bareos est une ressource de configuration qui définit le travail que Bareos doit effectuer pour sauvegarder ou restaurer un client particulier. Un Job consiste en l'association d'un type d'opération à effectuer (Type : backup, restore, verify, etc.), d'un niveau de sauvegarde (Level : Full, Incremental, ...), de la définition d'un ensemble de fichiers et répertoires à sauvegarder (FileSet), et d'un lieu de stockage où écrire les fichiers (Storage, Pool).

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-990008.2

Schedule

Un Job peut être immédiat, mais dans une stratégie de sauvegarde, il est généralement planifié via la ressource Schedule.

Le schedule détermine la date et l'instant où le job doit être lancé automatiquement, et le niveau (total, différentiel, incrémental...) du job en question.

Cette directive est optionnelle. Si elle est omise, le job ne pourra être exécuté que manuellement via la Console.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1010008.4

Volume

Un Volume est une unité d'archivage, usuellement une cartouche ou un fichier nommé sur disque où Bareos stocke les données pour un ou plusieurs jobs de sauvegarde. Tous les volumes Bareos ont un label unique (logiciel) écrit sur le volume par Bareos afin qu'il puisse être assuré de lire le bon volume. En principe, il ne devrait pas y avoir de confusion avec des fichiers disques, mais avec des cartouches, le risque d'erreur est plus important.

Les volumes ont certaines propriétés comme la durée de rétention des données et la possibilité d'être recyclés une fois cette durée de rétention expirée; ceci afin d'éviter de voir grossir indéfiniment l'espace disque occupé par les sauvegardes.

Pool

La ressource Pool définit l'ensemble des Volumes de stockage (cartouches ou fichiers) à la disposition de Bareos pour écrire les données. En configurant différents Pools, vous pouvez déterminer quel ensemble de volumes (ou média) reçoit les données sauvegardées.

Ceci permet, par exemple, de stocker les sauvegardes totales sur un ensemble de volumes, et les sauvegardes différentielles et incrémentales sur un autre. De même, vous pouvez assigner un ensemble de volumes à chaque machine sauvegardée.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1130008.8

FileSet

Un FileSet est une ressource qui définit les fichiers à inclure dans une sauvegarde. Il consiste en une liste de fichiers ou répertoires inclus, une liste de fichiers ou répertoires exclus et la façon dont les fichiers seront stockés (compression, chiffrement, signatures).

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1030008.5

Storage

Cette ressource définit les services de stockage que peut contacter le directeur. On y retrouve les répertoires de travail du processus, le nombre de Jobs concurrents qu'il est capable de traiter, et éventuellement, la définition des adresses IP des clients dont il accepte les connexions. Chaque Job est associé à une ressource Storage. Une ressource Storage peut être associée à plusieurs Jobs.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1120008.7

Device

Véritable destination physique de la sauvegarde, la ressource Device fait le lien entre le matériel de sauvegarde (lecteur de bandes, robots de sauvegarde, mais aussi disques locaux - internes comme externes) et la ressource Storage.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1250009.4

Catalog

La ressource Catalog précise quel catalogue utiliser pour le job courant. Actuellement, Bareos ne peut utiliser qu'un type de serveur de base de données défini lors de sa configuration : SQLite, PostgreSQL. En revanche, vous pouvez utiliser autant de catalogues que vous le souhaitez. Par exemple, vous pouvez avoir un catalogue par client, ou encore un catalogue pour les sauvegardes, un autre pour les jobs de type Verify et un troisième pour les restaurations.

Le catalogue (ressource Catalog) est une base de données utilisée pour stocker :

  • des informations sur les fichiers: la liste, les permissions, l'emplacement sur les volumes de sauvegarde, etc.

  • la définition de la configuration de Bareos.

Actuellement, trois formats de bases de données sont supportés : SQLite, et PostgreSQL.

SQLite est conseillé pour de petites installations.

Attention, l'interface web ne fonctionne qu'avec PostgreSQL.

Le catalogue est une pièce majeure de Bareos, et doit également faire partie du plan de sauvegarde.

Ce catalogue peut rapidement devenir volumineux, il faut veiller au taux d'occupation et à la performance de la base de données.

Point important, la configuration de Bareos se fait à deux niveaux:

  • les fichiers de configuration ;

  • la base de données.

Bareos lit les fichiers de configuration au démarrage, et inscrit les valeurs dans la base de données du Catalogue. C'est le Catalogue qui définit la configuration utilisée par Bareos, donc il faut préférer le résultat des commandes console aux valeurs des fichiers.

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1150008.9

Architecture de Bareos

Bareos est construit suivant une architecture distribuée :

Architecture de Bareos inspiré du dessin original de Aristedes Maniatis (documentation officielle de Bacula)
Architecture de Bareos inspiré du dessin original de Aristedes Maniatis (documentation officielle de Bacula)
  • le serveur directeur (Bareos directeur) est l'élément central, qui supervise et archive les opérations de sauvegarde et de restauration, le nom du service sur un module EOLE est bareos-director ;

  • le serveur base de données (database server) gère le catalogue dans lequel le directeur archive les opérations et l'emplacement des fichiers dans les différents volumes de sauvegarde, au format SQLite. Il se trouve sur le même serveur que le directeur sur un module EOLE ;

  • le serveur de stockage (Bareos stockage) est le serveur qui prend en charge l'écriture et la lecture des volumes de sauvegarde, le nom du service sur un module EOLE est bareos-storagedaemon ;

  • le serveur de lecture/écriture de fichiers (Bareos fichier), aussi identifié comme le client exécute les commandes de lecture/écriture des fichiers gérés par la sauvegarde sur chaque poste où il est installé, le nom du service sur un module EOLE est bareos-filedaemon ;

La communication entre chaque serveur est associée à un mot de passe. Ces différents serveurs peuvent être :

  • installés sur la même machine sans problème ;

  • présents en plusieurs exemplaires (on peut dupliquer les destinations de sauvegardes, avoir plusieurs

    directeur, etc.).

Cependant, la configuration Bareos sur un module EOLE ne permet uniquement qu’un sous-ensemble de ces combinaisons de services :

  • le directeur est toujours associé à un serveur de base de données local ;

  • le directeur est toujours associé à un client local pour assurer la sauvegarde du catalogue ;

  • le directeur peut utiliser un serveur de stockage distant ;

  • un serveur de stockage peut être associé à plusieurs directeurs ;

  • un serveur de stockage est toujours associé à un directeur local ;

  • le directeur peut prendre en charge plusieurs clients ;

  • le client peut être activé indépendamment des autres services.

Architecture de Bareos intégré à EOLE
Architecture de Bareos intégré à EOLE

Cette partie de la configuration est appelée directeur dans la suite de la documentation.

Par contre, il est possible de déporter le serveur de stockage sur un serveur disposant d'un disque de sauvegarde.

Pour résumer, 3 services liés aux sauvegardes se retrouvent sur un module EOLE :

  • bareos-dir (lié à bareos-fd)

  • bareos-fd (lié à bareos-dir)

  • bareos-sd

Truc & astuce

Plusieurs directeurs peuvent envoyer les données sur un unique serveur de stockage en établissement.

Il est également possible de copier les sauvegardes au travers d'autres protocoles réseau : rsync, samba, SSH, etc.

Configuration des sauvegardes

La configuration des sauvegardes consiste en une activation de la sauvegarde du serveur et/ou en l'activation du support de sauvegarde sur le module.

Si le support de sauvegarde est activé, un complément de configuration peut se faire :

  • par l'EAD ;

  • par l'EAD3 ;

  • en ligne de commande.

Activation et configuration de Bareos

La sauvegarde du serveur et le support de stockage de la sauvegarde sont activés par défaut sur certains modules, il peuvent être activés/désactivés dans l'onglet Services de l'interface de configuration du module.

Activation de la sauvegarde Bareos dans l'onglet Services de l'interface de configuration
Activation de la sauvegarde Bareos dans l'onglet Services de l'interface de configuration
  • L'activation du directeur de sauvegarde permet d'activer la sauvegarde sur le serveur, celle-ci peut être locale si le support de stockage est activé ou déportée à condition d'avoir un serveur sur lequel est activé le support de stockage.

    Cette fonctionnalité permet de mettre en place des sauvegardes croisées.

  • L'activation du support de stockage de la sauvegarde permet d'accueillir des sauvegardes locales ou distantes.

  • L'activation de la sauvegarde des fichiers locaux, en mode expert, permet de sauvegarder les fichiers du serveur lui-même.

  • Suite à l'activation du directeur de sauvegarde (Activer le directeur de sauvegarde à oui) l'onglet Directeur bareos apparaît dans l'interface de configuration du module. Il permet de configurer le nom du directeur et les périodes de rétention et de définir si le serveur de stockage est distant ou local.

  • Suite à l'activation du support de stockage (Activer le stockage de sauvegarde à oui) l'onglet Stockage bareos apparaît dans l'interface de configuration du module. Il permet de configurer le nom du serveur de stockage et permet également d'autoriser des directeurs à se connecter au présent stockage.

  • Suite à l'activation de la sauvegarde des fichiers locaux (Activer la sauvegarde des fichiers locaux à oui) l'onglet Clients bareos apparaît dans l'interface de configuration du module. Il permet de configurer le nom du serveur de sauvegarde des fichiers locaux.

Onglet Directeur bareos

L'onglet Directeur bareos apparaît dans l'interface de configuration du module si le directeur de sauvegarde est activé dans l'onglet Services (Activer le directeur de sauvegarde à oui) .

L'onglet permet de configurer le nom du directeur et les périodes de rétention et de définir si le serveur de stockage est distant ou local.

Le nom du directeur est une information importante, il est utilisé en interne dans le logiciel mais, surtout, il est nécessaire pour configurer un client Bareos ou pour joindre le serveur de stockage depuis un autre module.

À l'enregistrement du fichier de configuration il ne sera plus possible de modifier le nom du directeur. En effet, cette variable est utilisée dans les noms des fichiers de sauvegarde.

AttentionMigration de version EOLE

À partir d'EOLE 2.8.1, Bareos fonctionne avec PostgreSQL[6] tandis que sur les versions précédentes, il était possible de choisir entre MySQL et SQLite.

Il n'existe pas de migration de données entre ces bases.

Dans le cas d'une montée de version vers 2.8.1, il vous faudra penser à effectuer une nouvelle sauvegarde dès que possible.

En mode expert, il est possible de modifier le répertoire utilisé par défaut pour l'extraction de la base de données du catalogue. Ce changement permet éventuellement de ne pas surcharger l'espace occupé dans /var.

Le champ Mot de passe du directeur contient le mot de passe à transmettre aux applications distantes pour leur permettre de s'authentifier auprès du directeur.

Configuration des durées de rétention

Les trois types de sauvegarde, complète, différentielle, incrémentale, disposent chacune d’un pool de volumes distinct. Cela permet de paramétrer des durées de rétention[7] et des tailles pour ces volumes différents pour chaque type de sauvegarde.

La sauvegarde du catalogue est également gérée avec un pool de volume distinct. Seule la taille des volumes est paramétrable cependant.

Écran
  • 1
    Configuration du pool du catalogue

    Taille des volumes pour la sauvegarde du catalogue (taille illimitée si à 0)

  • 2
    Configuration du pool pour la sauvegarde complète

    Durée de rétention et taille des volumes pour la sauvegarde complète

  • 3
    Configuration du pool pour la sauvegarde différentielle

    Durée de rétention et taille des volumes pour la sauvegarde différentielle

  • 4
    Configuration du pool pour la sauvegarde incrémentale

    Durée de rétention et taille des volumes pour la sauvegarde incrémentale

La durée de rétention des fichiers détermine le temps de conservation avant l'écrasement.

Plus les durées de rétention sont importantes, plus l'historique sera important et plus l'espace de stockage nécessaire sera important.

L’espace alloué à un volume n’est pas recyclé (réutilisé pour une autre sauvegarde) avant que le volume ne soit complet et que les durées de rétention ne soient atteintes.

Limiter la taille des volumes est utile dans deux cas :

  • le système de fichier hébergeant les volumes impose une contrainte sur la taille des fichiers (typiquement les systèmes FAT montés via le protocole SMB, à l’origine de la contrainte de 2 Go) ;

  • on souhaite pouvoir recycler plus rapidement les volumes (de petite taille, les volumes sont associés à moins de jobs ; il faut donc moins de temps pour purger l’ensemble des jobs associés et pouvoir recycler les volumes).

Sur les serveurs avec un historique de sauvegarde conséquent, il n’est pas rare que la limite par défaut de 2 Go pour le pool du Catalogue finisse par poser problème : ce pool n’autorise qu’un volume qui doit être d’une taille suffisante pour contenir la sauvegarde du catalogue.

Exemple

Il peut être intéressant de conserver un historique long mais avec peu d'états intermédiaires.

Pour cela, voici un exemple de configuration :

  • 6 mois de sauvegardes totales ;
  • 5 semaines de sauvegardes différentielles ;
  • 10 jours de sauvegardes incrémentales.

Avec la politique de sauvegarde suivante :

  • une sauvegarde totale par mois ;
  • une sauvegarde différentielle par semaine ;
  • une sauvegarde incrémentale du lundi au vendredi.

Dans l'historique, il y aura donc une sauvegarde par jour de conservée pendant 10 jours, une sauvegarde par semaine pendant 5 semaines et une sauvegarde mensuelle pendant 6 mois.

Attention

Une modification de la durée de rétention en cours de production n'aura aucun effet sur les sauvegardes déjà effectuées, elles seront conservées et recyclées mais sur la base de l'ancienne valeur, stockée dans la base de données.

Afin de prendre en compte la nouvelle valeur pour les sauvegardes suivantes, il faut utiliser les outils Bareos pour mettre à jour la base de données :

# bconsole

*update

*2

*<numéro du pool de volumes de sauvegarde>

Une autre solution consiste à vider le support de sauvegarde ou prendre un support de sauvegarde ne contenant aucun volume et à ré-initialiser la base de données Bareos avec la commande :

# bareosregen.sh

La regénération du catalogue de bareos va écraser l'ancienne base, confirmez-vous ? [oui/non]

[non] : oui

Paramètres supplémentaires

En mode expert d'autres paramètres sont disponibles.

Type de compression et délai alloué
Type de compression et délai alloué
  • La durée maximale pour l'exécution complète d'une sauvegarde permet d'annuler le job si il n’est pas terminé avant ce délai, exprimé en secondes, en comptant à partir de l’heure programmée. Par défaut le job est limité à 86 400 secondes soit 24 heures (la valeur 0 lève cette limite de temps).

  • Plus l'algorithme de compression est efficace, moins il nécessite d'espace mais plus il alourdit la charge système et allonge la durée du processus de sauvegarde. Deux algorithmes de compression sont proposés : GZIP et LZ4.

    L'algorithme GZIP[8] permet plusieurs niveaux de compression de 1 à 9. Au delà de 6, le gain en place est faible par rapport aux niveaux immédiatement inférieurs, tandis que la durée de traitement s'allonge sensiblement.

    L'algorithme LZ4[9] offre un taux de compression moindre que le niveau de compression 6 de GZIP mais est significativement plus rapide.

Remarque

L’utilisation de l’algorithme de compression LZ4 nécessite que Bareos ait été compilé avec le support de ce dernier. Dans le cas où Bareos n’aurait pas été compilé avec celui-ci, un message d’avertissement est émis au moment de la sauvegarde et aucune compression n’est effectuée. Les modules EOLE en version supérieure ou égale à 2.7.1 bénéficient d’une version de Bareos avec le support de LZ4 activé. Pour les autres clients, l’administrateur système doit s’assurer que ce support est également activé.

  • Le champ Mot de passe du directeur contient le mot de passe à transmettre aux applications distantes pour leur permettre de s'authentifier auprès du directeur.

Configuration du stockage

Le service de stockage gérant l'écriture des volumes de sauvegardes (bareos-sd ) peut être local ou distant, il est local par défaut. Dans ce cas aucun paramètre supplémentaire n'est à configurer dans cet onglet (Directeur Bareos).

Vue de l'onglet Directeur Bareos
Vue de l'onglet Directeur Bareos

Dans le cas d'un serveur de stockage distant (Le gestionnaire du stockage est local à non), il faut configurer le nom, l'adresse IP et le mot de passe du serveur de stockage distant.

Pour autoriser des directeurs à se connecter au présent stockage des paramètres se trouvent dans l'onglet Stockage bareos.

Attention

Certaines infrastructures nécessitent une dégradation des fonctionnalités des modules EOLE comme la désactivation des mises à jour automatiques pour que la sauvegarde distante fonctionne correctement.

Le déport du service bareos-sd sur un autre serveur que bareos-dir ne permet pas de gérer correctement les verrous des tâches d'administration sur ce serveur : bareos-dir ne permet pas de signaler efficacement à bareos-sd qu'une sauvegarde est lancée et qu'il doit poser un verrou empêchant les autres tâches d'administration.

Configuration de la sauvegarde de fichiers distants

Il est possible de déclarer plusieurs clients distants pour gérer la sauvegarde des fichiers d’autres serveurs.

Cette déclaration de clients distants peut être effectuée une fois la variable Activer la sauvegarde de fichiers distants passée à oui.

La déclaration d’un client distant nécessite de fournir plusieurs informations obligatoires.

  • Identifiant du client distant : identifiant interne unique utilisé pour distinguer la configuration du client, composé de lettres non accentuées et de chiffres ;

  • Nom du client distant : le nom du service bareos-fd tel que renseigné sur le serveur distant l’hébergeant ;

  • Adresse du client distant : l’adresse IP à laquelle ce client peut être joint ;

  • Mot de passe du client distant : le mot de passe, identique à celui déclaré sur le client distant (cf. configuration d’un client indépendant).

Remarque

L’activation du service de lecture/écriture de fichiers (file server, bareos-fd) sur le serveur lui-même pour sauvegarder les fichiers locaux s’effectue dans l’onglet Services.

Onglet Stockage Bareos

L'onglet Stockage bareos apparaît dans l'interface de configuration du module si le support de stockage de sauvegarde est activé dans l'onglet Services (Activer le stockage de sauvegarde à oui).

L'onglet permet de configurer le nom du serveur de stockage et permet également d'autoriser des directeurs à se connecter au présent stockage.

Dans l'onglet Stockage bareos il est possible de choisir un nom de serveur de stockage et d'autoriser des directeurs distants à se connecter au présent serveur de stockage.

Autoriser un ou plusieurs directeurs distants à se connecter

Pour autoriser un ou plusieurs directeurs distants à se connecter il faut cliquer sur + Nom du directeur Bareos distant, le détail de l'autorisation s'affiche.

Pour ce faire il faut se munir des paramètres du directeur distant :

  • son nom ;

  • son adresse IP ;

  • son mot de passe.

Autoriser des clients Bareos distants à se connecter au directeur
Autoriser des clients Bareos distants à se connecter au directeur
Attention

Les sauvegardes sont des informations sensibles. Il ne faut pas utiliser de mot de passe facilement déductible.

Onglet Client bareos

L'onglet Clients bareos apparaît dans l'interface de configuration du module si la sauvegarde des fichiers locaux est activée (Activer la sauvegarde des fichiers locaux à oui).

L'onglet permet de configurer le nom du serveur de sauvegarde des fichiers locaux.

Le service de lecture/écriture de fichiers (file server, bareos-fd) de Bareos, autrement appelé client, ne nécessite pas de configuration dans le cas où le directeur (service director, bareos-dir) est également activé localement.

Dans le cas où on souhaite que la sauvegarde des fichiers du serveur soit gérée par un directeur distant, il est nécessaire de désactiver le service director local en passant la variable Activer le directeur de sauvegarde à non puis d’activer le service file local en passant la variable Activer la sauvegarde des fichiers locaux à oui, en mode expert, dans l’onglet Services.

À l’issue de cette manipulation, l’onglet Client Bareos est disponible.

Dans l’onglet Client Bareos, le service directeur distant est configuré au moyen de trois variables obligatoires :

  • l’adresse du directeur Bareos distant ;

  • le nom du directeur Bareos distant tel qu’il est défini dans la configuration du directeur dans l'onglet Directeur bareos ;

  • le mot de passe distant, identique à celui déclaré dans la configuration du directeur dans l'onglet Directeur bareos.

Attention

Les services Bareos partagent certaines variables de configuration et il faut veiller à la cohérence des valeurs entrées, notamment pour les noms des services et les mots de passe.

L'onglet Clients bareos apparaît dans l'interface de configuration du module si la sauvegarde des fichiers locaux est activée (Activer la sauvegarde des fichiers locaux à oui).

L'onglet permet de configurer le nom du serveur de sauvegarde des fichiers locaux.

Le service de lecture/écriture de fichiers (file server, bareos-fd) de Bareos, autrement appelé client, ne nécessite pas de configuration dans le cas où le directeur (service director, bareos-dir) est également activé localement.

Dans le cas où on souhaite que la sauvegarde des fichiers du serveur soit gérée par un directeur distant, il est nécessaire de désactiver le service director local en passant la variable Activer le directeur de sauvegarde à non puis d’activer le service file local en passant la variable Activer la sauvegarde des fichiers locaux à oui, en mode expert, dans l’onglet Services.

À l’issue de cette manipulation, l’onglet Client Bareos est disponible.

Dans l’onglet Client Bareos, le service directeur distant est configuré au moyen de trois variables obligatoires :

  • l’adresse du directeur Bareos distant ;

  • le nom du directeur Bareos distant tel qu’il est défini dans la configuration du directeur dans l'onglet Directeur bareos ;

  • le mot de passe distant, identique à celui déclaré dans la configuration du directeur dans l'onglet Directeur bareos.

Attention

Les services Bareos partagent certaines variables de configuration et il faut veiller à la cohérence des valeurs entrées, notamment pour les noms des services et les mots de passe.

Pour que les modifications soient prises en compte, une reconfiguration du module est nécessaire à l'aide de la commande reconfigure.

Configuration depuis l'EAD

Une fois le stockage Bareos activé dans l'interface de configuration du module, il faut configurer le support de sauvegarde.

Le menu Sauvegardes de l'EAD propose une interface simplifiée pour la configuration du support de sauvegarde et le paramétrage facultatif de l'envoi des rapports.

Configuration du support

Trois types de support de sauvegarde sont proposés :

  • SMB

  • Disque USB local

  • Configuration manuelle du support

Le point de montage du support est, dans les trois cas de figure : /mnt/sauvegardes

  • SMB : la sauvegarde se fait à travers un partage SMB[10].

    Il est préférable de déporter le serveur de stockage Bareos plutôt que d'utiliser le protocole SMB[10].

    Ce type de sauvegarde sera utilisé, par exemple, pour les NAS[11].

    Les informations suivantes sont demandées :

    • Nom de machine de la machine distante (n'accepte pas les majuscules) ;
    • IP de la machine distante ;
    • le nom du Partage ;
    • optionnellement le Login, le Mot de passe.
Configuration d'un support de sauvegarde distant dans l'EAD
Configuration d'un support de sauvegarde distant dans l'EAD
Attention

Les informations stockées dans les sauvegardes sont sensibles, il donc préférable de toujours authentifier l'accès aux partages contenant les données.

  • Disque USB local : la sauvegarde se fait sur un support nécessitant un montage (disque USB, disque interne, etc.), contrôlé avant chaque sauvegarde.

    Le chemin d'accès à saisir correspond au nœud du périphérique (par exemple /dev/hda1, /dev/disk/by-label/LABEL si un label est disponible sur le disque).

    Si le périphérique utilise un label

Configuration d'un support de sauvegarde USB local dans l'EAD
Configuration d'un support de sauvegarde USB local dans l'EAD
Attention

Méthode purement locale à la machine, cette méthode est donc sensible aux corruptions éventuelles du serveur.

  • Configuration manuelle du support : comme son nom l'indique elle permet à l'utilisateur de définir sa propre destination de sauvegarde via les outils Bareos. Ce choix correspond généralement à l'utilisation de lecteurs de bandes et s'intègre dans une stratégie de sauvegarde à plus grande échelle.

    Le point de montage par défaut est toujours /mnt/sauvegardes. Le montage n'est pas contrôlé.

Le pilote est dépendant du matériel, le lecteur de bande doit être configuré manuellement.

Pour information, le fichier template concerné bareossupport.conf est dans /usr/share/eole/creole/distrib/

Pour que la solution soit pérenne il est nécessaire de créer un patch EOLE[12].

Voir la documentation officielle de Bareos pour le paramétrage :

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-480004

Configuration d'un support de sauvegarde manuelle dans l'EAD
Configuration d'un support de sauvegarde manuelle dans l'EAD
Attention

Le support doit être monté sur /mnt/sauvegardes et l'utilisateur bareos doit avoir les droits en écriture :

# ls -l /mnt

# chown -R bareos:root /mnt/sauvegardes

Options de montage du support de sauvegarde

Le fichier /etc/eole/bareos.conf permet de personnaliser les options de montage du support de stockage de la sauvegarde. L'intérêt est que ce fichier ne sera pas écrasé lors de la prochaine mise à jour.

Le fichier /etc/eole/bareos.conf a une syntaxe du type fichier INI[13] : clé = valeur.

Truc & astuce

Il existe trois variables paramétrables DISTANT_LOGIN_MOUNT, DISTANT_MOUNT et USB_MOUNT :

  • la ligne de commande permettant de monter un support distant avec authentification, la valeur par défaut de DISTANT_LOGIN_MOUNT est :

    /bin/mount -t cifs -o username={0},password={1},ip={2},uid={3},noexec,nosuid,nodev,vers=3.0 //{4}/{5} {6}

  • la ligne de commande permettant de monter un support distant sans authentification, la valeur par défaut de DISTANT_MOUNT est :

    /bin/mount -t cifs -o password={0},ip={1},uid={2},noexec,nosuid,nodev,vers=3.0 //{3}/{4} {5}

  • la ligne de commande permettant de monter un support USB :

    Par défaut la valeur de la variable USB_MOUNT est :

    • /bin/mount {0} {1} -o noexec,nosuid,nodev,uid={2},umask=0077 pour les systèmes VFAT et NTFS
    • /bin/mount {0} {1} -o noexec,nosuid,nodev pour le reste.
Paramètres pour l'envoi de rapports

L'envoi de courriels est proposé si le directeur Bareos est activé sur le serveur.

EOLE offre la possibilité d'envoyer deux types de courriel :

  • les rapports d'erreurs de Bareos ;
  • les rapports de sauvegarde réussie.

Il est recommandé de définir les deux types d'envoi. Le premier type de rapport informe que la sauvegarde s'est mal déroulée, alors que le second informe qu'une sauvegarde s'est bien déroulée. Pensez à configurer correctement votre relai SMTP[14].

Truc & astuce

Il est possible de déclarer plusieurs destinataires en séparant les adresses par des virgules.

Exemple : admin@ac-dijon.fr,technicien@ac-dijon.fr

Configuration depuis l'EAD3

La configuration de la sauvegarde est une étape nécessaire pour mettre en place la sauvegarde.

Il faut configurer les trois services proposés par le support de sauvegarde. Suivant la configuration du serveur, il se peut qu’une partie ne soit pas disponible.

Le support de sauvegarde

Une fois le stockage Bareos activé dans l’interface de configuration du module, il faut configurer le support de sauvegarde.

Trois types de support de sauvegarde sont proposés :

  • manuel ;

  • USB ;

  • SMB.

Le type « aucun » veut dire que le support de sauvegarde n’est pas configuré.

Le point de montage du support est, dans les trois cas de figure : /mnt/sauvegardes/

Manuel

Comme son nom l’indique, il permet à l’utilisateur de définir sa propre destination de sauvegarde via les outils Bareos. Ce choix correspond généralement à l’utilisation de lecteurs de bandes et s’intègre dans une stratégie de sauvegarde à plus grande échelle.

Le pilote est dépendant du matériel, le lecteur de bande doit être configuré manuellement.

Pour informations, le fichier template concerné bareossupport.conf est dans /usr/share/eole/creole/distrib/

Pour que la solution soit pérenne, il est nécessaire de créer un patch EOLE.

Voir la documentation officielle de Bareos pour le paramétrage : http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-480004

Le point de montage par défaut est toujours /mnt/sauvegardes/.

Attention

Le montage n'est pas contrôlé.

Le support doit être monté sur /mnt/sauvegardes/ et l’utilisateur bareos doit avoir les droits en écriture :

# ls -l /mnt

# chown -R bareos :root /mnt/sauvegardes

USB

La sauvegarde se fait sur un support nécessitant un montage (disque USB, disque interne, etc.), contrôlé avant chaque sauvegarde.

Le chemin d’accès à saisir correspond au nœud du périphérique (par exemple /dev/hda1, /dev/disk/by-label/LABEL si un label est disponible sur le disque).

Attention

Cette méthode est purement locale à la machine, elle est donc sensible aux corruptions éventuelles du serveur.

SMB

La sauvegarde se fait à travers un partage SMB[10].

Il est préférable de déporter le serveur de stockage Bareos plutôt que d’utiliser le protocole SMB.

Ce type de sauvegarde sera utilisé, par exemple, pour les NAS[11].

Les informations suivantes sont demandées :

  • Nom de machine du serveur SMB (n’accepte pas les majuscules) ;

  • IP du serveur SMB ;

  • Nom du partage SMB ;

  • Identifiant SMB ;

  • Mot de passe SMB.

Le directeur

L’envoi de courriers électroniques est proposé si le directeur Bareos est activé sur le serveur.

EOLE offre la possibilité d’envoyer deux types de courriel :

  • les rapports d’erreurs de Bareos : informe que la sauvegarde s'est mal déroulée ;

  • les rapports de sauvegarde réussie : informe qu'une sauvegarde s'est bien déroulée.

Il est recommandé de définir les deux types d’envoi. Pensez à configurer correctement votre relais SMTP[14].

Sauvegarde des fichiers locaux

Une fois le support de sauvegarde défini, il est possible de programmer un type de sauvegarde par périodicité.

EOLE propose trois périodicités et trois types de sauvegarde pour la programmation des sauvegardes :

Périodicité

Type de sauvegarde

sauvegardes mensuelles

totale

sauvegardes hebdomadaires

totale, différentielle, incrémentale

sauvegardes quotidiennes

totale, différentielle, incrémentale

En plus des périodicités proposées, il est possible de lancer une sauvegarde immédiate de type totale, différentielle ou incrémentale.

Seules les sauvegardes totales sont possibles dans le cas de la périodicité mensuelle.

Les sauvegardes mensuelles se font la première semaine du mois.

Si une autre sauvegarde est programmée la même nuit, celle-ci sera automatiquement reportée à la semaine d'après.

Les sauvegardes se programment pour une nuit de la semaine. Une nuit va de 12h à 11h59.

Pour les sauvegardes quotidiennes, il est possible de choisir une plage de jours.

L’interface de programmation des fichiers locaux permet de définir la fréquence de sauvegarde du serveur local. Elle n’est présente que si la sauvegarde des fichiers locaux est activé dans l’interface de configuration du serveur.

Programmer les clients distants

Lorsque la sauvegarde de fichiers distants est activée dans l’interface de configuration du serveur, il est possible de définir la fréquence de sauvegarde des fichiers dans l’action « Programmer les clients distants ».

Chaque serveur distant a un bloc de configuration qui lui est propre. Voici par exemple la configuration du serveur « test » :

Fichiers complémentaires

La liste des fichiers locaux sauvegardés par l’outil de sauvegarde d’EOLE est défini dans la configuration du serveur et dépend des services utilisés. Il peut être nécessaire d’ajouter des répertoires complémentaires en cas de création des données dans un répertoire non prévu.

L’action « fichiers complémentaires » permet d’ajouter des répertoires nouveaux à sauvegarder.

Il est possible de configurer des répertoires nouveaux à sauvegarder. Si nécessaire, il est possible d’exclure un sous-répertoire dont les données ne sont pas pertinentes. Enfin, il est possible d’exclure une liste de fichier de la sauvegarde en définissant une expression rationnelle.

Il est à noter que cette action permet de configurer aussi bien les fichiers locaux que distant.

Exécuter une sauvegarde ponctuelle

L’exécution d’une sauvegarde ne peut être réalisée que lorsque l’espace de stockage de la sauvegarde est correctement configuré. La configuration de l’espace de stockage s'effectue dans l’action « Configuration de la sauvegarde ».

Cette action permet de sauvegarder les données d’un serveur. Si la sauvegarde des fichiers locaux et la sauvegarde de fichiers distant sont activées dans la configuration du serveur, il est nécessaire de choisir entre une sauvegarde local ou distante.

En cas de sauvegarde distante, la sélection du serveur distant est obligatoire.

La sauvegarde est, par défaut, exécutée immédiatement. Il est néanmoins possible de sélectionner une date et une heure différente.

Configuration depuis la ligne de commande

Il n'est pas nécessaire de passer par l'EAD pour configurer le support de sauvegarde.

L'ensemble des paramétrages peut être réalisé avec le script bareosconfig.py.

Les informations définies dans l'EAD sont modifiables en ligne de commande et inversement.

Configuration du support
  • Si le support est un partage SMB :

# bareosconfig.py -s smb --smb_machine=nom_machine --smb_ip=adresse_ip --smb_partage=nom_du_partage --smb_login=login --smb_password=mot_de_passe

  • Si le support est un disque USB local :

# bareosconfig.py -s usb --usb_path=/dev/device_usb

  • Si le support est un disque USB local avec un label :

# bareosconfig.py -s usb --usb_path=/dev/disk/by-label/LABEL

  • Si le support est à configurer manuellement :

# bareosconfig.py -s manual

Vous devez ensuite configurer le support dans le fichier template /usr/share/eole/creole/distrib/bareossupport.conf

Pour que la solution soit pérenne il est nécessaire de créer un patch EOLE[12].

Attention

nom_machine ne doit pas comporter de majuscule

Truc & astuce

Pour tester le support de sauvegarde (USB local ou SMB), il est possible d'utiliser le script bareosmount.py :

# bareosamount.py -t

Test de montage OK

Attention

En USB le numéro du périphérique dans /dev peut changer selon si un autre périphérique est connecté au serveur.

Truc & astuce

Une astuce consiste à utiliser un label pour identifier de façon plus certaine le périphérique utilisé.

Pour donner un label au périphérique :

# tune2fs -L Sauvegardes /dev/sdX

Pour configurer le support de sauvegarde sur le périphérique USB :

# bareosconfig.py -s usb --usb_path=/dev/disk/by-label/Sauvegardes

Options de montage du support de sauvegarde

Le fichier /etc/eole/bareos.conf permet de personnaliser les options de montage du support de stockage de la sauvegarde. L'intérêt est que ce fichier ne sera pas écrasé lors de la prochaine mise à jour.

Le fichier /etc/eole/bareos.conf a une syntaxe du type fichier INI[13] : clé = valeur.

Truc & astuce

Il existe trois variables paramétrables DISTANT_LOGIN_MOUNT, DISTANT_MOUNT et USB_MOUNT :

  • la ligne de commande permettant de monter un support distant avec authentification, la valeur par défaut de DISTANT_LOGIN_MOUNT est :

    /bin/mount -t cifs -o username={0},password={1},ip={2},uid={3},noexec,nosuid,nodev,vers=3.0 //{4}/{5} {6}

  • la ligne de commande permettant de monter un support distant sans authentification, la valeur par défaut de DISTANT_MOUNT est :

    /bin/mount -t cifs -o password={0},ip={1},uid={2},noexec,nosuid,nodev,vers=3.0 //{3}/{4} {5}

  • la ligne de commande permettant de monter un support USB :

    Par défaut la valeur de la variable USB_MOUNT est :

    • /bin/mount {0} {1} -o noexec,nosuid,nodev,uid={2},umask=0077 pour les systèmes VFAT et NTFS
    • /bin/mount {0} {1} -o noexec,nosuid,nodev pour le reste.
Paramètres pour l'envoi de rapports

La configuration de l'adresse courriel se fait de la façon suivante :

# bareosconfig.py -m --mail_ok=adresse_courriel --mail_error=adresse_courriel

Les paramètres --mail_ok et --mail_error ne sont pas obligatoires.

Afficher la configuration

Il est possible de lister l'ensemble des paramètres depuis la ligne de commande avec la commande bareosconfig.py :

1
# bareosconfig.py -d
2
Support : {'usb_path': '/dev/sdb1', 'support_type': 'usb'}
3
Mail : {'mail_error': [], 'mail_ok': []}
4
Programmation : 
5
	Aucun job programmé.

Programmation des sauvegardes

Une fois le support de sauvegarde défini, il est possible de programmer un type de sauvegarde par périodicité.

Cette programmation se fait soit par l'EAD soit depuis la ligne de commande.

EOLE propose trois périodicités et trois types de sauvegarde pour la programmation des sauvegardes :

Périodicité

Type de sauvegarde

sauvegardes mensuelles

totale

sauvegardes hebdomadaires

totale, différentielle, incrémentale

sauvegardes quotidiennes

totale, différentielle, incrémentale

En plus des périodicités proposées, il est possible de lancer une sauvegarde immédiate de type totale, différentielle ou incrémentale.

Seules les sauvegardes totales sont possibles dans le cas de la périodicité mensuelle.

Les sauvegardes mensuelles se font la première semaine du mois.

Si une autre sauvegarde est programmée la même nuit, celle-ci sera automatiquement reportée à la semaine d'après.

Les sauvegardes se programment pour une nuit de la semaine. Une nuit va de 12h à 11h59.

Pour les sauvegardes quotidiennes, il est possible de choisir une plage de jours.

Programmation depuis l'EAD

Le menu Sauvegardes de l'EAD propose une interface simplifiée pour programmer des sauvegardes périodiques ou pour lancer une sauvegarde immédiate.

L'interface de programmation des sauvegardes dans l'EAD
L'interface de programmation des sauvegardes dans l'EAD

Programmation depuis la ligne de commande

Pour ajouter une nouvelle programmation, il faut connaître les paramètres suivants :

  • choix de la périodicité : quotidienne → daily, hebdomadaire → weekly ou mensuelle → monthly ;
  • le type : totale → Full, différentielle → Differential ou incrémentale → Incremental ;
  • le jour de la semaine : de 1 (pour la nuit de dimanche à lundi) à 7 (pour la nuit du samedi à dimanche) ;
  • en cas de sauvegarde quotidienne, éventuellement le jour de fin : de 1 à 7 ;
  • l'heure de la sauvegarde : de 0 à 23, sachant que la nuit commence à 12h et fini à 11h le lendemain

Exemple pour ajouter une programmation de sauvegarde depuis la ligne de commande :

# bareosconfig.py -j daily --job_level=Incremental --job_day=2 --job_end_day=5 --job_hour=22

Les programmations ajoutées depuis la ligne de commande sont également visibles dans l'EAD.

Il est également possible de lancer une sauvegarde immédiate.

Il est nécessaire de choisir le type de sauvegarde totale (Full), différentielle (Differential) ou incrémentale (Incremental)).

Si aucune sauvegarde n'a été effectuée préalablement sur le serveur, la première sauvegarde sera automatiquement une sauvegarde totale.

Pour effectuer une sauvegarde immédiate, il faut exécuter la commande suivante :

# bareosconfig.py -n --level=Full

Il est possible de suivre l'évolution de la sauvegarde dans le fichier /var/log/rsyslog/local/bareos-dir/bareos-dir.info.log.

Les éventuelles erreurs sont enregistrées dans le fichier /var/log/rsyslog/local/bareos-dir/bareos-dir.err.log.

Truc & astuce

bareosconfig.py --help donne la liste des options de bareosconfig.py

Il existe également des pages de manuel :

man bareos, man bareos-dir, ...

Afficher la configuration

Il est possible de lister l'ensemble de la configuration depuis la ligne de commande avec la commande bareosconfig.py :

# bareosconfig.py -d

Support : {'usb_path': '/dev/sdb1', 'support': 'usb'}

Mail : {}

Programmation :

1 : Sauvegarde totale dans la première nuit du mois du mercredi au jeudi à 02:00

2 : Sauvegarde incrémentale de la nuit du lundi au mardi à la nuit au vendredi à 22:00

3 : Sauvegarde totale dans la première nuit du mois du lundi au mardi à 21:00

Supprimer un job

Il est possible de supprimer un job depuis la ligne de commande grâce à la commande bareosconfig.py . Elle s'utilise comme suit :

# bareosconfig.py -x <numéro_job>

ou encore :

# bareosconfig.py --job_to_delete=<numéro_job>

La restauration des sauvegardes EOLE

Avec l’introduction de la sauvegarde de fichiers distants, deux cas de figure se présentent pour la restauration. La restauration des sauvegardes des fichiers locaux est toujours possible grâce à l’utilitaire en ligne de commande bareosrestore.py comme décrit dans la suite de cette partie.

La restauration des sauvegardes des clients distants est, quant à elle, accessible via la console bareos bconsole ou l'application web bareos-webui. L’utilisation de la console bareos bconsole n’est pas couverte dans cette documentation mais dans la documentation officielle du produit (en anglais uniquement). L’utilisation de l’application web bareos-webui pour la restauration fait l’objet d’une section dans la partie consacrée à bareos-webui.

La restauration peut être :

  • complète, elle va restaurer l'ensemble des bases de données, l'annuaire, les quotas, ... ainsi que l'ensemble des fichiers sauvegardés.

  • partielle, elle peut restaurer l'ensemble ou une partie des fichiers sauvegardés.

Restauration complète

Attention

La restauration d'un serveur s'effectue toujours sur un serveur instancié.

Préparation du serveur avant restauration

Mise à jour

Idéalement, le niveau de mise à jour du serveur avant restauration doit être identique au à celui du serveur sauvegardé.

Mettre à jour les paquets :

Maj-Auto

Choix du mode conteneur ou non

Si le serveur sauvegardé était en mode conteneur, il faut re-créer les conteneurs, avec la commande gen_conteneurs.

Configurer Bareos
  • si le serveur est enregistré dans Zéphir, il faudra redescendre la configuration en ré-enregistrant le serveur avec la commande enregistrement_zephir ;

  • si le serveur n'est pas enregistré dans Zéphir, il sera nécessaire de récupérer la sauvegarde de la configuration sur le support de sauvegarde.

    Configuration de Bareos pour un serveur non enregistré dans Zéphir

    # bareosconfig.py -s usb --usb_path=/dev/device_usb

    Configuration de Bareos pour un serveur non enregistré dans Zéphir avec le label du périphérique

    # bareosconfig.py -s usb --usb_path=/dev/disk/by-label/LABEL

    Il est normal d'avoir le message suivant lors de l'utilisation de bareosconfig.py :

    Fichier template /var/lib/creole/bareossupport.conf inexistant

    Il peut être utile de configurer l'envoi des courriels en même temps que le support de sauvegarde.

    # bareosconfig.py -m --mail_ok=mailok@ac-dijon.fr --mail_error=mailerror@ac-dijon.fr

Paquets additionnels

Pour les paquets additionnels ajoutés sur l'ancien serveur (eole-ejabberd par exemple) il est impératif que le paquet soit installé sur le serveur au moment où on exécute la restauration.

  • si le serveur était enregistré sur un serveur Zéphir, les paquets additionnels déclarés sont installés à la fin de l'enregistrement auprès du serveur Zéphir ;

  • dans le cas d'une installation isolée, il est judicieux de réinstaller les paquets avant d'instancier le serveur.

Truc & astuce

Si l'ancien serveur est toujours accessible, il est possible de lister l'ensemble des paquetages installés grâce à la commande :

# dpkg --get-selections

Il est possible de filtrer uniquement les paquets préfixé par eole- :

# dpkg --get-selections | grep eole-

La liste des paquets peut être exportée dans un fichier pour être transférée sur une autre machine :

# dpkg --get-selections > paquetages.txt

Récupération de la liste précédente :

# dpkg --set-selections < paquetages.txt

Installation des paquets de la liste :

# apt-get dselect-upgrade

Remarque

Pour avoir plus d'informations (version, architecture et descriptif) sur les paquets installés il est possible d'utiliser l'option -l

# dpkg -l | grep eole

Montage du support

Une fois que le serveur est enregistré dans Zéphir ou que le support est configuré, il faut monter le support de sauvegarde :

# bareosmount.py --mount

Montage OK

Extraire le fichier config.eol de la sauvegarde

Pour extraire le fichier config.eol de la sauvegarde il est nécessaire de connaître le nom du directeur.

Le nom du directeur est, par défaut, de la forme : nom_du_module-dir (par exemple : scribe-dir).

Si vous ne vous souvenez plus du nom du directeur de votre serveur, il suffit de regarder le contenu du support de sauvegarde :

# ls /mnt/sauvegardes/*-catalog-0003

/mnt/sauvegardes/amonecole-dir-catalog-0003

Le directeur est dans ce cas amonecole-dir.

# bareosrestore.py --configeol amonecole-dir

Le fichier config.eol extrait est enregistré dans /root/zephir-restore.eol.

Instance

Avant toute chose, il faut déplacer et renommer le fichier de configuration :

# mv /root/zephir-restore.eol /etc/eole/config.eol

Instancier maintenant votre serveur avec la commande : instance

Si vous avez enregistré votre serveur sur Zéphir, il est possible d'utiliser directement le fichier de configuration zephir.eol

À l'étape de Postconfiguration, sauf besoin exceptionnel il ne faut pas réinitialiser le catalogue :

Le catalogue Bareos a déjà été initialisé, voulez-vous le réinitialiser ? [oui/non]

Ne pas tenir compte du message d'erreur suivant :

ERREUR : /var/lib/eole/config/shedule.conf not exist

Récupération du catalogue

Pour récupérer le catalogue de sauvegarde il est nécessaire de connaître le nom du directeur.

Le nom du directeur est, par défaut, de la forme : nom_du_module-dir (par exemple : scribe-dir).

Si vous ne vous souvenez plus du nom du directeur de votre serveur, il suffit de regarder le contenu du support de sauvegarde :

# ls /mnt/sauvegardes/*-catalog-0003

/mnt/sauvegardes/amonecole-dir-catalog-0003

Le directeur est dans ce cas amonecole-dir.

Lancer la récupération du catalogue :

# bareosrestore.py --catalog

Restauration du catalog

Pas de fichier /var/lib/eole/config/bareosjobs.conf dans le volume nom_du_directeur-catalog-0003

Pas de fichier /etc/eole/bareos.conf dans le volume nom_du_directeur-catalog-0003

Les messages concernant l'absence de certains fichiers sont normaux.

Le répertoire /var/lib/bareos/ doit contenir :

  • nom_du_directeur-JobDefsCatalog.bsr
  • nom_du_directeur-JobDefsSauvegarde.bsr
  • bareos.sql
Démontage du support

Pour démonter le support de sauvegarde :

# bareosmount.py --umount

Restauration

Avant de lancer la restauration il est préférable de vérifier que le chemin du nœud du périphérique est toujours bon.

Il peut changer en fonction du nombre de périphériques connectés :

# bareosmount.py -t

Si le périphérique n'a plus le même nœud la commande bareosmount.py renvoie :

ERREUR : le périphérique /dev/sdb1 n'existe pas

Il faut alors changer la configuration du support :

# bareosconfig.py -s usb --usb_path=/dev/device_usb

ou si le disque a un label :

# bareosconfig.py -s usb --usb_path=/dev/disk/by-label/LABEL

Le test de montage doit renvoyer OK :

# bareosmount.py -t

Test de montage OK

Lister l'ensemble de la configuration :

# bareosconfig.py -d

La restauration complète du serveur va restaurer l'ensemble des bases de données, l'annuaire, les quotas, ... ainsi que l'ensemble des fichiers sauvegardés.

Pour ce faire il faut utiliser la commande bareosrestore.py :

# bareosrestore.py --all

Truc & astuce

Il est possible de suivre l'évolution des restaurations dans le fichier de log : /var/log/bareos/restore.txt

Les informations peuvent mettre un peu de temps avant d'apparaître car Bareos ne les "flush" pas tout de suite dans son fichier de log.

Si rien n'apparaît dans un délai raisonnable il faut vérifier le chemin du nœud du périphérique.

Lorsque la restauration complète est terminée, il faut re-configurer votre serveur à l'aide de la commande reconfigure.

Restauration partielle

Rechercher un fichier à restaurer

Pour rechercher un fichier ou un répertoire dans le support de sauvegarde (sur la dernière sauvegarde uniquement), on utilise l'option --search :

# bareosrestore.py --search nom_du_fichier

Il est possible d'utiliser les caractères  ? ou * pour remplacer respectivement un ou plusieurs caractères en l'échappant de la façon suivante :

# bareosrestore.py --search nom_du_\*

Il est également possible de lister le contenu d'un répertoire sauvegardé avec l'option --ls_folder :

# bareosrestore.py --ls_folder /etc/eole

liste du contenu de /etc/eole

config.eol

Restauration d'un fichier ou d'un répertoire

Pour restaurer un fichier de la dernière sauvegarde, on peut utiliser la commande :

# bareosrestore.py --file /chemin_absolu/nom_du_fichier

Exemple :

# bareosrestore.py --file /etc/eole/config.eol

Pour restaurer un répertoire et l'intégralité de son contenu, on peut utiliser la commande :

# bareosrestore.py --folder /chemin_absolu/nom_du_répertoire

Exemple :

# bareosrestore.py --folder /usr/share/ead2/backend/config

Restauration de l'ensemble des fichiers sauvegardés

Pour restaurer l'ensemble des fichiers sauvegardés, il est possible d'utiliser la commande :

# bareosrestore.py --all_files

Restauration spécifique

Les bases de données, les quotas, l'annuaire, ... ne sont pas sauvegardés sous forme de fichiers binaires.

Ils sont extraits avant la sauvegarde.

Pour restaurer, il existe une procédure particulière, différente suivant l'application.

Pour connaître les possibilités, faire :

# bareosrestore.py --help

Exemple

Pour restaurer l'annuaire :

# bareosrestore.py --ldap

Restauration manuelle

Avant de lancer la restauration il est préférable de vérifier que le chemin du nœud du périphérique est toujours bon.

Il peut changer en fonction du nombre de périphériques connectés :

# bareosmount.py -t

Si le périphérique n'a plus le même nœud la commande bareosmount.py renvoie :

ERREUR : le périphérique /dev/sdb1 n'existe pas

Il faut alors changer la configuration du support :

# bareosconfig.py -s usb --usb_path=/dev/device_usb

ou si le disque a un label :

# bareosconfig.py -s usb --usb_path=/dev/disk/by-label/LABEL

Le test de montage doit renvoyer OK :

# bareosmount.py -t

Test de montage OK

Lister l'ensemble de la configuration :

# bareosconfig.py -d

La restauration manuelle s'effectue au moyen d'un programme en ligne de commande, bconsole :

# bconsole

Il est possible de spécifier le fichier de configuration :

# bconsole -c /etc/bareos/bconsole.conf

Une fois bconsole démarré, il est possible d'abandonner la procédure à tout moment en quittant la console avec la commande quit, done ou avec les touches ctrl + c.

Le prompt de bconsole est une étoile.

Exemple

Dans cet exemple nous verrons comment restaurer le fichier /home/a/admin/perso/icones.url.

Dans bconsole, taper la commande restore qui indique à bconsole d'initialiser une restauration :

*restore

Il est possible de choisir directement le support de sauvegarde des fichiers, ce qui évite d'avoir à le choisir par la suite, pour cela utiliser la commande suivante (attention aux majuscules/minuscules et à la saisie sans accents) :

*restore fileset=FileSetSauvegarde

Vous avez alors plusieurs choix :

To select the JobIds, you have the following choices:

[...]

Les plus pertinents sont :

  • Depuis que l'utilisateur a supprimé le fichier le système n'a effectué que des sauvegardes incrémentales alors le fichier est toujours présent dans la sauvegarde, choisissez la sauvegarde la plus récente pour un client :

    5: Select the most recent backup for a client (sélectionner la sauvegarde réussie la plus récente)

  • Depuis que l'utilisateur a supprimé le fichier le système a effectué une sauvegarde complète (Full) alors le fichier n'est présent que dans les sauvegardes précédant la sauvegarde complète, sélectionner la dernière sauvegarde pour un client avant une certaine date et entrez une date antérieure à la dernière sauvegarde complète :

    6: Select backup for a client before a specified time (sélectionner la dernière sauvegarde réussie avant une date spécifiée)

La console propose trois options :

The defined FileSet ressources are :

1 : FileSetCatalog

2 : FileSetDefault

3 : FileSetSauvegarde

Il faut ensuite choisir le support de sauvegarde des fichiers (et non celui du catalogue) :

3 : FileSetSauvegarde

Un prompt apparaît et permet de naviguer dans l'arborescence des sauvegardes :

cwd is : /

$ ls

etc/

home/

root/

usr/

var/

$ cd /home/a/admin/perso

Il faut marquer les fichiers/dossiers à restaurer avec la commande mark (attention, la commande mark est récursive) :

$ mark icones.url

1 file marked.

Pour "dé-marquer" un fichier marqué par erreur :

$ unmark icones.url

1 file unmarked.

Lorsque les fichiers et les dossiers à restaurer sont sélectionnés, passer à l'étape suivante avec la commande :

$ done

bconsole propose plusieurs options, il faut choisir le job de restauration, ici l'option numéro 3 :

3: Restore_file

On obtient alors le message suivant :

Bootstrap records written to /var/lib/bareos/xxxxxxxxx.restore.2.bsr

[...]

Ok to run ? (yes/mod/no) :

La restauration peut maintenant être lancée en répondant yes à la question.

Il ne sera plus possible d'abandonner après cette étape.

OK to run? (yes/mod/no): yes

La restauration est alors placée dans une file d'attente. Le numéro JobId est affiché à l'écran.

Il est possible de changer les paramètres de restauration en répondant mod à la question :

OK to run? (oui/mod/non): mod

Parameters to modify :

1 : Level

2 : Storage

[...]

Par exemple pour restaurer dans un autre répertoire, il faut choisir Where (9 dans le cas présent) et saisir le chemin de la restauration :

9 : Where

Please enter path prefix for restore (/ for none) : /home/restauration

Ok to run ? (yes/mod/no) : yes

La restauration est alors placée dans une file d'attente. Le numéro JobId est affiché à l'écran.

Pour quitter la console :

* quit

Truc & astuce

Il est possible de suivre l'évolution des restaurations dans le fichier de log : /var/log/bareos/restore.txt

Les informations peuvent mettre un peu de temps avant d'apparaître car Bareos ne les "flush" pas tout de suite dans son fichier de log.

Si rien n'apparaît dans un délai raisonnable il faut vérifier le chemin du nœud du périphérique.

Attention

Pour conserver les droits étendus associés à un fichier (ACL), il faut restaurer un fichier issu d'une partition avec ACL (par exemple le répertoire /home sur le module Scribe) dans une partition supportant les ACL.

La consultation des rapports de sauvegarde

Les rapports de sauvegarde sont disponibles à plusieurs endroits dans les interfaces d’administration.

Consultation du journal du directeur

Le directeur consigne la plupart de ces actions dans un journal qu’il est possible de consulter via l’utilitaire en ligne de commande bconsole, le système de journalisation ou via l’EAD3.

Dans la catégorie Sauvegarde, l’action Rapport de sauvegarde permet de consulter le contenu du fichier /var/lib/eole/reports/rapport-bareos.txt, rempli par l’utilitaire en ligne de commande bconsole.

L’action ne propose pas d’autres contrôle que le rafraîchissement qui qui déclenche la relecture du fichier /var/lib/eole/reports/rapport-bareos.txt. La lecture du fichier est automatiquement déclenchée au démarrage de l’action.

Écran

  • 1
    Fichier lu

    Emplacement du fichier dont le contenu est affiché dans l’espace principal.

  • 2
    Rafraîchissement

    Bouton permettant de déclencher à nouveau la lecture du fichier pour mettre à jour l’affichage de son contenu.

  • 3
    Affichage du contenu

    Zone principale de l’action affichant le contenu du fichier.

Consultation des rapports dans l'interface bareos-webui

Dans la catégorie Sauvegarde, l’action Afficher l’état des sauvegardes permet d’ouvrir l’application web bareos-webui pour consulter les rapports des différents éléments contrôlés par le directeur.

L’authentification n’est pas unifiée et il est obligatoire de s’identifier avec l’un des comptes définis dans la phase de configuration de l’application bareos-webui.

Remarque

L’application bareos-webui est une application tierce qui ne bénéficie pas d’une documentation exhaustive dans le cadre de cette documentation.

Ajouter des données à sauvegarder

Il est tout à fait possible d'ajouter des fichiers et/ou des répertoires à sauvegarder à ceux déjà configurés par défaut sur un module.

Pour cela il faut ajouter un fichier de configuration portant l'extension .conf dans le répertoire /etc/bareos/bareosfichiers.d/

Celui-ci ne doit comporter que les directives Include et Exclude, il ne faut pas, par exemple, spécifier le Name du FileSet car il est déjà défini dans le reste de la configuration.

Exemple d'un fichier de configuration pour la prise en charge de nouvelles données à sauvegarder :

Include {

   Options {

      # Sauvegarde des ACL

      aclsupport = yes

      # Tous les fichiers seront chiffrés en SHA1

      signature = SHA1

      # Compression des fichiers (niveau de com pression croissant de 0 à 9)

      compression = GZIP6

      # Permet de sauvegarder plusieurs systèmes de fichiers

      onefs = yes

   }

   File = /chemin/du/repertoire/ou/du/fichier/a/sauvegarder

   File = /chemin/du/repertoire/ou/du/fichier/a/sauvegarder

}

Exclude {

   File = /chemin/du/repertoire/ou/du/fichier/a/ignorer

   File = /chemin/du/repertoire/ou/du/fichier/a/ignorer

}

Pour sauvegarder les fichiers d'un conteneur il faut préciser le chemin complet du fichier, par exemple :

   File = /var/lib/lxc/reseau/rootfs/var/www/html/fichier

Les autres options pour la ressource FileSet sont consultables dans la documentation officielle du projet Bareos :

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-1030008.5

Attention

Pour que l'ajout d'un fichier de configuration soit pris en compte par Bareos il faut procéder à la reconfiguration du module avec la commande reconfigure.

Réinitialisation de la sauvegarde

Pour réinitialiser la sauvegarde il faut vider le support de sauvegarde ou prendre un support de sauvegarde ne contenant aucun volume et surtout il faut ré-initialiser la base de données de Bareos.

Pour ce faire il faut utiliser la commande suivante :

# bareosregen.sh

La régénération du catalogue de la sauvegarde va écraser l'ancienne base, confirmez-vous ? [oui/non]

[non] : oui

bareos-webui : outil d'administration pour Bareos

bareos-webui est un logiciel libre écrit en PHP (basé sur Zend Framework), destiné à surveiller et à gérer les sauvegardes Bareos au travers d'une application web.

http://www.bareos.org/en/bareos-webui.html

L'interface web permet l'utilisation de plusieurs comptes pour gérer les sauvegardes et afficher les informations détaillées sur les jobs, les clients, groupes de fichiers, Pools, Volumes, stockages, Directeur, Scheduler et les journaux.

Mire d'authentification de bareos-webui
Mire d'authentification de bareos-webui
Tableau de bord de bareos-webui
Tableau de bord de bareos-webui
Affichage des volumes dans bareos-webui
Affichage des volumes dans bareos-webui
Affichage des jobs dans  bareos-webui
Affichage des jobs dans bareos-webui

Installation

bareos-webui s'installe manuellement, saisir les commandes suivantes dans un terminal :

# Query-Auto

# apt-eole install eole-bareoswebui

Remarque

Le paquet est pré-installé sur les modules Scribe, Horus et AmonEcole.

Configuration

Dans l'onglet Applications web, il faut passer Activer Bareos WebUI (gestion de la sauvegarde) à oui.

Un nouvel onglet Bareos webui apparaît dans l'interface de configuration du module.

Il est possible de créer un ou plusieurs comptes autorisés à se connecter à l'interface bareos-webui en cliquant sur le bouton + Utilisateur autorisé à se connecter à l'interface web de gestion de la sauvegarde.

Le mot de passe de la base de données peut éventuellement être personnalisé mais par défaut il est généré automatiquement. Une fois la configuration enregistrée, il ne sera plus possible de le modifier.

Remarque

L'application n'est pas disponible immédiatement après l'installation.

L'opération nécessite une reconfiguration du serveur avec la commande reconfigure.

Accès à l'application

Pour accéder à l'application se rendre à l'adresse : http://<adresse_serveur>/bareos-webui/ ou utiliser l’action depuis l’EAD3.

L'authentification se fait obligatoirement avec les comptes déclarés dans l'interface de configuration du module.

Restauration des fichiers des clients distants

Bareos Webui est l’application graphique conseillée pour la restauration des fichiers des clients distants.

La restauration est possible depuis l’onglet Restauration. Cet onglet propose une série de paramètres pour la restauration sous la forme de champs de saisie sur la gauche et une vue arborescente des fichiers disponibles à la restauration dans la plus grande partie de la vue, à droite.

Écran

  • 1
    Sélection du client

    Une liste déroulante permet de sélectionner le client pour lequel effectuer la restauration. Il peut s’agir aussi bien d’un client distant que du client local (vis-à-vis de l’emplacement du directeur).

  • 2
    Sélection de la sauvegarde de référence

    Une liste déroulante permet de sélectionner les versions à restaurer par le biais du choix de la date de sauvegarde.

  • 3
    Sélection du client cible

    Une liste déroulante permet de sélectionner le client vers lequel on souhaite restaurer les fichiers.

  • 4
    Sélection du job de restauration

    Une liste déroulante permet de sélectionner le job de restauration parmi ceux créés automatiquement. Par défaut, le job sélectionné n’est pas celui associé au client distant. Aussi, il faut penser modifier ce paramètre.

  • 5
    Sélection du mode de remplacement

    Une liste déroulante permet de sélectionner le mode de remplacement des fichiers dans l’hypothèse où la restauration amènerait à copier un fichier à un endroit où il est déjà présent.

  • 6
    Sélection de l’emplacement cible

    Un champ de saisie libre permet d’indiquer l’emplacement cible de la restauration. Pour restaurer les fichiers à leur place, il convient d’indiquer la racine du système de fichier (/).

  • 7
    Sélection des fichiers à restaurer

    Un arbre permet de sélectionner les fichiers à restaurer parmi ceux déclarés dans la sauvegarde.

Désactivation

Truc & astuce

Pour désactiver rapidement et temporairement (jusqu'au prochain reconfigure) l'application web il est possible d'utiliser la commande suivante :

# a2dissite nom_de_l'application

Le nom de l'application à mettre dans la commande est celui que l'on trouve dans le répertoire /etc/apache2/sites-available/

Pour activer cette nouvelle configuration il faut recharger la configuration d'Apache avec la commande :

# service apache2 reload

Pour réactiver l'application avec cette méthode il faut utiliser les commandes suivantes :

# a2ensite nom_de_l'application

# service apache2 reload

Pour désactiver l'application pour une période plus longue voir définitivement, il faut désactiver l'application depuis l'interface de configuration du module, dans l'onglet Applications web.

L'opération nécessite une reconfiguration du module avec la commande reconfigure.

Diagnostic, rapport et résolution de problème

Outils de diagnostic et rapport

Les outils de diagnostic et de rapport proposés pour évaluer le bon fonctionnement de la sauvegarde sont passifs ou actifs. Passifs, sous la forme de courriers électroniques qui peuvent être envoyés en cas d’échec ou de réussite des sauvegardes. Actifs, sous la forme d’interfaces à consulter.

Les informations transmises par courrier électronique sont multiples. Elles concernent le déroulement de la sauvegarde et les messages émis par les scripts validation de l’infrastructure de sauvegarde.

Ces scripts vérifient notamment les droits et la place disponible sur le support de sauvegarde.

En plus de l'envoi de courrier électronique, il est possible de connaître l'état de la dernière sauvegarde en utilisant la commande diagnose.

Celle-ci liste également l'état des différents services de Bareos, l’espace disque utilisé et une estimation de la possibilité d’effectuer une nouvelle sauvegarde en fonction de l’espace disponible.

L'EAD permet également de connaître l'état de la dernière sauvegarde depuis sa page d'accueil.

Le détail de la sauvegarde est disponible en cliquant sur Afficher le rapport.

État des sauvegardes dans l'EAD
État des sauvegardes dans l'EAD

Par contre, pour voir l'état des différents services Bareos il faut se rendre à la rubrique ETAT DES SERVICES de la page d'accueil et cliquer sur DETAILS de la rubrique Services, puis sélectionner État des démons bareos.

États des services Bareos dans l'EAD
États des services Bareos dans l'EAD

Si l'un des services est arrêté, il est possible de le relancer à l'aide de la commande service :

# service bareos-dir restart

* Restarting Bareos Director bareos-dir ... [ OK ]

Dans la rubrique ETAT DES SERVICES de la page d’accueil et cliquer sur DETAILS de la rubrique Utilisation, puis sélectionner Sauvegarde pour obtenir les informations fournies par ailleurs dans le diagnose.

Écran

  • 1
    État de la dernière sauvegarde

    Statut des différentes étapes de la dernière sauvegarde

  • 2
    Espace disque utilisé

    Pourcentages d’espace utilisé sur le support selon la taille et le nombre de fichiers

  • 3
    Espace disque disponible

    Estimation de l’espace disponible sur le support selon l’espace libre et l’espace réutilisable

Tester le support de sauvegarde

Pour tester le support de sauvegarde USB local ou SMB, il est possible d'utiliser le script bareosmount.py.

Exemple
1
root@scribe:~# bareosmount.py -t
2
Test de montage OK
3
root@scribe:~#
Exemple
1
root@scribe:~# bareosmount.py -t
2
Problème de montage (1 essais restants)
3
ERREUR : périphérique /dev/sda1 non reconnu
4
Problème de montage (0 essais restants)
5
ERREUR : périphérique /dev/sda1 non reconnu
6
Échec du test de montage :
7
point de montage : Erreur
8
permissions : Erreur
9
montage : Erreur
10
root@scribe:~#
Exemple
1
root@scribe:~# bareosmount.py -t
2
Problème de montage (1 essais restants)
3
[Errno 32] mount error(13): Permission denied
4
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
5
6
Problème de montage (0 essais restants)
7
[Errno 32] mount error(13): Permission denied
8
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
9
10
Échec du test de montage :
11
point de montage : Erreur
12
permissions : Erreur
13
montage : Erreur
14
root@scribe:~#

Espace disque insuffisant pour la sauvegarde

L’un des principes de fonctionnement de Bareos est de conserver autant que possible les données sauvegardées. Il privilégie la création de nouveaux volumes au recyclage des anciens tant qu’il a la place pour le faire. De ce fait, il consomme tout l’espace disponible sauf indication contraire dans la configuration. Une fois l’espace disque consommé, il recyclera les volumes pouvant l’être.

Les problèmes d’espace disque peuvent apparaître lorsque l’espace disque est consommé et qu’aucun volume n’est recyclable.

Deux indicateurs permettent de prévenir les problèmes éventuels d’espace disque :

  • le pourcentage d’espace disque utilisé en terme de taille et de nombre de nombre de fichiers ;

  • l’estimation de l’espace disponible pour la prochaine sauvegarde.

Dans le cas où les indicateurs alerteraient sur le manque d’espace disque, plusieurs solutions peuvent être envisagées, individuellement ou en combinaison :

  • l’augmentation de l’espace disque alloué à la sauvegarde ;

  • l’adaptation (à la baisse) des durées de rétention des volumes ;

  • l’adaptation du niveau de compression.

  • la diminution du nombre de fichiers à sauvegarder, en excluant certains dossiers et/ou fichiers en appliquant un patch sur la définition des FileSet ;

Base de donnée sqlite de Bareos irrécupérable

Lors d'un incident sur l'un des modules EOLE la base de donnée sqlite de Bareos peut être irrécupérable.

Il est possible de restaurer des données sans la base de données avec les commandes bls et bextract.

Inspiré de l'article suivant : https://pipposan.wordpress.com/2010/06/09/bacula-tape-restore-without-database/

Truc & astuce

Il est également possible de réaliser la récupération avec la commande bconsole.

Montage du support de sauvegarde et affichage des volumes par date

La commande ls -lrt permet de trier l'affichage des volumes par date :

root@srv-scribe:~# ls -lrt /mnt/sauvegardes/

On voit une sauvegarde FULL le 06/06/2015 (de nombreux volumes de 2Go ont la même date) :

-rw-r----- 1 bareos root 1999997379 2015-06-06 02:02 ScribeVolume0044

-rw-r----- 1 bareos root 1999936662 2015-06-06 02:05 ScribeVolume0068

-rw-r----- 1 bareos root 1999936707 2015-06-06 02:09 ScribeVolume0045

[...]

-rw-r----- 1 bareos root 1999936658 2015-06-06 04:34 ScribeVolume-0241

-rw-r----- 1 root root 1999936613 2015-06-06 04:38 ScribeVolume-0302

Utilisation de la commande bsl

root@srv-scribe:~# bls -j -V ScribeVolume0044 /mnt/sauvegardes

bls: butil.c:282 Using device: "/mnt/sauvegardes" for reading.

15-jun 16:38 bls JobId 0: Prêt à lire les données du volume « ScribeVolume0044 » depuis le device "FileStorage" (/mnt/sauvegardes).

Volume Record: File:blk=0:208 SessId=103 SessTime=1427205136 JobId=1 DataLen=173

End Job Session Record: File:blk=0:603258940 SessId=103 SessTime=1427205136 JobId=3381

Date=03-jun-2015 02:08:39 Level=I Type=B Files=13,342 Bytes=752,617,191 Errors=0 Status=T

Begin Job Session Record: File:blk=0:603259372 SessId=104 SessTime=1427205136 JobId=3382

Job=BackupCatalog.2015-06-03_02.00.00_48 Date=03-jun-2015 02:12:24 Level=I Type=B

End Job Session Record: File:blk=0:603259372 SessId=104 SessTime=1427205136 JobId=3382

Date=03-jun-2015 02:12:24 Level=I Type=B Files=0 Bytes=0 Errors=0 Status=T

[...]

Begin Job Session Record: File:blk=0:1308041742 SessId=109 SessTime=1427205136 JobId=3387

Job=Complet.2015-06-06_02.00.00_53 Date=06-jun-2015 02:00:12 Level=F Type=B

15-jun 15:54 bls JobId 0: Fin de Volume au fichier 0 sur le Device "FileStorage" (/mnt/sauvegardes), Volume « ScribeVolume0044 »

15-jun 15:54 bls JobId 0: Fin de tous les Volumes.

Le Job du 06/06/2015 a SessId=109 et SessTime=1427205136. Ainsi que le Job du dernier volume en date du 06/06/2015

root@srv-scribe:~# bls -j -V ScribeVolume-0302 /mnt/sauvegardes

bls: butil.c:282 Using device: "/mnt/sauvegardes" for reading.

15-jun 15:59 bls JobId 0: Prêt à lire les données du volume « ScribeVolume-0302 » depuis le device "FileStorage" (/mnt/sauvegardes).

Volume Record: File:blk=0:209 SessId=109 SessTime=1427205136 JobId=33 DataLen=174

15-jun 16:00 bls JobId 0: Fin de Volume au fichier 0 sur le Device "FileStorage" (/mnt/sauvegardes), Volume « ScribeVolume-0302 »

15-jun 16:00 bls JobId 0: Fin de tous les Volumes.

Génération d'un fichier bootstrap avec la liste des volumes à utiliser (tous ceux du 06/06/2015)

root@srv-scribe:~# cat boostrap.bsr

Volume="ScribeVolume0044"

VolSessionId=109

VolSessionTime=1427205136

Volume="ScribeVolume0068"

VolSessionId=109

VolSessionTime=1427205136

Volume="ScribeVolume0045"

VolSessionId=109

VolSessionTime=1427205136

[...]

Volume="ScribeVolume-0302"

VolSessionId=109

VolSessionTime=1427205136

Restauration

root@srv-scribe:~# root 15133 15119 25 16:26 pts/5 00:07:31 bextract -b boostrap.bsr /mnt/sauvegardes /home/restore/

Restauration LDAP

root@srv-scribe:~# service slapd stop

root@srv-scribe:~# md /home/sav/ldap

root@srv-scribe:~# mv /var/lib/ldap/*.* /home/sav/ldap/

root@srv-scribe:~# slapadd -l /home/sauv_ldap.ldif

Restauration MySQL

root@srv-scribe:~# mysql_pwd.py eole21 nomodif

root@srv-scribe:~# mysql -uroot -peole21 < /home/sauv_mysql.sql

Restauration Quotas

root@srv-scribe:~# bareosrestore.py --quota

Restauration SID

root@srv-scribe:~# cat /etc/eole/${MODULE}_SID | xargs net setlocalsid

Reconfiguration du serveur

Il faut procéder à la reconfiguration du serveur à l'aide de la commande reconfigure.

Annexes

Voici un complément d'information (outils d'administration, liens, …) pour aller plus loin avec Bareos.

Autres outils d'administration pour Bareos

L'administration de Bareos se fait au travers d'une console (texte ou graphique), qui pourra être installée sur le même serveur que le directeur (Director), mais aussi sur d'autres postes pour permettre de commander Bareos à distance.

Différentes versions existent :

  • bconsole est la console en mode texte ;

  • Bareos Administration Tool (BAT) est l'interface graphique standard qui permet d'exploiter bconsole, installable (25Mo) sur les modules EOLE avec la commande :

    # apt-eole install bareos-bat

    BAT se lance avec la commande suivante :

    # bat -c /etc/bareos/bat.conf

    Il est possible de lancer l'interface BAT à travers SSH avec l'option -X pour activer le déport de l'affichage et l'option -C pour éventuellement compresser les données (pratique pour les lignes à faible débit) :

    # ssh -C -X <adresse_serveur>

BAT (Bacula Administration Tool)
BAT (Bacula Administration Tool)
  • bgnome-console est une console graphique (notamment pour les opérations de restauration), mais nécessite l'installation des librairies GNOME 2.x ;

  • bwx-console est une version graphique utilisant wxWidgets

    L'installation de bwx-console est décrite pour Mandriva et pour Ubuntu à l'adresse suivante : http://m-k.cc/spip.php?rubrique3

  • bacula-win (http://sourceforge.net/projects/bacula/files/) permet notamment d'installer :

    • un client Windows (File Daemon) ;

    • des consoles : BAT, bconsole et TrayMonitor.

Il existe aussi des versions Web comme :

Pour avoir plus d'informations sur les outils mentionnés : http://wiki.bacula.org/doku.php?id=3rd_party_addons

Quelques références

Voici quelques références autour de Bareos et des sauvegardes.

Définition des éléments de sauvegarde Bareos :

http://doc.bareos.org/master/html/bareos-manual-main-reference.html#x1-60001.3

Un répertoire partagé Windows 10 comme support de sauvegarde

Les modules EOLE permettent d'utiliser plusieurs supports pour effectuer les sauvegardes, dont un répertoire partagé.

Pour la sauvegarde, les accès au partage doivent impérativement se faire en utilisant un compte local du poste sur lequel se trouve le dossier partagé.

Remarque

Donner des droits d'accès au partage à un compte du domaine pose un problème pour le bon déroulement des sauvegardes. En effet pour avoir accès au partage, la station va vérifier la validité de l'utilisateur et de son mot de passe auprès du contrôleur de domaine mais le service Samba est arrêté par Bareos pour éviter qu'un fichier/dossier ne soit modifié pendant la sauvegarde. L'accès au partage n'est donc pas validé par le contrôleur de domaine et la sauvegarde ne peut pas se faire.

Voici comment créer un partage avec les droits d'accès adéquats sur un poste équipé de Windows 10.

Le dossier partagé peut se trouver sur le disque dur de la station Windows mais il peut aussi se trouver sur un disque dur externe connecté à la station.

Création d'un compte dédié sur le poste Windows 10

Ouvrir une session en administrateur local de la station sur laquelle vous voulez créer le partage.

Puis ouvrir la console de Gestion de l'ordinateur : clic droit sur le Menu démarrer → Gestion de l'ordinateur.

Aller dans le menu : Outils système → Utilisateurs et groupes locaux → Utilisateurs, puis effectuer un clic droit dans l'espace vide.

Configurer l'utilisateur comme ceci :

Finaliser l'opération en cliquant sur le bouton Créer.

Partage du dossier et réglage des droits d'accès

Après avoir créé un dossier sauvegardes à l'emplacement de votre choix, effectuer un clic droit sur le dossier et sélectionner Accorder l'accès à puis Des personnes spécifiques...

Entrer le nom de l'utilisateur créé précédemment et cliquer sur le bouton Ajouter.

Lui donner les droits en Lecture/écriture.

Finaliser l'opération en cliquant sur le bouton Partager.

Attention

L’interface propose une liste déroulante pour la sélection des utilisateurs spécifiques. Elle affiche le nom complet alors qu’il faut fournir le nom d’utilisateur.

En cas d’erreur du type Windows n’a pas pu trouver <utilisateur>, vérifier que le nom saisi correspond bien au nom d’utilisateur.