Bacula
Sommaire
Présentation
Bacula est un logiciel de sauvegarde, de vérification et de restauration de fichiers en mode client-serveur dans un réseau, distribué en Open Source. Ses composants serveurs tournent sur Linux, Solaris ou FreeBSD. Ses composants clients existent pour de nombreuses autres plateformes, dont MacOS et Windows.
Plus d'informations sur Wikipedia : https://fr.wikipedia.org/wiki/Bacula_(logiciel)
Installation
Créer le dépôt Bacula
Importer la clé GPG :
wget https://www.bacula.org/downloads/Bacula-4096-Distribution-Verification-key.asc rpm --import Bacula-4096-Distribution-Verification-key.asc rm Bacula-4096-Distribution-Verification-key.asc
Remplir le formulaire de contact à l'adresse : https://www.bacula.org/bacula-binary-package-download/
Cela aura pour effet d'envoyer automatiquement un mail avec un lien pointant vers le dépôt Bacula avec une clé dédiée dans l'URL.
Exemple : http://bacula.org/packages/123azerty456 où 123azerty456
est la clé créée pour le compte du formulaire précédemment rempli.
Grâce à la clé obtenue, créer le fichier /etc/yum.repos.d/bacula.repo
avec le contenu suivant :
[Bacula-Community] name=CentOS - Bacula - Community baseurl=http://www.bacula.org/packages/123azerty456/rpms/9.6.5/el7/x86_64/ enabled=1 protect=0 gpgcheck=1
Reconstruire ensuite le cache de yum :
yum makecache
Installation des paquets
Si la base sur laquelle Bacula se connectera est MySQL, lancer la commande suivante pour installer le serveur Bacula :
yum install bacula-mysql
Cela aura pour effet d'installer également la dépendance bacula-libs
.
Construction de la base de données
Sans paramétrage supplémentaire, les scripts de construction de la base de données considéreront que le moteur de la base de données est MySQL.
Ainsi, pour une base de données MySQL, lancer la commande suivante pour créer la base de données bacula :
/opt/bacula/scripts/create_bacula_database -uroot -p
Remplacer -uroot par un utilisateur avec les droits suffisants si besoin est.
Exemple de retour :
[root@myserver ~]# /opt/bacula/scripts/create_bacula_database -uroot -p Enter password: Creating mysql database Creation of bacula database succeeded.
Créer ensuite les tables avec la commande :
/opt/bacula/scripts/make_bacula_tables -uroot -p
Exemple de retour :
[root@myserver ~]# /opt/bacula/scripts/make_bacula_tables -uroot -p Enter password: Making mysql tables Creation of Bacula MySQL tables succeeded.
Enfin, pour créer un utilisateur bacula et lui donner les droits sur la base précédemment créée, éditer le fichier /opt/bacula/scripts/grant_mysql_privileges
et donner à la variable db_password la valeur du mot de passe désiré. Ensuite, lancer la commande suivante :
/opt/bacula/scripts/grant_bacula_privileges
Exemple de retour :
[root@myserver ~]# /opt/bacula/scripts/grant_bacula_privileges -uroot -p Enter password: Granting mysql privileges Created MySQL database user: bacula ... Privileges for user bacula granted on database bacula.
Configuration
Editer le fichier /opt/bacula/etc/bacula-dir.conf
et modifier la variable dbpassword de la section Catalog pour quelle corresponde au mot de passe de l'utilisateur de la base de données créé précédemment.
Exemple :
... # Generic catalog service Catalog { Name = MyCatalog dbname = "bacula"; dbuser = "bacula"; dbpassword = "mygreatpassword" } ...
Lancement des services
Pour lancer le service principal côté serveur (Director), qui est le coeur de la sauvegarde, lancer la commande suivante :
systemctl start bacula-dir.service
Pour lancer le service auxiliaire(Storage Daemon), qui permet de gérer différents types de stockage, lancer la commande suivante :
systemctl start bacula-sd.service
Pour lancer la service agent côté client (File Daemon), lancer la commande suivante :
systemctl start bacula-fd.service