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].