Segue algumas informações sobre essa atualização, achei que seria simples, mas tive alguns imprevistos…

Primeira etapa:

Baixei a versão nova do Webacula, extrai os arquivos e quando executei a aplicação apareceu o primeiro erro.

Notice: Use of undefined constant __DIR__ – assumed ‘__DIR__’ in /var/www/html/webacula-5.5/html/index.php on line 39

Warning: include(Zend/Loader.php) [function.include]: failed to open stream: No such file or directory in /var/www/html/webacula-5.5/html/index.php on line 43

Warning: include() [function.include]: Failed opening ‘Zend/Loader.php’ for inclusion (include_path=’.:__DIR__/../library:../application/models/:../application/forms/:.:/usr/share/pear:/usr/share/php’) in /var/www/html/webacula-5.5/html/index.php on line 43

Fatal error: Class ‘Zend_Loader’ not found in /var/www/html/webacula-5.5/html/index.php on line 45

Esta bug já é conhecido e registrado.

Problema: A constante __DIR__ só funciona apartir da versão 5.3 do PHP.
Solução: Atualizar o PHP ou fazer a alteração dessa função no arquivo html/index.php na linha 39, pela função dirname(__FILE__) que terá o mesmo efeito nesse caso.

Segunda etapa:

Agora vou atualizar o banco de dados, neste caso PostgreSQL 8.1, novos erros e descobri que preciso atualizar o postgreSQL para nova versão 8.4, segue os erros exibidos:

[root@db PostgreSql]# ./10_make_tables.sh –host localhost
psql: FATAL:  autenticação do tipo password falhou para usuário “root”
PostgreSql : create of Webacula tables failed!
[root@gaius PostgreSql]# ./10_make_tables.sh –host localhost -U postgres
psql:<stdin>:16: ERRO:  função to_tsvector(“unknown”, text) não existe
DICA:  Nenhuma função corresponde com o nome informado e os tipos de argumento. Você precisa adicionar conversões de tipo explícitas.
psql:<stdin>:29: ERRO:  erro de sintaxe em ou próximo a “,” no caracter 70
psql:<stdin>:29: LINHA 2:    (10, ‘Info’),
psql:<stdin>:29:                         ^
PostgreSql : create of Webacula tables succeeded.

[root@db PostgreSql]# ./20_acl_make_tables.sh –host localhost -U postgres
psql:<stdin>:70: ERRO:  erro de sintaxe em ou próximo a “,” no caracter 66
psql:<stdin>:70: LINHA 2:     (10,2),
psql:<stdin>:70:                    ^
psql:<stdin>:90: ERRO:  erro de sintaxe em ou próximo a “,” no caracter 100
psql:<stdin>:90: LINHA 2:     (10, ‘index’,     ‘Home page’),
psql:<stdin>:90:                                            ^
psql:<stdin>:172: ERRO:  erro de sintaxe em ou próximo a “,” no caracter 105
psql:<stdin>:172: LINHA 2:     (1,   ‘*all*’,       ‘All commands’),
psql:<stdin>:172:                                                  ^
PostgreSql : create of Webacula ACL tables succeeded.

Problema: Essa atualização não funciona simplesmente com yum upgrade. Ela deverá ser manual.
Solução: Este howto explica como fazer essa atualização passo a passo.

http://blog.lystor.org.ua/2010/05/upgrading-postgresql-81-to-84-centos-55.html

Caso encontre o erro abaixo ao iniciar o banco de dados.

Problema: /usr/bin/initdb: error while loading shared libraries: libxslt.so.1: cannot open shared object file: Permission denied
Solução: desabilite SELinux

Terceira etapa:

Eu tive que reinstalar vários pacotes novamente, ex: httpd, php etc.

Outras dúvidas podem ser tiradas lendo o manual do webacula 5.5, dentro do diretório docs dos arquivos.

Depois de muita dor de cabeça e um pouco de trabalho consegui fazer tudo funcionar corretamente. Valeu a pena o sistema Webacula 5.5 está show de bola 😀

Anúncios