Está en la página 1de 8

MANUAL INSTALACION BACULA

Bacula se compone de varios elementos (servicios) separados que trabajan en


conjunto. Director Storage Console File Daemon Client

De estos servicios los 3 primeros se instalan en el servidor y el ultimo se instala


en cada cliente en el cual se requiera efectuar el backup.

Instalacin en servidor LINUX


Primero hay que determinar sobre que base de datos se va a trabajar, para esto
tenemos MySql Postgres Sqlite De acuerdo con la base de datos seleccionada
revisamos si ya la tenemos instalada, si no pues procedemos a la instalacin de la
misma, en nuestro caso se eligi MySql. Nota: el proceso de instalacin en Debian
se puede efectuar con aptitude o con apt-get

Instalamos el Director
Paquetera deb $ sudo aptitude install bacula-director-mysql # instala el director
con soporte MySql $ sudo aptitude install bacula-director-pgsql #instala el
director con soporte postgres $ sudo aptitude install bacula-director-sqlite3
#instala el director con soporte sqlite 3 Paquetera rpm $ sudo rpm -i bacula-
director-mysql # instala el director con soporte MySql $ sudo rpm -i bacula-
director-pgsql #instala el director con soporte postgres $ sudo rpm -i bacula-
director-sqlite3 #instala el director con soporte sqlite 3 Algunas distribuciones
rpm tienen otro paquete administrador de software llamado YUM $ sudo yum -i bacula-
director-mysql # instala el director con soporte MySql $ sudo yum -i bacula-
director-pgsql #instala el director con soporte postgres $ sudo yum -i bacula-
director-sqlite3 #instala el director con soporte sqlite 3

Instalamos el Storage
Paquetera deb $ sudo aptitude install bacula-sd Paquetera rpm $ sudo rpm -i
bacula-sd # instala el storage

# instala el storage

Algunas distribuciones rpm tienen otro paquete administrador de software llamado


YUM $ sudo yum -i bacula-sd # instala el storage

Instalamos el Console
Paquetera deb $ sudo aptitude install bacula-console # instala la consola
Paquetera rpm $ sudo rpm -i bacula-console # instala la consola
Algunas distribuciones rpm tienen otro paquete administrador de software llamado
YUM $ sudo yum -i bacula-console # instala la consola

Configuracin
para la configuracin del sistema, cada servicio cuenta con un archivo de
configuracin:

Servicio Director Storage Console File Daemon Client

Archivo Configuracin bacula-dir.conf bacula-sd.conf bconsole.conf bacula-fd.conf

Para el caso de los archivos del servidor estos se encuentran en /etc/bacula/ en la


siguiente imagen se puede apreciar la relacin entre los diferentes archivos del
sistema

el archivo mas importante y (complicado) es el bacula-dir.conf, el cual contiene la


configuracin del servidor, as como de los clientes y la storage. Ejemplo bacula-
dir.conf # Inicio bacula-dir.conf # aqu se define el servidor Director { Name =
respaldo-dir #Nombre que se le da al director DIRport = 9101 QueryFile =
"/etc/bacula/scripts/query.sql" WorkingDirectory = "/var/lib/bacula" PidDirectory =
"/var/run/bacula" Maximum Concurrent Jobs = 20 Password = "123456" #clave de la
consola Messages = Daemon #DirAddress = localhost
} #Definicin del Storage Storage { Name = File Address = 192.168.0.75 SDPort =
9103 Password = "123456" Device = FileStorage Media Type = File }

#Esto es la ip del servidor donde almacenaremos los datos

#Datos de la base de datos Catalog { #la conexin va de acuerdo con el tipo de base
de datos utilizada, esta es para MySql Name = MyCatalog dbname = bacula; DB Address
= "localhost" ; user = root; password = "123456789" } #Sistema de logs Messages
{ Name = Standard mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\)
%r\" -s \"Bacula: %t %e of %c %l\" %r" operatorcommand = "/usr/lib/bacula/bsmtp -h
localhost -f \"\(Bacula\) %r\" -s \"Bacula: Intervention needed for %j\" %r" mail
=admin@linuxadmin.es = all, !skipped #Deberis configurar el exim4 para que os
envi el log a una cuenta externa de correo operator = root@localhost = mount
console = all, !skipped, !saved append = "/var/lib/bacula/log" = all, !skipped }
Messages { Name = Daemon mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\
(Bacula\) %r\" -s \"Bacula daemon message\" %r" mail = tu-mail@tu-dominio.es = all,
!skipped console = all, !skipped, !saved append = "/var/lib/bacula/log" = all, !
skipped } #crear los pool a usar, pendiente definir si se puede crear varios pool y
asociar clientes a pool especficos Pool { Name = Default #nombre del pool, esta
referenciado en el cliente Pool Type = Backup Recycle = yes AutoPrune = yes Volume
Retention = 365 days Label Format = Default #Es la etiqueta del archivo de
backup? } Pool { Name = Sistemas Pool Type = Backup Recycle = yes AutoPrune = yes
Volume Retention = 365 days Label Format = Sistemas } #Consola #nombre del pool,
esta referenciado en el cliente

#Es la etiqueta del archivo de backup?


Console { Name = respaldo-dir Password = "123456" CommandACL = status, .status }

#es el nombre del Director

#Programacin a usar en los backups Schedule { Name = "CicloSemanal" Run =


Incremental mon-sat at 01:00 Run = Full sun at 01:00 } Schedule { Name = "Diario"
Run = Full sun-sat at 23:10 } Schedule { Name = "Pruebas" Run = Incremental at mon-
sat 09:30 }

#De lunes a sabado backup a la 1 de la madrugada #Domingo backup entero a la 1 de


la madrugada

#Toda la semana a las 11:10 PM

#Lunes a sabado a las 9:30 AM

#Para cada cliente (equipo a hacer backup) Client { Name = sistemas-2-fd #nombre
del servicio que se creo en el cliente Address = 192.168.0.101 #ip del equipo
cliente FDPort = 9102 Catalog = MyCatalog Password = "123456" File Retention = 30
days Job Retention = 6 months AutoPrune = yes } FileSet { Name = "Humberto-1"
#nombre del conjunto de archivos Include { File = c:/RESPALDOS File = "c:/pruebas
para respaldos" #los directorios con espacios en el nombre, deben estar entre
Options { signature = MD5; IgnoreCase = yes; exclude = yes WildFile = *.avi
#tipos de archivo a excluir de la copia WildFile = *.mp3 } } Exclude { File =
c:/RESPALDOS/antiguo #excluye subdirectorios que estn en los directorios a
copiar } } JobDefs { Name = "copia de Humberto-1" Enabled = yes Type = Backup Level
= Incremental Client = sistemas-2-fd FileSet = "Humberto-1" Schedule =
"CicloSemanal" #Definicin del trabajo, es lo que se ve en la consola #tipo backup
Full, incremental, diferencial #nombre del servicio en el cliente #nombre del
conjunto de archivos (seccin de arriba) #programacin asignada al backup
Storage = File Messages = Standard Pool = Default Priority = 10 }

#pool a usar (por definir que hace exactamente)

Job { Name = "Humberto-1" #Trabajo en si, le dejo el nombre del FileSet JobDefs =
"copia de Humberto-1" #Definicin de trabajo a usar Write Bootstrap =
"/var/lib/bacula/Humberto-1.bsr" #el final siempre es el nombre del job con
extensin bsr } Job { #este job es para la restauracin de archivos Name =
"Restauracion de Humberto-1" #Nombre del job, es lo que se ve en la consola Type =
Restore client = sistemas-2-fd #nombre del servicio en el cliente FileSet =
"Humberto-1" #FileSet a usar Storage = File Pool = Default #pool a usar Messages =
Standard Where = c:/Restaurado #Restaura en la misma maquina cliente } # termina la
definicin del cliente #Repetir las secciones Client, FileSet, JobDefs, Job (backup
y restore) para cada cliente #Fin del bacula-dir.conf Configuracin el Storage
#inicio archivo bacula-sd.conf Storage { Name = respaldadora-sd SDPort = 9103
WorkingDirectory = "/var/lib/bacula" Pid Directory = "/var/run/bacula" Maximum
Concurrent Jobs = 20 SDAddress = 192.168.0.75 } Director { Name = respaldo-dir
Password = "123456" }

#nombre del Storage #puerto del director -dejar por defecto-

#Direccion ip del equipo servidor

#nombre del Director

#Definicin de los dispositivos de copia Device { Name = FileStorage #nombre del


dispositivo Media Type = File Archive Device = /home/datos #ruta donde se van a
almacenar las copias LabelMedia = yes; Random Access = yes; AutomaticMount = yes;
RemovableMedia = no; AlwaysOpen = no; } Messages { Name = Standard director =
respaldo-dir = all
} #Fin del bacula-sd.conf Configuracion del Console #inicio bconsole.conf Director
{ Name = respaldo-dir DIRport = 9101 address = localhost Password = "123456" } #Fin
de bconsole.conf

#nombre del Director #clave en la seccion console del director

La instalacin y configuracin del cliente (File Daemon Client), depende del


sistema operativo Windows Descargar la versin (32 o 64) de acuerdo al sistema
operativo, adems tener en cuenta que debe ser la misma versin instalada en el
servidor, para as evitar inconvenientes. Iniciamos el instalador y lo primero es
que solo seleccionamos Client

Siguiente y aparece
en esta pantalla escribimos el nombre del Director, y terminamos la instalacion,
luego de instalado, en inicio se encuenra el grupo bacula, aqu hacemos click en
Archivo de Configuracion, en este archivo buscamos la seccion Director y
cambiamos la clave por la usada en el servidor. Para el cliente en Linux Paquetera
deb $ sudo aptitude install bacula-client Paquetera rpm $ sudo rpm -i bacula-
client

# instala el cliente

# instala el cliente

Algunas distribuciones rpm tienen otro paquete administrador de software llamado


YUM $ sudo yum -i bacula-client # instala el cliente en /etc/bacula editamos el
archivo bacula-fd.conf buscamos la seccin del Director y cambiamos la clave por la
que tenemos en el servidor Nota: si el conectar la consola con un cliente recin
configurado, y despus de revisar los archivos de configuracin no se encuentra la
razn, entonces hay que revisar que el puerto 9102 del equipo cliente este abierto,
en caso de estar cerrado hay que abrir el puerto y reiniciar los servidos en el
servidor y el cliente.