Nous allons voir dans cet article comment mettre en oeuvre une solution de sauvegarde d'entreprise Opensource. Bacula est très proche du mode de fonctionnement de l'outil commercial TSM. Il permet de réaliser des sauvegardes de fichiers.

Sommaire

Lies utiles

Installation et configuration

Pré-requis

Partitionner le serveur

voici les partition :

  • /data : contient bacula et PostreSQL
  • /backup : contient les pools de sauvegarde

Une base de données PostgreSQL :

  • Une base de données bacula
  • Un compte utilisateur bacula

Les flux réseau à ouvrir dans les firewall :

  • Director -> File server : 9102
  • Director -> Storage server : 9103
  • Director -> Database server : 5432
  • PC Admin -> Director : 9101
  • File Server -> Storage server : 9103

Installation

Installation des dépendances

aptitude install build-essential  
aptitude install openssl  
aptitude install python  
aptitude install ncurses-dev  
aptitude install python-all-dev  
aptitude install libcurl4-openssl-dev  
aptitude install postgresql-server-dev-9.3  
ln -s /usr/bin/make /usr/bin/gmake  

Installation de Bacula

addgroup bacula  
useradd -r -g bacula bacula  
mkdir /data/bacula  
mkdir /data/src  
chown -R bacula:bacula /data/bacula  
chmod -R 700 /data/bacula  
chown -R bacula:bacula /backup/bacula  
chmod 700 -R /backup/bacula  
cd /data/src/  
wget http://downloads.sourceforge.net/project/bacula/bacula/5.2.12/bacula-5.2.12.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fbacula%2Ffiles%2Fbacula%2F5.2.12%2F&ts=1359656834&use_mirror=netcologne  
tar -xvzf bacula-5.2.12.tar.gz  
cd bacula-5.2.12  
./configure --prefix=/data/bacula --enable-batch-insert --enable-smartalloc --enable-largefile --with-postgresql --with-openssl --with-python --enable-conio --with-dir-user=bacula --with-dir-group=bacula --with-sd-user=bacula --with-sd-group=bacula --with-fd-user=bacula --with-fd-group=bacula
make  
make install  
make install-autostart  

Création du shéma de la base de données

cd /data/bacula/etc/  
nano make_postgresql_tables  

Entrez la valeur suivante :

db_name=bacula  

Puis lancez le script :

./make_postgresql_tables -U admin -W

Configuration

Création des objets

cp bacula-dir.conf bacula-dir.conf.org  
cp bacula-sd.conf bacula-sd.conf.org  

Tester les fichiers de configuration

/data/bacula/sbin/bacula-dir -t -c /data/bacula/etc/bacula-dir.conf
/data/bacula/sbin/bacula-fd -t -c /data/bacula/etc/bacula-fd.conf
/data/bacula/sbin/bacula-sd -t -c /data/bacula/etc/bacula-sd.conf
/data/bacula/sbin/bconsole -t -c /data/bacula/etc/bconsole.conf

Gestion de Bacula

Le client

Le client nommé File Deamon doit toujours être lancé en root afin de pouvoir sauvegarder l'ensemble des fichiers de la machine.