Um novo Webacula (wanderleihuttel/webacula)

O Webacula é uma interface gráfica livre que permite realizar a maioria das operações do Bacula de maneira bastante intuitiva, a exemplo da execução de backups, restores e monitoração dos backups (exceto alterações na configuração).

Melhorias

Este fork possui diversas modificações, dentre elas:

  • Funciona com o Bacula 9.x
  • Melhoria de velocidade na seleção de arquivos de restauração
  • Alterações nas bibliotecas CSS e JavaScript (agora utilizando o Bootstrap)
  • Alteração no layout das pool/volumes
  • Método mais eficiente para converter número em bytes para um formato human readable. (Ex: 1024 para 1MB)
  • Adicionada opção “setting days_to_show_jobs_terminated” para mostrar os jobs finalizados pelo número XXX de dias.
  • Adicionada opção “date_format” e “datetime_format” para alterar a forma de visualização de horas e datas.(Ex: 2016-10-31 para 31/10/2016)
  • Melhorias na tradução para o Português Brasil
  • Adicionado novo campo na listagem de volumes que mostra quando o volume vai expirar
  • Configuração de usuário e senha padrão (Usuário: root – Senha: bacula (quando configurar deixar o campo ‘webacula_root_pwd’ vazio no arquivo db.conf)
  • Possibilidade de alterar a senha do usuário root do bacula na interface gráfica.
  • Adicionado nova tela que mostra os agendamentos.

Instalação

Siga os procedimentos abaixo:

#####################################################################################
#   Passos para instalação do Webacula no Debian (testado em Debian >= 8.0 )        #
#####################################################################################

Considerando que você já possuí o Bacula instalado

# Atualizar lista de pacotes
apt-get update
# Instalar dependências 
apt-get install sudo php5 php5-gd php5-dev php5-mcrypt php5-curl mysql-server php5-mysqlnd php5-pgsql

# Se Debian 9.0 - apt-get install sudo php php-gd php-dev php-mcrypt php-curl mysql-server php-mysqlnd php-pgsql

# No caso de Centos - yum install httpd php php-gd php-mysql php-pgsql

# Configurar o PHP - Editar o arquivo /etc/php5/apache2/php.ini  and alterar a opção 'date.timezone' e 'max_execution_time'
vim /etc/php5/apache2/php.ini
# Se Debian 9.0 - vi /etc/php/7.0/apache2/php.ini
date.timezone = America/Sao_Paulo
max_execution_time = 3600

# Efetuar o download da última versão do Webacula 
# Verificar qual é a última versão do Webacula em: https://github.com/wanderleihuttel/webacula/releases
# A última versão na instalação do tutorial é a 7.5.2
cd /var/www
wget -c https://github.com/wanderleihuttel/webacula/archive/7.5.2.tar.gz
tar xvzf 7.5.2.tar.gz
mv webacula-7.5.2 webacula

# Gerar o password para acessar o Webacula
cd /var/www/webacula/install/
# Executar o comando: 
php password-to-hash.php PASSWORD  # Onde PASSWORD é o seu password

# A saída é algo como a string: '$P$BN7e27dudrIi7LHaYs91bRAIZULVR60'

# Editar o arquivo /var/www/webacula/install/db.conf <<<
# Preencher os campos com as credenciais do usuário do root do MySQL e com os dados do banco de dados do bacula
db_name='bacula'
db_user='root'
db_pwd='123456'
webacula_root_pwd=''

# Se você deixar o campo 'webacula_root' vazio, o usuário padrão é 'root' e a senha é 'bacula'. É possível alterar a senha após efetuar o logon.

# Criar as tabelas do Webacula 
# Executar os comandos abaixo (modificque se MySQL ou PostgreSQL):
cd /var/www/webacula/install/MySql
./10_make_tables.sh
./20_acl_make_tables.sh

# Editar o arquivo /var/www/webacula/application/config.ini <<<
Preencher os campos com as credenciais do usuário bacula do MySQL
db.adapter         = PDO_MYSQL
db.config.host     = localhost
db.config.username = bacula
db.config.password = ""
db.config.dbname   = bacula
def.timezone = "America/Sao_Paulo"
# Caminho dos binários do bacula e sudo. Caso esteja com problemas, deixe em branco a configuração do sudo
bacula.sudo        = "/usr/bin/sudo"  
bacula.bconsole    = "/usr/sbin/bconsole"
bacula.bconsolecmd = "-n -c /etc/bacula/bconsole.conf"

# Conceder permissão correta aos diretórios e arquivos <<<
cd /var/www
chown -R www-data.www-data /var/www/webacula
chown www-data /usr/sbin/bconsole
chown www-data /etc/bacula/bconsole.conf
chmod 775 /etc/bacula
chmod 777 /var/www/webacula/data/cache

# Configurar o Apache 
# Copiar o arquivo /var/www/webacula/install/apache/webacula.conf para  /etc/apache2/sites-available/
cp /var/www/webacula/install/apache/webacula.conf   /etc/apache2/sites-available/webacula.conf

# Edite o webacula.conf e modifique o Allow from para permitir os endereços ip das máquinas que podem acessar. Ex.:
vi /etc/apache2/sites-available/webacula.conf
...
Allow from all

# Habilitar o modo rewrite do Apache 
a2enmod rewrite

# Habilitar o Webacula no Apache
cd /etc/apache2/sites-available/
a2ensite webacula.conf
service apache2 restart

# Conceder permissão para o usuário www-data executar o bconsole 
echo "www-data ALL=NOPASSWD: /usr/sbin/bconsole" >> /etc/sudoers

# Criar o grupo bacula 
groupadd bacula

# Adicionar o usuário 'www-data' para o grupo 'bacula'
usermod -aG bacula www-data

# Conecte através do seu navegador em http://ip_servidor/webacula

 Screenshot

Um novo Webacula (wanderleihuttel/webacula) 1 Um novo Webacula (wanderleihuttel/webacula) 2 Um novo Webacula (wanderleihuttel/webacula) 3

Fonte

<https://github.com/wanderleihuttel/webacula/>

Disponível em: pt-brPortuguêsenEnglish (Inglês)esEspañol (Espanhol)

Deixe uma resposta