Comment installer Bacula Server sur CentOS 7

introduction

Bacula est une solution de sauvegarde réseau open source qui vous permet de créer des sauvegardes et de récupérer les données de vos systèmes informatiques. Il est très flexible et robuste, ce qui le rend légèrement encombrant à configurer, mais également adapté aux sauvegardes dans de nombreuses situations. Un système de sauvegarde est un composant important dans la plupart des infrastructures de serveurs], en tant que récupération à partir de la perte de données est souvent un élément critique des plans de reprise après sinistre.

Dans ce tutoriel, nous allons vous montrer comment installer et configurer les composants serveur de Bacula sur un serveur CentOS 7. Nous allons configurer Bacula pour effectuer un travail hebdomadaire créant une sauvegarde locale (c.-à-d. une sauvegarde de son propre hôte). Ceci, en soi, n’est pas une utilisation particulièrement convaincante de Bacula, mais cela vous fournira un bon point de départ pour créer des sauvegardes de vos autres serveurs, c.-à-d. les clients de sauvegarde. Le prochain didacticiel de cette série couvrira la création de sauvegardes de vos autres serveurs distants en installant et configurant le client Bacula, ainsi que la configuration du serveur Bacula.

Si vous préférez utiliser Ubuntu 14.04 à la place, suivez ce lien: Comment installer Bacula Serveur sur Ubuntu 14.04.

Conditions préalables

Vous devez avoir un accès superutilisateur (sudo) sur un serveur CentOS 7. En outre, le serveur aura besoin d’un espace disque suffisant pour toutes les sauvegardes que vous prévoyez de conserver à un moment donné.

Si vous utilisez DigitalOcean, vous devez activer * Réseau privé * sur votre serveur Bacula et sur tous vos serveurs clients situés dans la même région de centre de données. Cela permettra à vos serveurs d’utiliser un réseau privé lors des sauvegardes, réduisant ainsi la surcharge du réseau.

Nous allons configurer Bacula pour utiliser le nom de domaine complet privé de nos serveurs, par exemple. + bacula.private.example.com +. Si vous n’avez pas de configuration DNS, utilisez plutôt les adresses IP appropriées. Si vous n’avez pas activé la mise en réseau privée, remplacez toutes les informations de connexion réseau de ce didacticiel par des adresses réseau accessibles par les serveurs en question (par exemple, adresses IP publiques ou tunnels VPN).

La dernière hypothèse est que SELinux est désactivé ou que vous pouvez résoudre vous-même les problèmes liés à SELinux.

Commençons par un aperçu des composants de Bacula.

Présentation du composant Bacula

Bien que Bacula soit composé de plusieurs composants logiciels, il suit le modèle de sauvegarde serveur-client. Pour simplifier la discussion, nous nous concentrerons davantage sur le * serveur de sauvegarde * et les * clients de sauvegarde * que sur les composants Bacula individuels. Néanmoins, il est important d’avoir une connaissance sommaire des différentes composantes de Bacula, nous allons donc les passer en revue maintenant.

Un serveur Bacula *, que nous appellerons également «serveur de sauvegarde», comprend les composants suivants:

  • * Bacula Director (DIR): * Logiciel qui contrôle les opérations de sauvegarde et de restauration effectuées par les démons de fichiers et de stockage.

  • * Storage Daemon (SD): * Logiciel permettant d’effectuer des lectures et des écritures sur les périphériques de stockage utilisés pour les sauvegardes.

  • * Catalogue: * Services qui gèrent une base de données de fichiers sauvegardés. La base de données est stockée dans une base de données SQL telle que MySQL ou PostgreSQL

  • * Bacula Console: * Interface de ligne de commande permettant à l’administrateur de sauvegarde d’interagir avec Bacula Director et de le contrôler.

Note: The Bacula server components don't need to run on the same server, but they all work together to provide the backup server functionality.

Un client Bacula *, c’est-à-dire un serveur qui sera sauvegardé exécute le composant * File Daemon (FD) *. File Daemon est un logiciel qui fournit au serveur Bacula (le directeur, en particulier) un accès aux données à sauvegarder. Nous ferons également référence à ces serveurs en tant que «clients de sauvegarde» ou «clients».

Comme nous l’avons noté dans l’introduction, nous allons configurer le serveur de sauvegarde pour créer une sauvegarde de son propre système de fichiers. Cela signifie que le serveur de sauvegarde sera également un client de sauvegarde et exécutera le composant File Daemon.

Commençons par l’installation.

Installer Bacula et MySQL

Bacula utilise une base de données SQL, telle que MySQL ou PostgreSQL, pour gérer son catalogue de sauvegardes. Nous allons utiliser MariaDB, un remplaçant instantané de MySQL, dans ce tutoriel.

Installez les packages Bacula et MariaDB Server avec yum:

sudo yum install -y bacula-director bacula-storage bacula-console bacula-client mariadb-server

Une fois l’installation terminée, nous devons démarrer MySQL avec la commande suivante:

sudo systemctl start mariadb

Maintenant que MySQL (MariaDB) est installé et en cours d’exécution, créons l’utilisateur et les tables de la base de données Bacula, avec les scripts suivants:

/usr/libexec/bacula/grant_mysql_privileges
/usr/libexec/bacula/create_mysql_database -u root
/usr/libexec/bacula/make_mysql_tables -u bacula

Ensuite, nous voulons exécuter un script de sécurité simple qui supprimera certaines valeurs par défaut dangereuses et bloquera un peu l’accès à notre système de base de données. Démarrez le script interactif en exécutant:

sudo mysql_secure_installation

L’invite vous demandera votre mot de passe root actuel. Comme vous venez d’installer MySQL, vous n’en aurez probablement pas. Par conséquent, laissez le champ vide en appuyant sur Entrée. Ensuite, l’invite vous demandera si vous souhaitez définir un mot de passe root. Allez-y et appuyez sur + Entrée +, et définissez le mot de passe. Pour le reste des questions, vous devez simplement appuyer sur la touche + Entrée à travers chaque invite pour accepter les valeurs par défaut. Cela supprimera des exemples d’utilisateurs et de bases de données, désactivera les connexions à la racine distante et chargera ces nouvelles règles afin que MySQL respecte immédiatement les modifications que nous avons apportées.

Nous devons maintenant définir le mot de passe pour l’utilisateur de la base de données Bacula.

Entrez la console MySQL, en tant qu’utilisateur racine de MySQL:

mysql -u root -p

Entrez le mot de passe root MySQL, que vous venez de définir, à l’invite.

Maintenant, définissez le mot de passe pour l’utilisateur de la base de données Bacula. Utilisez cette commande, mais remplacez le “baculadbpassword” mis en évidence par un mot de passe fort:

UPDATE mysql.user SET Password=PASSWORD('') WHERE User='bacula';
FLUSH PRIVILEGES;

Une fois que vous avez terminé ici, quittez l’invite MySQL:

exit

Activer MariaDB pour démarrer au démarrage. Utilisez la commande suivante pour le faire:

sudo systemctl enable mariadb

Configurer Bacula pour utiliser la bibliothèque MySQL

Par défaut, Bacula est configuré pour utiliser la bibliothèque PostgreSQL. Comme nous utilisons MySQL, nous devons le configurer pour utiliser la bibliothèque MySQL à la place.

Exécutez cette commande:

sudo alternatives --config libbaccats.so

Vous verrez l’invite suivante. Entrez 1 (MySQL):

OutputThere are 3 programs which provide 'libbaccats.so'.

 Selection    Command
-----------------------------------------------
  1           /usr/lib64/libbaccats-mysql.so
  2           /usr/lib64/libbaccats-sqlite3.so
*+ 3           /usr/lib64/libbaccats-postgresql.so

Enter to keep the current selection[+], or type selection number:

Les composants serveur (et client) de Bacula sont maintenant installés. Créons les répertoires de sauvegarde et de restauration.

Créer des répertoires de sauvegarde et de restauration

Bacula a besoin d’un répertoire * backup * pour stocker les archives de sauvegarde et * restore * où les fichiers restaurés seront placés. Si votre système comporte plusieurs partitions, veillez à créer les répertoires sur une partition disposant de suffisamment d’espace.

Créons de nouveaux répertoires à ces deux fins:

sudo mkdir -p /bacula/backup /bacula/restore

Nous devons modifier les autorisations de fichier afin que seul le processus bacula (et un superutilisateur) puisse accéder à ces emplacements:

sudo chown -R bacula:bacula /bacula
sudo chmod -R 700 /bacula

Nous sommes maintenant prêts à configurer Bacula Director.

Configurer Bacula Director

Bacula a plusieurs composants qui doivent être configurés indépendamment pour fonctionner correctement. Les fichiers de configuration se trouvent tous dans le répertoire + / etc / bacula +.

Nous allons commencer par le directeur Bacula.

Ouvrez le fichier de configuration de Bacula Director dans votre éditeur de texte préféré. Nous allons utiliser vi:

sudo vi /etc/bacula/bacula-dir.conf

Configurer la ressource Director

Recherchez la ressource Director et configurez-la pour écouter sur + 127.0.0.1 + (localhost), en ajoutant la ligne + DirAddress + affichée ici:

bacula-dir.conf - Ajouter un directeur DirAddress

Director {                            # define myself
 Name = bacula-dir
 DIRport = 9101                # where we listen for UA connections
 QueryFile = "/etc/bacula/query.sql"
 WorkingDirectory = "/var/spool/bacula"
 PidDirectory = "/var/run"
 Maximum Concurrent Jobs = 1
 Password = "@@DIR_PASSWORD@@"         # Console password
 Messages = Daemon

}

Passons maintenant au reste du fichier.

Configurer les travaux locaux

Un travail Bacula est utilisé pour effectuer des actions de sauvegarde et de restauration. Les ressources de travail définissent les détails de ce que fera un travail particulier, y compris le nom du client, le FileSet à sauvegarder ou à restaurer, entre autres.

Ici, nous allons configurer les travaux qui seront utilisés pour effectuer des sauvegardes du système de fichiers local.

Dans la configuration de Director, recherchez la ressource * Job * portant le nom «BackupClient1» (recherchez «BackupClient1»). Changez la valeur de + Nom + en «Sauvegarder les fichiers locaux», afin que cela ressemble à ceci:

bacula-dir.conf - Renomme le travail BackupClient1

Job {
 Name = ""
 JobDefs = "DefaultJob"
}

Ensuite, recherchez la ressource * Job * nommée «RestoreFiles» (recherchez «RestoreFiles»). Dans ce travail, vous voulez changer deux choses: mettez à jour la valeur de + Nom + sur “RestoreLocalFiles”, et la valeur de + Where + sur “/ bacula / restore”. Ça devrait ressembler à ça:

bacula-dir.conf - Renommer le travail RestoreFiles

Job {
 Name = ""
 Type = Restore
 Client=BackupServer-fd
 FileSet="Full Set"
 Storage = File
 Pool = Default
 Messages = Standard
 Where =
}

Ceci configure le travail RestoreLocalFiles pour restaurer les fichiers vers + / bacula / restore +, le répertoire que nous avons créé précédemment.

Configurer le jeu de fichiers

Un Bacula FileSet définit un ensemble de fichiers ou de répertoires à * inclure * ou * exclure * les fichiers d’une sélection de sauvegarde et sont utilisés par les travaux.

Recherchez la ressource FileSet nommée "Ensemble complet" (elle se trouve sous un commentaire indiquant: "# Liste des fichiers à sauvegarder"). Ici nous allons faire trois changements: (1) Ajouter l’option d’utiliser gzip pour compresser nos sauvegardes, (2) changer le fichier d’inclusion de + / usr / sbin + en + / +, et (3) ajouter `+ Fichier = / bacula + `sous la section Exclure. Avec les commentaires supprimés, cela devrait ressembler à ceci:

bacula-dir.conf - Mise à jour du jeu de fichiers «Ensemble complet»

FileSet {
 Name = "Full Set"
 Include {
   Options {
     signature = MD5

   }
File =
}
 Exclude {
   File = /var/lib/bacula
   File = /proc
   File = /tmp
   File = /.journal
   File = /.fsck

 }
}

Passons en revue les modifications apportées à l’ensemble de fichiers «Ensemble complet». Tout d’abord, nous avons activé la compression gzip lors de la création d’une archive de sauvegarde. Deuxièmement, nous incluons "+ / ", c'est-à-dire la partition racine, à sauvegarder. Troisièmement, nous excluons ` / bacula +` car nous ne voulons pas sauvegarder de manière redondante nos sauvegardes Bacula et nos fichiers restaurés.

Note: If you have partitions that are mounted within /, and you want to include those in the FileSet, you will need to include additional File records for each of them.

N’oubliez pas que si vous utilisez toujours des ensembles de fichiers étendus, tels que «Ensemble complet», dans vos tâches de sauvegarde, vos sauvegardes nécessiteront plus d’espace disque que si vos sélections de sauvegarde sont plus spécifiques. Par exemple, un ensemble de fichiers comprenant uniquement vos fichiers de configuration personnalisés et vos bases de données peut suffire à vos besoins, si vous disposez d’un plan de récupération clair détaillant l’installation des packages logiciels requis et le placement des fichiers restaurés aux emplacements appropriés, tout en n’utilisant qu’une fraction de l’espace disque pour les archives de sauvegarde.

Configurer la connexion au démon de stockage

Dans le fichier de configuration de Bacula Director, la ressource de stockage définit le démon de stockage auquel le directeur doit se connecter. Nous allons configurer le démon de stockage dans un instant.

Recherchez la ressource Storage et remplacez la valeur Address, + localhost +, par le nom de domaine complet (ou adresse IP privée) privé de votre serveur de sauvegarde. Cela devrait ressembler à ceci (remplacez le mot en surbrillance):

bacula-dir.conf - Mettre à jour l’adresse de stockage

Storage {
 Name = File
# Do not use "localhost" here
 Address =                 # N.B. Use a fully qualified name here
 SDPort = 9103
 Password = "@@SD_PASSWORD@@"
 Device = FileStorage
 Media Type = File
}

Cela est nécessaire car nous allons configurer le démon de stockage pour qu’il écoute sur l’interface réseau privée, afin que les clients distants puissent s’y connecter.

Configurer la connexion au catalogue

Dans le fichier de configuration de Bacula Director, la ressource Catalog définit l’emplacement de la base de données que Director doit utiliser et à laquelle se connecter.

Recherchez la ressource de catalogue nommée «MyCatalog» (sous un commentaire intitulé «Service de catalogue générique») et mettez à jour la valeur + dbpassword + pour qu’elle corresponde au mot de passe que vous avez défini pour l’utilisateur bacula MySQL:

bacula-dir.conf - Mise à jour du catalogue dbpassword

# Generic catalog service
Catalog {
 Name = MyCatalog
# Uncomment the following line if you want the dbi driver
# dbdriver = "dbi:postgresql"; dbaddress = 127.0.0.1; dbport =
 dbname = "bacula"; dbuser = "bacula"; dbpassword = ""
}

Cela permettra au directeur Bacula de se connecter à la base de données MySQL.

Configurer le pool

Une ressource de pool définit l’ensemble de stockage utilisé par Bacula pour écrire des sauvegardes. Nous utiliserons les fichiers comme volumes de stockage et nous mettrons simplement à jour l’étiquette afin que nos sauvegardes locales soient correctement étiquetées.

Recherchez la ressource de pool nommée «Fichier» (sous un commentaire «# Définition du pool de fichiers»), puis ajoutez une ligne spécifiant un format d’étiquette. Cela devrait ressembler à ça quand vous aurez fini:

bacula-dir.conf - Pool de mises à jour:

# File Pool definition
Pool {
 Name = File
 Pool Type = Backup

 Recycle = yes                       # Bacula can automatically recycle Volumes
 AutoPrune = yes                     # Prune expired volumes
 Volume Retention = 365 days         # one year
 Maximum Volume Bytes = 50G          # Limit Volume size to something reasonable
 Maximum Volumes = 100               # Limit number of Volumes in Pool
}

Sauvegarder et quitter. Vous avez enfin terminé la configuration de Bacula Director.

Vérifier la configuration du directeur:

Vérifions qu’il n’ya pas d’erreur de syntaxe dans votre fichier de configuration de Director:

sudo bacula-dir -tc /etc/bacula/bacula-dir.conf

S’il n’y a pas de message d’erreur, votre fichier + bacula-dir.conf + ne contient pas d’erreur de syntaxe.

Ensuite, nous allons configurer le démon de stockage.

Configurer le démon de stockage

Notre serveur Bacula est presque configuré, mais nous avons toujours besoin de configurer le démon de stockage. Bacula sait donc où stocker les sauvegardes.

Ouvrez la configuration SD dans votre éditeur de texte préféré. Nous allons utiliser vi:

sudo vi /etc/bacula/bacula-sd.conf

Configurer la ressource de stockage

Trouvez la ressource de stockage. Ceci définit où le processus SD écoutera les connexions. Ajoutez le paramètre + SDAddress + et affectez-le au nom de domaine complet (ou adresse IP privée) privé de votre serveur de sauvegarde:

bacula-sd.conf - met à jour SDAddress

Storage {                             # definition of myself
 Name = BackupServer-sd
 SDPort = 9103                  # Director's port
 WorkingDirectory = "/var/lib/bacula"
 Pid Directory = "/var/run/bacula"
 Maximum Concurrent Jobs = 20

}

Configurer le périphérique de stockage

Recherchez ensuite la ressource Device nommée «FileStorage» (recherchez «FileStorage») et mettez à jour la valeur de + Archive Device + pour qu’elle corresponde à votre répertoire de sauvegardes:

bacula-sd.conf - met à jour le périphérique d’archivage

Device {
 Name = FileStorage
 Media Type = File
 Archive Device =
 LabelMedia = yes;                   # lets Bacula label unlabeled media
 Random Access = Yes;
 AutomaticMount = yes;               # when device opened, read it
 RemovableMedia = no;
 AlwaysOpen = no;
}

Sauvegarder et quitter.

Vérifier la configuration du démon de stockage

Vérifions qu’il n’ya pas d’erreur de syntaxe dans votre fichier de configuration du Storage Daemon:

sudo bacula-sd -tc /etc/bacula/bacula-sd.conf

S’il n’y a pas de message d’erreur, votre fichier + bacula-sd.conf + ne contient pas d’erreur de syntaxe.

Nous avons terminé la configuration de Bacula. Nous sommes prêts à redémarrer les composants du serveur Bacula.

Définir les mots de passe des composants Bacula

Chaque composant Bacula, tel que Director, SD et FD, possède des mots de passe utilisés pour l’authentification entre composants. Vous avez probablement remarqué des espaces réservés lors de la consultation des fichiers de configuration. Il est possible de définir ces mots de passe manuellement, mais comme vous n’avez pas besoin de les connaître, nous allons exécuter des commandes pour générer des mots de passe aléatoires et les insérer dans les différents fichiers de configuration de Bacula.

Ces commandes génèrent et définissent le mot de passe Director. Le + bconsole + se connecte au directeur, il a donc aussi besoin du mot de passe:

DIR_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
sudo sed -i "s/@@DIR_PASSWORD@@/${DIR_PASSWORD}/" /etc/bacula/bacula-dir.conf
sudo sed -i "s/@@DIR_PASSWORD@@/${DIR_PASSWORD}/" /etc/bacula/bconsole.conf

Ces commandes génèrent et définissent le mot de passe du Storage Daemon. Le directeur se connecte au SD, il a donc également besoin du mot de passe:

SD_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
sudo sed -i "s/@@SD_PASSWORD@@/${SD_PASSWORD}/" /etc/bacula/bacula-sd.conf
sudo sed -i "s/@@SD_PASSWORD@@/${SD_PASSWORD}/" /etc/bacula/bacula-dir.conf

Ces commandes génèrent et définissent le mot de passe du File Daemon (logiciel client Bacula) local. Le directeur se connecte à cette FD, il a donc aussi besoin du mot de passe:

FD_PASSWORD=`date +%s | sha256sum | base64 | head -c 33`
sudo sed -i "s/@@FD_PASSWORD@@/${FD_PASSWORD}/" /etc/bacula/bacula-dir.conf
sudo sed -i "s/@@FD_PASSWORD@@/${FD_PASSWORD}/" /etc/bacula/bacula-fd.conf

Nous sommes maintenant prêts à démarrer nos composants Bacula!

Démarrer les composants Bacula

Démarrez Bacula Director, Storage Daemon et File Daemon avec les commandes suivantes:

sudo systemctl start bacula-dir
sudo systemctl start bacula-sd
sudo systemctl start bacula-fd

S’ils ont tous démarré correctement, exécutez ces commandes pour qu’elles démarrent automatiquement au démarrage:

sudo systemctl enable bacula-dir
sudo systemctl enable bacula-sd
sudo systemctl enable bacula-fd

Testons que Bacula fonctionne en exécutant un travail de sauvegarde.

Tester le job de sauvegarde

Nous utiliserons la console Bacula pour exécuter notre premier travail de sauvegarde. S’il fonctionne sans problème, nous saurons que Bacula est configuré correctement.

Maintenant, entrez dans la console avec cette commande:

sudo bconsole

Cela vous mènera à l’invite de la console Bacula, indiquée par une invite + * +.

Créer une étiquette

Commencez par émettre une commande + label +:

label

Vous serez invité à entrer un nom de volume. Entrez le nom de votre choix:

Enter new Volume name:

Ensuite, sélectionnez le pool que la sauvegarde doit utiliser. Nous allons utiliser le pool «Fichier» que nous avons configuré précédemment, en entrant «2»:

Select the Pool (1-3):2

Exécuter manuellement le travail de sauvegarde

Bacula sait maintenant comment nous voulons écrire les données pour notre sauvegarde. Nous pouvons maintenant exécuter notre sauvegarde pour vérifier son bon fonctionnement:

run

Vous serez invité à sélectionner le travail à exécuter. Nous voulons exécuter le travail “BackupLocalFiles”, entrez donc “1” à l’invite:

Select Job resource (1-3):1

À l’invite de confirmation «Exécuter le travail de sauvegarde», passez en revue les détails, puis entrez «oui» pour exécuter le travail:

yes

Vérifier les messages et le statut

Après avoir exécuté un travail, Bacula vous dira que vous avez des messages. Les messages sont générés par les travaux en cours.

Vérifiez les messages en tapant:

messages

Les messages doivent indiquer «Aucun enregistrement de travail de sauvegarde complet précédent n’a été trouvé» et que le travail de sauvegarde a démarré. S’il y a des erreurs, quelque chose ne va pas et elles devraient vous indiquer pourquoi le travail n’a pas été exécuté.

Une autre façon de voir le statut du travail consiste à vérifier le statut du directeur. Pour ce faire, entrez cette commande à l’invite bconsole:

status director

Si tout fonctionne correctement, vous devriez voir que votre travail est en cours d’exécution. Quelque chose comme ça:

Output - status director (Running Jobs)Running Jobs:
Console connected at 09-Apr-15 12:16
JobId Level   Name                       Status
======================================================================
    3 Full    BackupLocalFiles.2015-04-09_12.31.41_06 is
====

Lorsque votre travail est terminé, il passe à la section "Travaux terminés" du rapport d’état, comme suit:

Output - status director (Terminated Jobs)Terminated Jobs:
JobId  Level    Files      Bytes   Status   Finished        Name
====================================================================
    3  Full    161,124    877.5 M         09-Apr-15 12:34 BackupLocalFiles

Le statut «OK» indique que le travail de sauvegarde s’est exécuté sans problème. Toutes nos félicitations! Vous avez une copie de sauvegarde de l’ensemble complet de votre serveur Bacula.

L’étape suivante consiste à tester le travail de restauration.

Tester le job de restauration

Maintenant qu’une sauvegarde a été créée, il est important de vérifier qu’elle peut être restaurée correctement. La commande + restore + nous permettra de restaurer les fichiers sauvegardés.

Exécuter tout le travail de restauration

Pour démontrer, nous allons restaurer tous les fichiers de notre dernière sauvegarde:

restore all

Un menu de sélection apparaît avec de nombreuses options permettant d’identifier le jeu de sauvegarde à restaurer. Comme nous n’avons qu’une seule sauvegarde, sélectionnons l’option 5 «Sélectionnez la sauvegarde la plus récente»:

Select item (1-13):5

Comme il n’y a qu’un seul client, le serveur Bacula, il sera automatiquement sélectionné.

L’invite suivante vous demandera quel FileSet vous souhaitez utiliser. Sélectionnez "Ensemble complet", qui devrait être 2:

Select FileSet resource (1-2):2

Cela vous déposera dans une arborescence de fichiers virtuelle avec toute la structure de répertoires que vous avez sauvegardée. Cette interface de type shell permet aux commandes simples de marquer et de désélectionner les fichiers à restaurer.

Parce que nous avons spécifié que nous voulions “tout restaurer”, chaque fichier sauvegardé est déjà marqué pour la restauration. Les fichiers marqués sont identifiés par un caractère + * +.

Si vous souhaitez affiner votre sélection, vous pouvez naviguer et répertorier les fichiers avec les commandes «ls» et «cd», marquer les fichiers pour restauration avec «marquer», et désélectionner les fichiers avec «désélectionner». Une liste complète des commandes est disponible en tapant «help» dans la console.

Lorsque vous avez terminé votre sélection de restauration, continuez en tapant:

done

Confirmez que vous souhaitez exécuter le travail de restauration:

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

Vérifier les messages et le statut

Comme pour les tâches de sauvegarde, vous devez vérifier les messages et l’état de Director après avoir exécuté une tâche de restauration.

Vérifiez les messages en tapant:

messages

Il devrait y avoir un message indiquant que le travail de restauration a démarré ou s’est terminé avec le statut «Restaurer OK». S’il y a des erreurs, quelque chose ne va pas et elles devraient vous indiquer pourquoi le travail n’a pas été exécuté.

Là encore, vérifier le statut de directeur est un excellent moyen de connaître l’état d’un travail de restauration:

status director

Lorsque vous avez terminé la restauration, tapez + exit + pour quitter la console Bacula:

exit

Vérifier la restauration

Pour vérifier que le travail de restauration a réellement restauré les fichiers sélectionnés, vous pouvez consulter le répertoire + / bacula / restore + (défini dans le travail “RestoreLocalFiles” dans la configuration de Director):

sudo ls -la /bacula/restore

Vous devriez voir des copies restaurées des fichiers dans votre système de fichiers racine, à l’exclusion des fichiers et des répertoires répertoriés dans la section "Exclure" du travail "RestoreLocalFiles". Si vous tentiez de récupérer d’une perte de données, vous pouvez copier les fichiers restaurés à leurs emplacements appropriés.

Supprimer les fichiers restaurés

Vous voudrez peut-être supprimer les fichiers restaurés pour libérer de l’espace disque. Pour ce faire, utilisez cette commande:

sudo -u root bash -c "rm -rf /bacula/restore/*"

Notez que vous devez exécuter cette commande + rm + en tant que root, car la plupart des fichiers restaurés appartiennent à root.

Conclusion

Vous avez maintenant une configuration de base Bacula qui peut sauvegarder et restaurer votre système de fichiers local. L’étape suivante consiste à ajouter vos autres serveurs en tant que clients de sauvegarde afin que vous puissiez les récupérer en cas de perte de données.

Le prochain tutoriel vous montrera comment ajouter vos autres serveurs distants en tant que clients Bacula: https://www.digitalocean.com/community/tutorials/how-to-back-up-a-centos-7-server-with- bacula [Comment sauvegarder un serveur CentOS 7 avec Bacula].

Related