Instalação do cliente Bacula no Debian Jessie/Wheezy/Squeeze

Abaixo temos alguns script que podem ser utilizado para preparar o sistema antes da instalação dos pacotes de dependências para o bacula.

Prepare o seu sistema com o seguinte script http://wiki.douglasqsantos.com.br/doku.php/confinicialsqueeze_en para que não falte nenhum pacote ou configuração.

Prepare o seu sistema com o seguinte script http://wiki.douglasqsantos.com.br/doku.php/confinicialwheezy_en para que não falte nenhum pacote ou configuração.

Prepare o seu sistema com o seguinte script http://wiki.douglasqsantos.com.br/doku.php/confinicialjessie_en para que não falte nenhum pacote ou configuração.

Vamos mandar atualizar os repositórios

aptitude update

Agora precisamos mandar instalar as dependências

aptitude install libreadline-dev libreadline6-dev libreadline6-dev libreadline6 libreadline6 \
libreadline6-dev zlib1g-dev libcurl4-openssl-dev build-essential libssl-dev -y

Agora precisamos criar os diretórios para o bacula

mkdir -p /var/lib/bacula
mkdir -p /var/run/bacula
mkdir -p /var/log/bacula
mkdir -p /etc/bacula/scripts
mkdir -p /etc/bacula/keys/clients

Agora vamos criar um usuário para o bacula

useradd -s /bin/false -d /var/lib/bacula bacula

Agora vamos ajustar as permissões dos diretórios para o bacula

chown -R bacula:bacula /var/lib/bacula /var/run/bacula /var/log/bacula /etc/bacula/

Agora vamos acessar o diretório que vai armazenar os fontes do bacula

cd /usr/src

Agora vamos obter o bacula

wget -c  http://wiki.douglasqsantos.com.br/Downloads/bacula/bacula-7.0.5.tar.gz

Agora vamos desempacotar ele

tar -xzvf bacula-7.0.5.tar.gz

Agora vamos acessar o diretório dos fontes

cd bacula-7.0.5

Agora vamos preparar a configuração para a compilação do bacula

FLAGS="-g -Wall" ./configure --enable-client-only --with-openssl=yes --enable-smartalloc \
--with-working-dir=/var/lib/bacula --with-pid-dir=/var/run/bacula --with-logdir=/var/log/bacula  \
--with-scriptdir=/etc/bacula/scripts --with-readline=/usr/include/readline  --disable-conio --enable-lockmgr

Agora vamos mandar instalar o bacula

make && make install && make install-autostart

Agora vamos criar um diretório para armazenar um backup dos arquivos do bacula

mkdir /usr/src/olds

Agora vamos copiar os arquivos

cp -Rfa /etc/bacula /usr/src/olds

Agora vamos remover os daemons do bacula-sd e o bacula-dir da inicialização pois como é um cliente precisamos somente do bacula-fd

insserv -r -f bacula-sd
insserv -r -f bacula-dir
rm -rf /etc/init.d/bacula-sd
rm -rf /etc/init.d/bacula-dir

Agora vamos ajustar o script de inicialização do bacula-fd

vim /etc/init.d/bacula-fd
[...]
PIDFILE=/var/run/bacula/${NAME}.${BPORT}.pid

#Insira as linhas abaixo
if [ ! -d /var/run/bacula ]; then
        mkdir -p /var/run/bacula
        chown bacula:bacula /var/run/bacula
fi
[...]

Agora vamos copiar a configuração do nosso cliente do servidor bacula, vamos considerar que o cliente já foi criado no servidor conforme:

rsync -avzPH root@ip_bacula:/etc/bacula/keys/clients/$(hostname)/$(hostname).tar.xz /etc/bacula/

Agora vamos acessar o diretório que está armazenando a configuração

cd /etc/bacula

Agora vamos desempacotar a nossa configuração

tar -xJvf $(hostname).tar.xz

Agora vamos remover os arquivos que não são mais necessários caso o cliente esteja utilizando criptografia.

rm -rf $(hostname).tar.xz
rm -rf /etc/bacula/keys/$(hostname)-fd.cert
rm -rf /etc/bacula/keys/$(hostname)-fd.key

Agora vamos ajustar as permissões do bacula

chown -R bacula:bacula  /etc/bacula

Agora vamos reiniciar o serviço do bacula-fd

/etc/init.d/bacula-fd restart

Agora vamos remover os fontes que não são mais necessários

rm -rf /usr/src/bacula-7.0.5*

Agora já podemos testar a conexão com o servidor bacula

bconsole
Connecting to Director ip_bacula:9101
1000 OK: 1 bacula-dir Version: 7.0.5 (28 July 2014)
Enter a period to cancel a command.
*

Vamos consultar o status do nosso cliente no bconsole

*status client=linux02-fd
Connecting to Client linux02-fd at 172.17.0.93:9102

scisjplwiki-fd Version: 7.0.5 (28 July 2014)  x86_64-unknown-linux-gnu debian 7.6
Daemon started 26-Ago-14 12:23. Jobs: run=3 running=0.
 Heap: heap=1,396,736 smbytes=326,635 max_bytes=593,310 bufs=85 max_bufs=165
 Sizes: boffset_t=8 size_t=8 debug=0 trace=0 mode=0,0 bwlimit=0kB/s

Running Jobs:
Director connected at: 27-Ago-14 11:22
No Jobs running.
====

Terminated Jobs:
 JobId  Level    Files      Bytes   Status   Finished        Name
===================================================================
*

Referências