Webacula - Bacula Backup Server 7 no CentOS 7

Publicado por Lesley Ribeiro em 02/10/2014

[ Hits: 16.879 ]

 


Webacula - Bacula Backup Server 7 no CentOS 7



Webacula é uma interface que permite o gerenciamento do Bacula via WEB. Atividades como backup, restore e gerência de discos, podem ser realizadas pela interface WEB. Vamos dar início à sua instalação e configuração.

Instalação e configuração

Adicionar o repositório REMI:

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# rpm -Uvh remi-release-7.0-1.el7.remi.noarch

Instalação do Zend Framework e DB adapter para o MySQL:

# yum --enablerepo=remi install php-ZendFramework php-ZendFramework-Db-Adapter-Pdo-Mysql

Baixar o Webacula, descompactar e mover para /usr/share:

# wget http://sourceforge.net/projects/webacula/files/latest/download
# tar zxvf webacula-5.5.1.tar.gz
Ou:
# tar zxvf download

# mv webacula-5.5.1 /usr/share/webacula
# cd install
# php check_system_requirements.php

Mover os diretório das bibliotecas e criar um link simbólico para o Zend.

Obs.: o Zend está sob: /usr/share/php/Zend

Editar o arquivo db.conf e adicionar o password:

# cd /usr/share/webacula/install/
# vim db.conf

Adicionar o password do banco e o password do Webacula, que será utilizado no login WEB:

# Nome da Base de Dados utilizado pelo Bacula

db_name="bacula"

# Nome do usuário do Banco de dados
db_user="root"

# Senha do usuário adm do Banco
db_pwd="mysql_user@123"

#Senha utilizada pelo 'root' para login no Webacula

webacula_root_pwd="baculapass"

Executar os scripts de criação de tabela para o Webacula:

# cd /usr/share/webacula/install/MySql/
# ./10_make_tables.sh
# ./20_acl_make_tables.sh

Caso ainda não tenha o grupo bacula, crie e adicione o Apache ao grupo:

# groupadd bacula
# usermod -aG bacula apache

Permitir que o Apache execute o bconsole usando o arquivo bconsole.conf. Aqui, o bconsole está localizado em /usr/sbin e o arquivo de configuração em /etc/bacula:

# chown root:bacula /usr/sbin/bconsole
# chmod u=rwx,g=rx,o= /usr/sbin/bconsole
# chown root:bacula /etc/bacula/bconsole.conf
# chmod u=rw,g=r,o= /etc/bacula/bconsole.conf

Edite application/config.ini e adicione as credenciais para acesso ao banco de dados:

# vim /usr/share/webacula/application/config.ini

Edite o hostname, db name, user db e password:

db.adapter = PDO_MYSQL
db.config.host = localhost
db.config.username = mysqlroot@pass
db.config.dbname = bacula

bacula.sudo = ""
bacula.bconsole = "/usr/local/bacula/bin/bconsole"

Copiar a configuração do arquivo Apache para /etc/httpd/conf.d:

# cp /usr/share/webacula/install/apache/webacula.conf /etc/httpd/conf.d/

Editar o arquivo webacula.conf:

# vi /etc/httpd/conf.d/webacula.conf

Adicione os IPs que terão acesso ao Webacula ou comente o campo Deny from all:

Allow from 192.168.0.0/255.255.255.0

Ou:

# Deny from all

Edite o arquivo /etc/php.ini:

# vim /etc/php.ini

Edite os valores das seguintes variáveis:

memory_limit = 128M
max_execution_time = 300

Restarte o serviço Apache:

# service httpd restart

O Webacula estará disponível via browser no endereço: ip_do_servidor/webacula
Linux: 
Instalação e configuração do Webacula - Bacula Backup Server 7 no CentOS 7   Linux: 
Instalação e configuração do Webacula - Bacula Backup Server 7 no CentOS 7

Erros

Obtive alguns erros durante a implementação do Webacula.

Exemplo: não conseguia visualizar a aba de "Jobs Running".
Motivo: problemas com a versão do Zend:

  php-ZendFramework-1.12.9-1.el7.remi.noarch
  php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.9-1.el7.remi.noarch
  php-ZendFramework-Db-Adapter-Pdo-1.12.9-1.el7.remi.noarch


Segue erro:

  An error occurred
  Message :
  SQLSTATE[42000]: Syntax error or access violation: 1305 FUNCTION j.TIMEDIFF does not exist, query was: SELECT DISTINCT j.JobId, j.Name AS JobName, j.Level, j.ClientId, j.StartTime, j.EndTime, j.VolSessionId, j.VolSessionTime, j.JobFiles, j.JobBytes, j.JobErrors, j.Reviewed, j.PoolId, j.FileSetId, j.PurgedFiles, j.JobStatus, j.TIMEDIFF(NOW(), StartTime) AS DurationTime, s.JobStatusLong, c.Name AS ClientName, p.Name AS PoolName FROM Job AS j LEFT JOIN Status AS s ON j.JobStatus = s.JobStatus LEFT JOIN Client AS c ON j.ClientId = c.ClientId LEFT JOIN Pool AS p ON j.PoolId = p.PoolId WHERE ((j.EndTime = 0) OR (j.EndTime IS NULL) OR (j.JobStatus IN ('C','R','B','e','F','S','m','M','s','j','c','d','t','p','i','a','l','L'))) AND (j.StartTime > '2014-09-18 08:50:18′) ORDER BY StartTime ASC, JobId ASC
  Trace:
  #0 /usr/share/php/Zend/Db/Statement.php(303): Zend_Db_Statement_Pdo->_execute(Array)#1
  /usr/share/php/Zend/Db/Adapter/Abstract.php(480): Zend_Db_Statement->execute(Array)#2
  /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query(Object(Zend_Db_Select),
  Array)#3 /usr/share/php/Zend/Db/Select.php(686): Zend_Db_Adapter_Pdo_Abstract->query(Object(Zend_Db_Select))#4
  /usr/share/webacula/application/models/Job.php(289): Zend_Db_Select->query()#5
  /usr/share/webacula/application/controllers/JobController.php(63): Job->getRunningJobs()#6
  /usr/share/php/Zend/Controller/Action.php(516): JobController->runningAction()#7
  /usr/share/php/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch('runningAction')#8
  /usr/share/php/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard-
  >dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))#9
  /usr/share/webacula/html/index.php(249): Zend_Controller_Front->dispatch()#10 {main}
  System Information:
  DB Bacula : PDO_MYSQL 5.5.37
  Version for Bacula Catalog database : 14
  Director : bserver-dir Version: 7.0.4 (04 June 2014) x86_64-unknown-linux-gnu redhat (Core)
  Bconsole : Version: 7.0.4 (04 June 2014) x86_64-unknown-linux-gnu redhat (Core)
  Webacula version : 5.5.1, build 2011.09.07
  Zend Framework : 1.12.9
  PHP : 5.4.33
  id : uid=48(apache) gid=48(apache) groups=48(apache),1000(bacula)
  What to do next?
  Please help me improve the software you use by filing a report at Webacula bugtracker. Useful details include how to reproduce the error, and information (error message, trace) which is shown above, bacula version, etc.


Para corrigir, removi essa versão do Zend e baixei a versão 1.12.7, na página:
  php-ZendFramework-1.12.7-1.el7.centos.noarch
  php-ZendFramework-Db-Adapter-Pdo-Mysql-1.12.7-1.el7.centos.noarch
  php-ZendFramework-Db-Adapter-Pdo-1.12.7-1.el7.centos.noarch


Em minha opinião, o Webacula é o gerenciador WEB mais completo para o Bacula Community.


Espero ter contribuído.
Lesley

Outras dicas deste autor

Problema com YUM UPDATE no centos 6

Acessando Banco do Brasil no Debian 6 Squeeze

Bacula 7.x no CentOS 7.x - Instalação e configuração

Repositorio do Sarg no Debian 6 Squeeze

OpenOffice - Instalação no CentOS 6 via YUM

Leitura recomendada

Windows vs Linux nos PCs

Web Linux Designers

Instalando e configurando o Nginx com HTTPS

Wireless V6210BR Slackware 12 (BCM43XX)

Gimp - Erro: Execution error for 'Screenshot' [Resolvido]

  

Comentários
[1] Comentário enviado por tpjunior em 16/12/2014 - 10:47h

Cara, estou com o seguinte problema.
Fiz tudo conforme descrito, mas quando tento abrir o endereço do webacula retorna uma mensagem de erro "HTTP 500" no browser.

O apache está me voltando a seguinte mensagem de erro no /etc/httpd/logs/error_log:

[Tue Dec 16 09:41:37.276455 2014] [:error] [pid 31211] [client :61631] PHP Warning: include_once(MyClass/Session/SaveHandler/DbTable.php): failed to open stream: No such file or directory in /var/www/html/webacula/library/Zend/Loader.php on line 146

[Tue Dec 16 09:41:37.276507 2014] [:error] [pid 31211] [client :61631] PHP Warning: include_once(): Failed opening 'MyClass/Session/SaveHandler/DbTable.php' for inclusion (include_path='.:/var/www/html/webacula/html/../library:../application/models/:../application/forms/:.:/usr/share/pear:/usr/share/php') in /var/www/html/webacula/library/Zend/Loader.php on line 146

[Tue Dec 16 09:41:37.276842 2014] [:error] [pid 31211] [client :61631] PHP Fatal error: Uncaught exception 'Zend_Exception' with message 'File "MyClass/Session/SaveHandler/DbTable.php" does not exist or class "MyClass_Session_SaveHandler_DbTable" was not found in the file' in /var/www/html/webacula/library/Zend/Loader.php:99\nStack trace:\n#0 /var/www/html/webacula/html/index.php(49): Zend_Loader::loadClass('MyClass_Session...')\n#1 {main}\n thrown in /var/www/html/webacula/library/Zend/Loader.php on line 99


Tem ideia do que possa ser?
Estou usando o CentOS 7 minimal também e mesma versão do webacula.

[2] Comentário enviado por lesleyribeiro em 09/02/2015 - 11:07h


Ola, desculpe pela demora em responder.
Você realizou a copia das librarys do Zend para o diretorio .../webacula/
???

[3] Comentário enviado por hudi em 27/06/2015 - 14:23h

Fala ae meu amigo, seguinte...
Segui um outro tutorial onde instalei o Bacula + Webacula/BaculaWeb, baixei todas as versões mais atuais que achei, tanto o bacula, do webacula e do zend...
Estou com esse problema aqui: http://i.imgur.com/FHAPkKD.png
Sabe como resolver?

[4] Comentário enviado por gugarasta em 14/12/2016 - 11:14h

Ola pessoal...

Fiz todos os passos.. mas o meu esta dando erro 500.
e nos logs do apache não mostra nada de erro.

Alguém sabe o que eu posso ter feito de errado?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts