Bacula: añadir un cliente
Una vez que tenemos nuestro sistema en marcha procedemos a añadir un cliente más, el primero de otros muchos que tendremos en el futuro.
En el cliente
- Instalar el paquete bacula-client
- Crear un archivo de configuración
/etc/bacula/bacula-fd.conf
Verificar la síntaxis:
# bacula-fd -t -c /etc/bacula/bacula-fd.conf
Poner en marcha el demonio
# /etc/init.d/bacula-fd start
El archivo de configuración necesita dos cosas básicamente:
- Definir el director de copias que tiene acceso a él
- Indicar la dirección IP correcta en la que vamos a escuchar
Un ejemplo de este archivo sería:
1 # 2 # Configuration file for bacula file server daemon 3 # 4 5 # 6 # List Directors who are permitted to contact this File daemon 7 # 8 Director { 9 Name = servermachine-dir 10 Password = "XXXXX" 11 } 12 13 # 14 # "Global" File daemon configuration specifications 15 # 16 FileDaemon { 17 Name = clientmachine-fd 18 FDport = 9102 19 WorkingDirectory = /var/lib/bacula 20 Pid Directory = /var/run/bacula 21 Maximum Concurrent Jobs = 20 22 FDAddress = 192.168.0.22 23 } 24 25 # Send all messages except skipped files back to Director 26 Messages { 27 Name = Standard 28 director = servermachine-dir = all, !skipped, !restored 29 }
Qué debemos salvar
En este artículo se dan unas cuantas pistas y guías sobre qué conviene incluir en las copias de una máquina de tipo escritorio.
En el director de copias
En esta parte de la red añadir un cliente es más complejo debido a la cantidad de información que tenemos que proporcionar:
- Cliente con el que conectar.
Notas anteriores
Clientes
Los clientes son las máquinas de las que se extraen archivos para crear copias de seguridad. Por tanto se deben definir en la configuración del director.
Una forma de hacerlo es creando un archivo aparte para ellos con el nombre del cliente, como en /etc/bacula/sarajevo.conf e incluirlos en el director mediante la directiva @:
@/etc/bacula/sarajevo.conf
y en este archivo se especifica, tranquilamente, todo lo que tenga que ver con el cliente, como en el siguiente ejemplo:
1 # 2 # Cliente: Sarajevo 3 # 4 Catalog { 5 Name = Sarajevo 6 dbname = sarajevo 7 user = bacula 8 password = "" 9 } 10 11 Client { 12 Name = sarajevo-fd 13 Address = sarajevo.venexma.int 14 Catalog = Sarajevo 15 Password = "XXXXX" 16 } 17 18 Job { 19 Name = "Sarajevo Semanal" 20 Enabled = yes 21 Type = Backup 22 Level = Full 23 Client = sarajevo-fd 24 FileSet = "Archivos de Sarajevo" 25 Storage = Disco 26 Schedule= "Semanal" 27 Messages= Standard 28 Pool = Workstation 29 } 30 31 Job { 32 Name = "Sarajevo restore" 33 Type = Restore 34 Client = sarajevo-fd 35 FileSet = "Archivos de Sarajevo" 36 Storage = Disco 37 Messages= Standard 38 Pool = Workstation 39 } 40 41 FileSet { 42 Name = "Archivos de Sarajevo" 43 Include { 44 Options { 45 compression = GZIP; 46 signature = MD5; 47 verify = pins5; 48 onefs = yes; 49 } 50 File = /etc 51 File = /root 52 File = /home/victor 53 } 54 Exclude { 55 File = /home/victor/downloads 56 File = /home/victor/Videos 57 File = /home/victor/mp3 58 } 59 } 60
donde estamos indicando:
- Catálogo donde registramos toda la información de las copias; hemos decidido utilizar uno por cliente puesto que no son muchos
- Datos de conexión con el cliente, como el nombre de la máquina y la contraseña
- El trabajo de copia propiamente dicho
- La selección de archivos