Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Virgínia Tavares
1. Conceitos importantes
1.1.1. Retenção: período pelo qual determinada informação não pode ser apagada do
banco de dados ou da mídia de "backup" – a não ser por especial intervenção humana.
1.1.2. Expiração: término do prazo de retenção.
1.1.3. “Job”: trabalho de “backup” ou de “restore”. No caso do “Bacula”
1.1.4. Volume: divisão (espécie de caixa) reservada para o armazenamento dos dados de
“backup”. Compartimento lógico no qual os “backups” serão armazenados. Pode ser criado
em fitas, HD, etc., sendo que cada fita somente poderá conter 01 (um) volume lógico.
1.1.5. “Pool” (grupo): conjunto de volumes com características semelhantes (ex.: tempo de
retenção). De igual sorte, trata-se de um dispositivo de segurança (se o “backup” utilizando
determinada pool é agendado não poderão ser utilizados volumes de outra). O volume
herda as características da pool.
1.1.6. “FileSet”: lista de diretórios (ou arquivos) que serão "backupeados". Pode ser utilizado
para um ou vários servidores. Geralmente deve excluir diretórios desnecessários (/proc,
/tmp). No Bacula, são suportadas expressões regulares para excluir ou incluir arquivos com
nomes e/ou terminações específicas.
1.1.10. Catálogo: é o responsável por armazenar um índice de todos os arquivos
armazenados pela ferramenta de "backup". Fica armazenada em um banco de dados. A
vantagem do Bacula, é que ele suporta 3 bancos diferentes (e livres) para armazenamento
do catálogo.
1.1.16. "backup" Cruzado: “backup” realizado remotamente, de uma máquina para outra (ou
para um “storage” independente, através da rede.
2. Tipos de Backup
1.2.1. “Full” – faz cópia de todos os arquivos definidos na configuração da ferramenta,
independente que os arquivos da lista ("file set") terem sido alterados ou não.
1.2.2. Diferencial – faz o “backup” apenas dos arquivos modificados a partir do último
“backup full”.
1.2.3. Incremental – faz cópia apenas dos arquivos modificados a partir do último “backup”
diferencial.
1.2.4. Cópia – cópia secundária ou complementar de determinado volume de “backup”
(redundante). Muito utilizada para “backup off-site”. O volume copiado é mantido intacto.
1.2.5. Migração – os dados de determinado volume são migrados para outro, sendo que o
primeiro deixa de existir.
3. Funcionamento Bacula
Bacula Director Daemon (DIR)– Pode ser considerado o centro nervoso do Bacula,
pois e a aplicação responsável por iniciar os agendamentos, autenticar as conexões
de rede e realizar as tarefas de backup e restauração de dados.
Bacula Storage Daemon (SD) – Pode ser considerado o coração do Bacula, pois e a
aplicação responsável por armazenar em disco rígido ou fita magnética os dados de
backup.
Bacula File Daemon (FD) – Pode ser considerado o corpo do Bacula, pois é a
aplicação responsável pela leitura, escrita e verificação dos arquivos a serem
realizado as rotinas de backup e restauração de dados.
4. Instalação e configuração
4.1 Diretor e Sd
Rename Director:
Director { # define myself
Name = NOME_DIRETOR
DIRport = 9101 # where we listen for UA connections
QueryFile = "/etc/bacula/scripts/query.sql"
WorkingDirectory = "/var/lib/bacula"
PidDirectory = "/var/run/bacula"
Maximum Concurrent Jobs = 1
Password = "yQB1N3T46bRr1AhTd-dOnT0vdzYDj3LV-" # Console
password
Messages = Daemon
DirAddress = 127.0.0.1
}
Rename Client:
Client {
Name = diretor #NOME-CLIENTE-DIRETOR
Address = IPDIRETOR
FDPort = 9102
Catalog = MyCatalog
Password = "senha-cliente" # password for FileDaemon
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = yes # Prune expired Jobs/Files
}
Rename JobDefs:
JobDefs {
Name = "DefaultJob"
Type = Backup
Level = Incremental
Client = diretor
FileSet = "Full Set"
Schedule = "WeeklyCycle"
Storage = File
Messages = Standard
Pool = File
Priority = 10
Write Bootstrap = "/var/lib/bacula/%c.bsr"
}
******************TESTE:
sudo bconsole
status
ALL
● apt-get update
● apt-get install bacula-fd
● sudo vi /etc/bacula/bacula-fd.conf
Configure director:
Director {
Name = NOME_DIRETOR
Password = "senha-cliente"
}
Configure FileDaemon:
FileDaemon { # this is me
Name = NOMEDOCLIENTE # NOME DO CLIENTE
FDport = 9102
WorkingDirectory = /var/lib/bacula
Pid Directory = /var/run/bacula
Maximum Concurrent Jobs = 20
# FDAddress = 127.0.0.1
}
● sudo bacula-fd -tc /etc/bacula/bacula-fd.conf
● sudo service bacula-fd restart
Esta parte é feita na máquina do administrador do backup (onde vai ser salvo)
● sudo vi /etc/bacula/bacula-dir.conf
Configure client:
Client {
Name = NOMEDOCLIENTE
Address = IP/FQDN DO CLIENTE
FDPort = 9102
Catalog = MyCatalog
Password = "senha-cliente"
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = yes # Prune expired Jobs/Files
}
Configure fileset:
FileSet {
Name = "cliente_set"
Include {
Options {
signature = MD5
}
File = /etc
File = /opt
}
Exclude {
File = /.journal
File = /.fsck
}
}
#no exclude pastas que não vão ser salvas
Create job:
Job {
Name = "Backup do cliente Debian"
Client = NOMEDOCLIENTE
JobDefs = "DefaultJob"
FileSet = cliente_set
}
● sudo bacula-dir -tc /etc/bacula/bacula-dir.conf
● sudo service bacula-director rest0art
clientes:
PROD1
PROD2 (Coreos)
DEATHMASK
backup em 2 hds:
HD1: Diff and incremental all Prod1, Prod2, DeathMask
HD2: FULL PROD2
schedule:
SUN MON TUE WED THU FRI SAT
6.Referências
https://tisemestresse.blogspot.com/2016/07/bacula-instalar-no-ubuntu.html
http://tutoriaisgnulinux.com/2015/04/28/_backup-com-bacula-primeiro-cliente-linux-1-
9/