Nesse post, será mostrado como instalar o Bacula utilizando o banco de dados MySQL
Obtendo o bacula
No endereço http://www.bacula.org/en/?page=downloads vocês encontrarão várias versões do Bacula para download: tarballs, rpms, debpkgs, win32_64. Nesse tutorial, vamos fazer no método Warrior’s Mode: Compilando \o/
wget http://ufpr.dl.sourceforge.net/project/bacula/bacula/5.0.3/bacula-5.0.3.tar.gz tar xvf bacula-5.0.3.tar.gz cd bacula-5.0.3
Compilando
Para a compilação, primeiro devemos satisfazer as dependências do Bacula:
zypper in gcc gcc-c++ libopenssl-devel mysql-community-server libmysqld-devel make
Se quiserem instalar com o BAT (Bacula Administration Tool), adicionem o libqt4-devel.
Caso você queira compilar para um outro sistema operacional, procure por pacotes similares. O que no openSUSE costumamos usar o -devel como sufixo na nomenclatura, em algumas distros utiliza-se o lib* como prefixo.
Enfim, continuando…
Com as dependências instaladas, utilizaremos alguns parâmetros na compilação. Eu costumo colocar-los em um arquivo .sh, acho que fica bem melhor do que fazer aquele catatau de parâmetros em uma linha. Fica uma merda pra gerenciar, porém quando colocamos em uma arquivo, ai a coisa muda! Um exemplo:
O que estamos definindo aqui: –with-mysql = Usaremos o MySQL como database. O pacote libmysqld-devel é pré-requisito; –with-openssl = Permite que seja utilizado TLS na comunicação entre o cliente-servidor –with-fd-password = Senha do File daemon –with-sd-password = Senha do Storage Daemon –with-dir-password = Senha do Director Daemon Eu estou definindo a senha logo aqui porque não gosto das senhas geradas automaticamente. Fico completamente azuado com aquela porrada de caracteres…
Se o seu Bacula for instalado em uma máquina com interface gráfica, instale o pacote devel do QT(libqt4-devel) e adicione o parâmetro –with-bat ao configure. Como isso geralmente não é trivial, não usaremos. Depois da execução do ./configure, teremos a resposta do bacula:
Configuration on Tue Jun 14 11:44:49 BRT 2011:
Host: i686-pc-linux-gnu — suse 11.4 Bacula version: Bacula 5.0.3 (04 August 2010) Source code location: . Install binaries: /sbin Install libraries: /usr/lib Install config files: /etc/bacula Scripts directory: /etc/bacula Archive directory: /tmp Working directory: /var/bacula/working PID directory: /var/run Subsys directory: /var/lock/subsys Man directory: ${datarootdir}/man Data directory: /usr/share Plugin directory: /usr/lib C Compiler: gcc Linux) C++ Compiler: /usr/bin/g++ Linux) Compiler flags: -g -O2 -Wall -fno-strict-aliasing -fno-exceptions -fno-rtti Linker flags: Libraries: -lpthread -ldl Statically Linked Tools: no Statically Linked FD: no Statically Linked SD: no Statically Linked DIR: no Statically Linked CONS: no Database type: MySQL Database port: Database lib: -L/usr/lib -lmysqlclient_r -lz Database name: bacula Database user: bacula
Director User: Director Group: Storage Daemon User: Storage DaemonGroup: File Daemon User: File Daemon Group:
SQL binaries Directory /usr/bin
Large file support: yes Bacula conio support: no readline support: no TCP Wrappers support: no TLS support: yes Encryption support: yes ZLIB support: yes enable-smartalloc: yes enable-lockmgr: no bat support: no enable-gnome: no enable-bwx-console: no enable-tray-monitor: no client-only: no build-dird: yes build-stored: yes Plugin support: yes AFS support: no ACL support: no XATTR support: yes Python support: no Batch insert enabled: no
Verifique e veja se é isso mesmo que você quer. Caso algo esteja incorreto, altere o parâmetro e execute novamente o ./configure. Depois de tudo estar nos trinks, é hora do make && make install
Enquanto ele compila, você pode ir assistir um videozin e talz… Ah, falando nisso, pra quem curte Dragon Ball Z, o pessoal do Gastação TV estão fazendo a tradução do DBZ Abridged! Saca o primeiro episódio:
SHHHOOOOWWWWWW!!!
Enfim, voltando
Após o make install, todos os arquivos estarão nos seus devidos lugares e prontos para rodarmos os scripts para criação de base de dados, tabelas e permissões na tabela. Então, já que vamos utilizar o banco de dados, que tal inciarmos o MySQL?
Connecting to Director linux-sn99:9101 1000 OK: linux-sn99-dir Version: 5.0.3 (04 August 2010) Enter a period to cancel a command. *
Congratulations!!! Seu Bacula está pronto para ser configurado!!!
IF NO…. Caso ele não conecte e fique apenas tentando conexão, é porque sua configuração com o MySQL ainda está pendente. Verifique o arquivo /etc/bacula/bacula-dir.conf, procure pela linha do Catalog.
Se você definiu uma senha para o usuário do bacula, será necessário informar aqui também.:
Sempre é bom verificar também o arquivo de log. Ele fica integrado ao /var/log/messages Não esqueça de ver as portas. O comando netstat -napt poderá te ajudar.