Escolar Documentos
Profissional Documentos
Cultura Documentos
Instalação do Bacula
A instalação do Bacula através do gerenciador de pacotes é bastante simples, basta executar o comando
abaixo que serão instaladas todas as dependências, inclusive o MySQL, que é o banco de dados padrão do
programa. Também há suporte ao banco de dados Postgres, porém devem ser especificados os pacotes,
mas não será abordado nesse tutorial.
Será instalado o bacula director, file daemon e storaged daemon. Para a instalação parcial deverão ser
instalados o bacula-director-common, bacula-fd e bacula-sd respectivamente.
Configuração do Bacula
O Bacula é um sistema distribuído, sendo formado por 3 daemons: director, storage daemon e file daemon.
Cada daemon "executa" independentemente, podendo estar localizado em máquinas separadas. O file
daemon deve estar instalado em todas as máquinas clientes.
Bacula Storage:
Responsável pelo armazenamento, leitura e escrita em fita, disco ou outros dispositivos. Deve ser instalado
onde os arquivos serão armazenados, podendo ser instalado em mais de uma máquina.
Este é o cliente do Bacula. Deve ser instalado em todas as máquinas onde serão realizados os backups.
Configuração do director
Altere as configurações de acordo com a necessidade/ambiente.
Director { #definições do gerenciador/director
Name = ubuntuu-dir #nome do gerenciador/director
DIRport = 9101 #porta de comunicação do director
QueryFile = "/etc/bacula/scripts/query.sql"
WorkingDirectory = "/var/lib/bacula"
PidDirectory = "/var/run/bacula"
Maximum Concurrent Jobs = 10 #máximo de conexões simultâneas
Password = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS" #senha cliente terminal/console
Messages = Daemon #tipo de mensagens a serem geradas no log
}
1
Name = "DefaultJob"#nome do padrão
Type = Backup #tipo de tarefa (backup/restore)
Level = Incremental #tipo de backup (incremental/diferencial/full)
Client = ubuntuu-fd #cliente
FileSet = "Full Set" #nome do conjunto de arquivos
Schedule = "Diario" #tipo de agendamento
Storage = File #tipo de armazenamento (file/tape)
Messages = Standard #padrão de mensagens geradas (log)
Pool = File #tipo de pool utilizado
Priority = 10 #prioridade
Write Bootstrap = "/var/lib/bacula/%c.bsr"
}
Schedule { #agendamento
Name = "Diario" #nome do agendamento
Run = Full sun-sat at 23:10 #definição do agendamento (Full de domingo (sunday) a sabado (saturday) as
23:10)
}
2
Storage { #definição do dispositivo de armazenamento
Name = File #nome do dispositivo
Address = 10.113.254.246 #ip do dispositivo de armazenamento (Storaged Daemon)
SDPort = 9103 #porta de comunicação com a storaged
Password = "jKNZOR8Kl8nSuHFWi6H9txhEyTqODE3gW" #senha dispositivo (Storaged Daemon)
Device = FileStorage #dispositivo (Storaged Daemon)
Media Type = File #tipo de armazenamento
}
Console {
Name = ubuntuu-mon
Password = "8UZ_p8sbi38XUmDGT5I3tt4egyM7uTpDx"
CommandACL = status, .status
}
3
# SDAddress = 0.0.0.0 #ip da máquina
}
Módulos Perl:
Fonte:
# wget http://sourceforge.net/projects/bacula/files/bacula/5.0.2/bacula-gui-5.0.2.tar.gz/download
Após baixar o arquivo, deve-se desempacotar o mesmo e entrar na pasta da aplicação Bweb:
Após descompactado, deve-se copiar as bibliotecas Bweb Perl para a o caminho do perl5, através dos
comandos:
# perl Makefile.PL
# make install
Em seguida, devem ser copiados os arquivos do programa Bweb para a pasta cgi do servidor.
# cd ..
4
# mkdir -m 755 /usr/lib/cgi-bin/bweb
# install -m 755 -o root -g root bweb/cgi/*.pl /usr/lib/cgi-bin/bweb
Agora cria-se o arquivo de configuração através do seguinte comando, atribuindo em seguida o usuário do
servidor web apache como proprietário do mesmo.
Em seguida deve ser criada a pasta para os templates da aplicação e copiados os arquivos
correspondentes através dos seguintes comandos:
# mkdir -p /usr/share/bweb/tpl/en
# install -m 644 -o root -g root bweb/lang/en/tpl/*.tpl /usr/share/bweb/tpl/en
Para finalizar, copia-se os elementos gráficos da aplicação dentro da pasta Bweb (que deve ser criada), no
document root do servidor web.
# mkdir /var/www/bweb
# install -m 644 -o root -g root bweb/html/*.{js,png,css,gif,ico,html} /var/www/bweb
Configurar o Bweb
Após instalado a aplicação Bweb, deve ser realizada a configuração do arquivo /etc/bacula/bweb.conf com
os seguintes parâmetros:
$VAR1 = bless( {
'enable_security' => 0,
'graph_font' => '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf',
'config_file' => '/etc/bacula/bweb.conf',
'password' => 'senhamysql',
'dbi' => 'DBI:mysql:database=bacula',
'user' => 'bacula',
'error' => '',
'debug' => 0,
'stat_job_table' => 'Job',
'display_log_time' => 0,
'lang' => 'en',
'wiki_url' => '',
'name' => undef,
'bconsole' => '/usr/bin/bconsole -n -c /etc/bacula/bconsole.conf',
'fv_write_path' => '/var/spool/bweb',
'template_dir' => '/usr/share/bweb/tpl',
'enable_security_acl' => 0,
'email_media' => 'frsl@localhost',
'default_age' => '7d'
}, 'Bweb::Config' );
Obs.: O arquivo de configuração deve ser adaptado de acordo com as configurações do ambiente que está
sendo instalada a aplicação.
http://your-server/bweb
5
Obs.: Se o arquivo de configuração não for editado, será apresentada uma tela inicial para que se possa
configurar o mesmo através da interface.
Módulos Extjs:
Para baixar os arquivos do modulo extjs, utilize o wget e em seguida descompacte os arquivos dentro da
pasta 'ext' do 'document root' do servidor web.
# wget http://www.sencha.com/deploy/ext-2.3.0.zip
Descompactar em /var/www/bweb/ext:
# cd /bweb/script
# mysql -u root bacula < bweb-mysql.sql -p
Será solicitada a senha de root para acesso ao banco. Após a inserção da senha, as tabelas do Bacula
serão atualizadas.
Instalação do Brestore
Para instalar o Brestore basta acessar a pasta baixada anteriormente para instalar o Bweb no passo 7 e
acessar a pasta 'brestore'. Após acessar a pasta, deve-se instalar a interface glade do brestore na pasta
/usr/share/brestore através dos comandos:
# cd bacula-gui-5.0.2/brestore
# mkdir -p /usr/share/brestore
# install -m 644 -o root -g root brestore.glade /usr/share/brestore
# install -m 755 -o root -g root brestore.pl /usr/bin
Configuração do Brestore
Edite o arquivo "/usr/lib/cgi-bin/bweb/bresto.pl" e habilitar a seguinte variável com o valor '1'.
my $bresto_enable = 1;
$parameters = {
'mozilla' => 'mozilla',
'bconsole' => '/usr/local/bin/bconsole -n -c /etc/bacula/bconsole.conf',
'bweb' => 'http://localhost/cgi-bin/bweb/bweb.pl',
'connection_string' => 'DBI:mysql:database=bacula;host=127.0.0.1;port=3306',
'username' => 'bacula',
6
'password' => 'xxxx',
'bsr_dest' => 'file://var/tmp',
'debug' => 0,
'use_ok_bkp_only' => 1,
'default_restore_job' => 'restore'
};
http://your-server/bweb/bresto.html
No exemplo citado nesse tutorial, todos os módulos do Bacula foram instalados na mesma máquina,
inclusive o banco de dados (MySQL) e o servidor web (Apache2). Ao instalar em máquinas diferentes,
observar de configurar corretamente as senhas de acesso aos daemons e IPs das máquinas
correspondentes.
O IP da máquina utilizada foi 10.113.254.246. Nos testes houveram alguns problemas na utilização do nome
localhost e do IP de loopback '127.0.0.1', que foram sanados utilizando o IP da máquina.
Acessando via terminal
Para acessar o bacula via terminal basta digitar o comando:
$ bconsole
Para verificar os comandos disponíveis basta digitar a tecla tab duas vezes. Abaixo há um exemplo listando
o status do cliente "desktop-fd" através do comando "status".
Acessando o Bweb
Para acessar Bacula via interface web basta digitar o endereço http://ip-do-server/bweb no navegador. Será
exibida a página do Bweb:
7
Acessando o Brestore
Para acessar o módulo de recuperação do Bacula via interface web basta digitar o endereço http://ip-do-
server/bweb/bresto.html no navegador ou ir até o menu jobs do Bweb e clicar no link Web Restore, como
pode ser observado na figura a abaixo. Será exibida a página do Brestore: