LabExposed

BSD, Linux e software livre em geral.

Bacula: Breve Introdução + Instalação No FreeBSD

| Comments

bacula_logoEste texto é uma breve introdução do Bacula, um ótimo software open source de gerenciamento de backup em rede. É uma reciclagem de um tutorial meu que fiz sobre a instalação dele no FreeBSD.

A ideia é que eu possa dar continuidade na série de tutoriais sobre o Bacula.

Mas o que é o Bacula ???

Bacula é um conjunto de programas que permite você (ou o administrador de sistema) administrar backup, restauração e verificação dos dados de computadores em uma rede de sistemas mistos.

Em termos técnicos, o Bacula é um Programa de Backup em rede.

Como ele funciona ?

bacula_diagrama

O Bacula é formado por componentes, conforme mostra a figura acima.

Director Daemon
Este serviço é responsavel pela administração de todos os processos de backup, restaure, verificação e arquivamento. O Administrador de Sistema usa o Director Daemon para efetuar agendamentos de backup e para recuperar arquivos.
Console Manager
Este programa ajuda o administrador ou o usuário a se comunicar com o Director Daemon, pode ser executado em qualquer computador da rede e em sistemas operacionais diferentes, atualmente existem 3 versões do Console Manager: em texto puro (TTy), em interface gráfica usando bibliotecas do Gnome e uma usando bibliotecas wxWidgets (tanto em formato Unix quanto em Windows).
File Daemon
Este serviço (ou programa cliente) é o software que é instalado na máquina que vai ser protegida pelo backup, ou seja, ele vai ser responsável por enviar os arquivos solicitados pelo Director Daemon pela rede. Ele também é responsavel em administrar a gravação dos arquivos de restauração comandados pelo Director Daemon. Existem versões do File Daemon para diferentes sistemas operacionais: Linux, *BSD, Unix, Windows (9x,NT,2000,XP,2003)e Macintosh(OSX).
Storage Daemon
Este serviço consiste em administrar a gravação e restauração dos dados e atributos dos backups fisicamente em midias apropriadas, essas podem ser volume de dados gravados diretamente no disco rigido ou alguma mídia removivel (Fita DAT, DVD, CD, etc…)
Catalog
O serviço de catalogo é o programa responsável por manter uma indexação de todos os arquivos que são armazenados no backup e gerar uma base de dados dos volumes gerenciados pelo Director Daemon. O Catalog agiliza a busca de um arquivo no backup na hora que o administrador de sistema necessita efetuar uma restauração, como ele mantém uma base de indexação dos arquivos gravados, a busca por um arquivo no meio dos volumes é mais rápida.

Uma documentação completa do Bacula, pode ser encontrada no site oficial que fica no endereço: http://www.bacula.org

Instalando o Bacula no FreeBSD

Inicialmente iremos precisar do FreeBSD 7.2 instalado e com a rede configurada corretamente e com acesso internet para instalar-mos os pacotes.

PS.: Estarei documentando a instalação dos pacotes de 2 formas: via ports e via pkg_add. Procure informações no Handbook(pt-BR) para mais informações.

Via Ports

entre no diretorio

cd /usr/ports/sysutils/bacula2-server

Configure as opções de compilação do bacula-server com o comando:

make confige marque as opções conforme descrito abaixo:

 [X] SQLITE3     Use SqLite-3 database instead of SqLite-2
 [ ] MYSQL       Use MySQL database instead of SqLite
 [ ] POSTGRESQL  Use PostgreSQL database instead of SqLite
 [X] MTX         Install mtx for control of autochanger devices
 [X] OPENSSL     Enable OpenSSL for encrypted communication

execute o comando de compilação e instalação

make install allAgora faça a instalação do bacula-client

cd ../bacula2-client
make config

Marque as opções apropriadas para sua necessidade

 [X] WXCONSOLE     Build with wxGTK based GUI console
 [ ] GNOMECONSOLE  Build with GNOME based GUI console
 [ ] DOCS          Install documention
 [X] OPENSSL       Enable OpenSSL for encrypted communication

Execute a compilação e instalação

make install all

Via pkg_add

Para instalar o bacula-server através do pkg_add, basta executar o comando abaixo:

v>
  <pre>pkg_add -vr <span>bacula</span>2-server

pkg_add -vr bacula2-client

<h3>
  Configurando o <span>Bacula</span>
</h3>

<div>
  <p>
    Vá para o diretorio
  </p>

  <pre>cd /usr/local/share/<span>bacula</span>/</pre>

  <p>
    e execute os seguintes comandos para criar a estrutura de banco de dados
  </p>

  <pre>./create_sqlite_database

make_sqlite_tables

  <p>
    Agora vamos para o diretorio de configuração userland
  </p>

  <pre>cd /usr/local/etc</pre>

  <p>
    e vamos configurar inicialmente o Director daemon.<br /> Faça uma cópia do arquivo sample para a produção e abra o arquivo:
  </p>

  <pre>cp bacula-dir.conf.sample bacula-dir.conf

vi bacula-dir.conf

  <p>
    Altere as opções conforme suas necessidades.<br /> <strong>Aconselho à você dar uma lida na documentação do <span>Bacula</span>, ela esta bem completa e explicativa, estarei aqui somente exemplificando o uso do <span>Bacula</span>, mas isso depende de cada um em criar uma politica de backup viavél, por isso, volto a insistir em consultar a documentação do <span>Bacula</span> para você mesmo criar a politica de backup que seja viavél para sua rede.</strong>
  </p>

  <p>
    Copie agora o arquivo sample de configuração do Storage Daemon:
  </p>

  <pre>cp /usr/local/etc/bacula-sd.conf.sample /usr/local/etc/bacula-sd.conf

vi /usr/local/etc/bacula-sd.conf

  <p>
    Configure o arquivo de acordo com a configuração do Director daemon e de acordo com o tipo de midia que você vai usar para guardar seus backups.
  </p>

  <p>
    O arquivo contém vários exemplos de utilização de midias.
  </p>

  <p>
    Configure agora o arquivo de configuração do Console Manager
  </p>

  <pre>cp /usr/local/etc/bconsole.conf.sample /usr/local/etc/bconsole.conf

vi /usr/local/etc/bconsole.conf

  <p>
    Configure o arquivo para conectar o console ao seu Director Daemon.
  </p>

  <p>
    Configure a inicialização do daemons no seu freebsd
  </p>

  <pre>echo 'bacula_dir_enable="YES"' &gt;&gt; /etc/rc.conf

echo ‘bacula_sd_enable=“YES”’ >> /etc/rc.conf

  <p>
    Vamos agora configurar a parte cliente (File Daemon) de onde serão obtidos os arquivos a serem guardados no backup.
  </p>

  <p>
    Configure o arquivo de configuração de acordo com seu Director Daemon, lembrando de manter a senha a mesma entre os arquivos.
  </p>

  <pre>cp /usr/local/etc/bacula-fd.conf.sample /usr/local/etc/bacula-fd.conf

vi /usr/local/etc/bacula-fd.conf

  <p>
    Configure a inicialização do client
  </p>

  <pre>echo 'bacula_fd_enable="YES"' &gt;&gt; /etc/rc.conf</pre>

  <p>
    Agora faça este mesmo procedimento em todas as máquinas que você quer proteger no seu backup, baixe do site do <span>bacula</span> (<a title="http://sourceforge.net/project/showfiles.php?group_id=50727" rel="nofollow" href="http://sourceforge.net/project/showfiles.php?group_id=50727">http://sourceforge.net/project/showfiles.php?group_id=50727</a>) de acordo com o sistema operacional da máquina.</div> <h3>
      Vamos iniciar os daemons !
    </h3>

    <pre>/usr/local/etc/rc.d/<span>bacula</span>-dir start

/usr/local/etc/rc.d/bacula-sd start /usr/local/etc/rc.d/bacula-fd start

    <p>
      Para gerenciar o <span>Bacula</span> você podera executar o Console Manager de qualquer máquina.
    </p>

    <p>
      Espero que com esse tutorial você consiga gerenciar os backups da sua rede confortavelmente !
    </p>

    <p>
      Qualquer dúvida é só me contactar !
    </p>

    <p>
      Abraços.
    </p>

    <p>
      <span class='st_facebook_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Facebook'></span><span class='st_twitter_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Twitter'></span><span class='st_linkedin_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='LinkedIn'></span><span class='st_email_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Email'></span><span class='st_sharethis_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='ShareThis'></span><span class='st_fblike_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Facebook Like'></span><span class='st_plusone_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Google +1'></span><span class='st_pinterest_buttons' st_title='Bacula: Breve Introdução + Instalação no FreeBSD' st_url='http://www.luizgustavo.pro.br/blog/2009/09/30/bacula-breve-introducao/' displayText='Pinterest'></span>
    </p>

Comments