Bacula

De Instituto de Física - UFRGS

Introdução

Bacula é um sistema de backup que daemoniza uma amálgama de ferramentas padrões de backup afim de facilitar a gestão. Existem três módulos:


Servidor: É quem efetua o agendamento dado pelo usuário e executa o trabalho de cópia/compactação conforme agendado.

Cliente: Sâo máquinas que recebem backup, elas autorizam o servidor a efetuar o backup e, se necessário, limitam diretórios autorizados.

Consoles: Máquinas autorizadas a gerenciar o agendamento, bem como os jobs, as cotas de backup e reservas de espaço.


No Storage do IF esses três daemons coexistem em uma mesma máquina, Curie, os diretórios que receberão backup são acessados por NFS e o console é acessado na própria Curie por SSH.

Diretórios

A Curie efetua backups de todo o conteúdo da /mnt, de forma que discos e diretórios que venham a receber backup devem ser montados em um diretório dentro da /mnt. É importante que a opção "no_root_squash" no nfs da máquina exportadora esteja habilitada, caso contrário, será impossível efetuar backup de dados privativos. Fazendo o mesmo se tornar incompleto ou até mesmo disfuncional.

Agendas

As agendas(schedules) se encontram no arquivo /etc/bacula/bacula-dir.conf


Atualmente há duas agendas

1- Backup Completo Mensal - Backup Complementar Semanal - Backup Diferencial Diário.

2- Backup Completo Diário

Tipos de Backup

Caso haja necessidade de criar nova agenda, os tipos de backups são os seguintes:

Full = Copia todos os arquivos do diretório

Complementar = Arquivos defasados são substituídos por novos.

Diferencial = Arquivos e diretórios defasados não são substituídos, mas apenas as diferenças binárias são substituídas.

Como a ordem sugere, há diferenças de velocidade entre esses tipos de backups. Full não é necessariamente o mais seguro, uma vez que sendo uma operação extremamente pesada e demorada, é mais sujeita à falhas. Complementar é um meio termo de segurança e quase sempre é suficiente. Diferencial é o método mais rápido. É importante lembrar que por simples razões de lógica, independente da agenda, o primeiro backup de um certo volume será Full.

bconsole

Na curie esse console pode ser acessado, há um menu de opções que é demostrado com o comando "help". Lá pode-se alterar configurações de sistema. Bem como verificar logs e alertas. No momento que esse texto é escrito(14/11/2012) não existe nenhuma razão para seus parâmetros serem alterados.

Backup Manual

No bconsole, basta digitar run BackupEnterprise level=x Onde x={Diff,Inc,Full}

Restaurando Backup

No bconsole digita-se restore, haverá uma lista de opções, em geral 5 é a opção mais usada(restaurar backup mais recente). Caso queira backup de outra data, deve-se usar as outras opções dadas pela mesma lista, onde haverá instruções para buscar o JobID apropriado. Tendo selecionado o JobID desejado, haverá uma linha de comando onde podes selecionar os arquivos em um shell, dentro do backup da pasta /mnt, que contém cada diretório. Usando o comando #mark y quantas vezes forem necessárias, onde y é um grupo de arquivos e diretórios desejados(toda seleção é recursiva), pode-se selecionar os arquivos e diretórios desejados. Após o grupo desejado de arquivos e diretórios terem sido selecionados, basta usar o comando #done