Bacula

De Wiki IES Marianao. Departament Informàtica
La revisió el 12:31, 13 oct 2011 per Alex (Discussió | contribucions) (Post instal·lació)

Dreceres ràpides: navegació, cerca

web bacula

Bacula-logo.png


Conceptes

Nomenclatura i definicions:

  • Job: Tasca. Un còpia (backup) o una restauració (restore). Un Job incou
    • FileSet: Conjunt de fitxers (directoris, inclusions, exclusions). Què
    • Client: Qui
    • Schedule: Planificació. Quan
    • Pool: On
  • Volum: Objecte físic d'emmagatzematge (Fitxer o Cinta). S'agrupen en Pool.
  • Label: Etiqueta del Volum
  • Catalog: Base de dades (MySQL per defecte, transparent a l'usuari)


Els dimonis:

  • Director (DIR). Centralitza la gestió (Servidor).
  • Storage Daemon (SD). Gestiona l'emmagatzematge físic, pot ubicar-se en la mateixa màquina que el servidor
  • File Daemon (FD). Gestiona els sistema de fitxers dels clients.


L'entorn:

  • BAT (Bacula Admin Tool). GUI
  • Consola (bconsole). Terminal [1]


Instal·lació, programes i fitxers

Es pot instal·lar des de repositoris

El servidor

$sudo apt-get install bacula


  • bconsole --> Accés consola terminal administració (/etc/bacula/bconsole.conf)
  • bacula-dir --> Dimoni director (/etc/bacula/bacula-dir.conf)
  • bacula-sd --> Dimoni emmagatzematge (/etc/bacula/bacula-sd.conf)
  • bacula-fd --> Dimoni client. (/etc/bacula/bacula-fd.conf)


L'entorn gràic de gestió (BAT)


$sudo apt-get install bacula-console-qt


  • bat --> GUI. (/etc/bacula/bat.conf)


Tots els dimonis tenen un script a /etc/init.d/


Post instal·lació

La instal·lació des de repositoris dona problemes amb la base de dades, cal crear-la a ma.


  • Pas 1. Crear BBDD, l'usuari i els permisos

$mysql -u root -p

mysql>create database bacula;

mysql>grant all on bacula.* to 'bacula'@'%' identified by 'marianao';

$sudo /usr/share/bacula-director/make_mysql_tables -u bacula -p -b bacula


  • Pas 2

Modificar SD (Gestor d'emmagatzematge) per apuntar a un directori existent, aquest directori ha de tenir permisos per a l'usuari bacula

Archive Device = /opt/bacula

Modificar el job “RestoreFiles” per apuntar a un directori concret

Where = /opt/bacula/bacula-Restore

Etiquetar un Volum (Label, des de bat o bconsole). Aquest volum estarà associat a un Pool (Default o File per exemple, depenent de la definició de Job)

Testing configuration

$bacula-dir -t -c bacula-dir.conf


Configuració (Exemples)

Exemple FileSet

  1. List of files to be backed up

FileSet {

Name = "Full Set"

Include {

Options {

signature = MD5

}

File = /home

}

Exclude {

File = /home/alumne/.VirtualBox

}

}

  1. Client (File Services) to backup

Client {

Name = alumne-desktop-fd

Address = localhost

FDPort = 9102

Catalog = MyCatalog

Password = "3roXDMch0mcG3Igpag3MtzBZ2XdotTxPh" # password for FileDaemon

File Retention = 30 days # 30 days

Job Retention = 6 months # six months

AutoPrune = yes # Prune expired Jobs/Files

}

Schedule {

Name = "WeeklyCycle"

Run = Full 1st sun at 23:05

Run = Differential 2nd-5th sun at 23:05

Run = Incremental mon-sat at 23:05

}

JobDefs {

Name = "DefaultJob"

Type = Backup

Level = Incremental

Client = alumne-desktop-fd

FileSet = "Full Set"

Schedule = "WeeklyCycle"

Storage = File

Messages = Standard

Pool = File

Priority = 10

Write Bootstrap = "/var/lib/bacula/%c.bsr"

}

  1. Define the main nightly save backup job
  1. By default, this job will back up to disk in /nonexistant/path/to/file/archive/dir

Job {

Name = "BackupClient1"

JobDefs = "DefaultJob"

}