Nesse post não vou explicar como o Bacula funciona e nem como fazer a sua configuração para backup. Planejo fazer isso mais a frente. Agora é só referente a instalação do Bacula

Para esse tutorial a configuração foi um servidor CentOs 7.4, com o Bacula 5.2.13, o Postgres 9.2.23 e o Webmin 1.870 para administração gráfica. As versões são as atuais nos repositórios no dia dessa postagem.


Primeiramente, desabilitei o SELinux e o Firewall para melhor instalação.

Caso não queira desabilitar o firewall, as portas utilizadas são:

Webmin: 10000

Bacula: 9101, 9102, 9103

Postgres: 5432

 

 

Instalando as dependências

Aqui estão as dependências do Webmin, instalação do Vim para edição dos arquivos e do wget para Download de arquivos.

 

 yum -y install wget vim perl-Authen-PAM perl-DBD-Pg perl-DBI perl-IO-Tty perl-Sys-Syslog perl-Digest-MD5 tcp_wrappers tcp_wrappers-devel

 

Adicionar repositório do Webmin

Para a instalação do Webmin, vamos adicionar seu repositório oficial. Caso queira fazer a instalação sem ser por repositório, basta ir ao site do Webmin e seguir o passo-a-passo deles.

cat < /etc/yum.repos.d/Webmin.repo
 
[Webmin]
 
name=Webmin Distribution Neutral
 
mirrorlist=https://download.webmin.com/download/yum/mirrorlist
 
enabled=1
 
EOF

 

Baixando as chaves do Webmin

wget http://www.webmin.com/jcameron-key.asc
rpm --import jcameron-key.asc

 

Instalando o Bacula, Postgres e Webmin

yum -y install postgresql-devel postgresql-server bacula-director bacula-storage bacula-client bacula-console webmin

 

Configurando o Banco de Dados e Iniciando o Postgres

Nesse passo, vamos fazer a configuração do Postgres criando seu banco de dados e adicionando na inicialização do Centos7

postgresql-setup initdb
systemctl start postgresql
systemctl enable postgresql

 

Configuração do Bacula no Postgres

Com o banco de dados criado, precisamos criar as tabelas do bacula do nosso banco Postgres, assim como seu usuário e dar as permissões para esse usuário poder escrever no banco. Nesse momento vamos usar o usuário postgres para fazer esse processo.
O Bacula já disponibiliza scripts para esse processo. No Centos7, eles ficam em /usr/libexec/bacula/

 

su postgres
/usr/libexec/bacula/create_bacula_database
/usr/libexec/bacula/make_bacula_tables
/usr/libexec/bacula/grant_bacula_privileges

 

Ainda com o usuário postgres, vamos acessar o banco de dados e mudar a senha do usuário bacula.
Onde se lê senhabacula, coloque a senha que você deseja utilizar, mas lembre-se de usar as aspas simples no começo e no final da senha.

psql bacula
bacula=# alter user bacula with password 'senhabacula';
bacula=# \q

 

Agora sim podemos voltar ao nosso usuário

exit

Editando o Bacula Director 

Essa configuração do bacula-dir é necessária para que o Bacula possa conectar ao Postgres. Nela, vamos passar o endereço do Banco de Dados, o usuário e a senha criada no passo anterior.

vim /etc/bacula/bacula-dir.conf

aproximadamente na linha 235

original:  dbname = “bacula”; dbuser = “bacula”; dbpassword = “”

configurado:  dbname = “bacula”; dbuser = “bacula”; dbpassword = “senhabacula“; dbaddress = “127.0.0.1”

 

Configurando o banco de dados para aceitar as conexões:

Já que definimos um usuário e senha para o banco de dados, vamos fazer com que o Postgres reconheça essa requisição:

vim /var/lib/pgsql/data/pg_hba.conf

Onde estiver “peer” e/ou “ident”, mude para md5

Original:  local       all      all      peer    ou     host      all     all     127.0.0.1/32     ident

Configurado: local       all      all      md5    ou     host      all     all     127.0.0.1/32     md5

Ainda no mesmo arquivo, adicionar na última linha:

host    localhost       all     0.0.0.0/0       md5

 

Reiniciando os serviços

systemctl restart bacula-dir bacula-fd bacula-sd postgresql

 

Acesso ao Webmin

https://localhost:10000/ (no lugar de localhost, pode ser o IP da servidor)

login e senha são os usuários do seu servidor CentOs7

No menu da esquerda:

System > Bacula Backup System.

Caso não apareça, clicar em Refresh Modules no final do menu.

Ao clicar, vai aparecer um erro:

É normal, pois não informamos ao módulo Bacula do Webmin nosso usuário e senha do Banco de dados. Basta clicar em module configuration.

No menu Bacula Database Settings vamos informar qual banco de dados foi utilizado e qual seu usuário e senha:

 

Ao clicar em SAVE, vai aparecer a tela abaixo. Agora seu servidor bacula está instalado. Em post futuros pretendo falar sobre como ele funciona e como configurar seu backups.

Caso queira mudar o idioma para o Português do Brasil:

Webmin> Change Language and Theme

Portuguese (Brazilian) (PT_BR.UTF-8)

 

Fontes:

http://webmin.com/rpm.html
http://bacula.us/bacula-enterprise-automated-install-script-for-centos-7/

https://www.digitalocean.com/community/tutorials/how-to-install-bacula-server-on-centos-7
http://www.linuxtopic.com/2016/08/install-and-configure-mysql-postgresql.html#gsc.tab=0
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-centos-7

Ao som de: Seu Jorge – Life on Mars? (David Bowie Cover/Version)