Instalando o SGCB no Debian Etch

De gutocarvalho.net

Conteúdo

[editar] Instalando o SGCB.

[editar] instalando e configurando o postgresql

root@servidor:~# apt-get install postgresql-8.1

configurando

root@servidor:~# su postgres
postgres@servidor:~$ psql
psql> alter user postgres with encrypted password 'casabrasil'; 

psql> \q
postgres@servidor:~$ exit

[editar] instalando o scgb e populando banco

root@servidor:~# cd /opt

faça o download do SGCB da voyager (servidor do gutocarvalho.net)

root@servidor:/opt# wget http://gutocarvalho.net/casabrasil/sgcb/SGCB2.1.1.tar.bz2
ou se preferir da fenix (servidor do casabrasil.gov.br)
root@servidor:/opt# wget http://www.casabrasil.gov.br/SGCB/files/SGCB2.1.1.zip

root@servidor:/opt# tar jxvf SGCB2.1.1.tar.bz2

root@servidor:/opt# cd SGCB2.1.1

criando banco

root@defiant:/opt/SGCB2.1.1#  psql -d postgres -f createDatabase.sql -h 127.0.0.1 -U postgres -W

populando banco

root@defiant:/opt/SGCB2.1.1#  psql -d dbGestao -f dbGestao.sql -h 127.0.0.1 -U postgres -W

saindo do diretório

root@defiant:/opt/SGCB2.1.1# cd ..

[editar] instalando e configurando tomcat 5.5.23 e java-jdk

aqui se quiser pode pegar um tomcat, última versão, já configurado, está disponível na voyager, basta descompactar e estará pronto para usar.

root@defiant:/opt/# wget http://gutocarvalho.net/casabrasil/conf-servidores/cb-apache-tomcat-5.5.23.tar.bz2
root@defiant:/opt/# tar jxvf cb-apache-tomcat-5.5.23.tar.bz2

para o tomcat funcionar no seu ubuntu ou debian você precisa instalar uma VM do JAVA5.

se quiser o pacote de desenvolvimento completo que incluie o JRE que é necessário para o tomcat use o comando abaixo (aprox. 70 MB)

root@defiant:/opt/# apt-get install sun-java5-jdk

se quiser instalar apenas o pacote JRE que é a VM (máquina virtual) para o tomcat funcionar use o comando abaixo (aprox. 15 MB)

root@defiant:/opt/# apt-get install sun-java5-jre

aqui tem um script de inicialização que eu fiz algumas alterações

root@defiant:/opt/# wget http://gutocarvalho.net/casabrasil/conf-servidores/tomcat55

movendo script para o init.d

root@defiant:/opt/# mv tomcat55 /etc/init.d

setando permissões para ele poder ser executado

root@defiant:/opt/# chmod 700 /etc/init.d/tomcat55

adicionando script na inicialização do sistema

root@defiant:/opt/# update-rc.d tomcat55 defaults

iniciando tomcat55

root@defiant:/opt/# invoke-rc.d tomcat55

ou

root@defiant:/opt/# /etc/init.d/tomcat55 start

voilá, tudo pronto, espere uns 5 segundos e digite o comando abaixo

root@defiant:/opt/# netstat -ntpl |grep java
tcp6       0      0 ::ffff:127.0.0.1:8005   :::*                    OUÇA      15340/java
tcp6       0      0 :::8009                 :::*                    OUÇA      15340/java
tcp6       0      0 :::8080                 :::*                    OUÇA      15340/java

Se a porta 8080 estiver sendo listada, bastará abrir o navegador e digitar.

http://192.168.0.1:8080/CasaBrasil/

Usuário: admin Senha: admin

Lembrando que 192.168.0.1 deverá ser substituído pelo ip do seu servidor.

[editar] dica: fazendo dump do banco

como fazer dump do banco do SGCB, para backup ou simplesmente para reinstalar o servidor ou colocar em outro local.

root@defiant:/opt/# pg_dump -h 127.0.0.1 -U postgres -C -Fp dbGestao > pgdump-estado-unidade-0000-00-00.sql

exemplo

root@defiant:/opt/# pg_dump -h 127.0.0.1 -U postgres -C -Fp dbGestao > pgdump-ms-ihp-2007-12-27.sql

[editar] dica: restaurando banco

vamos ao passo-a-passo

root@servidor:~# cd /opt
faça o download do SGCB da voyager (servidor do gutocarvalho.net)

root@servidor:/opt# wget http://gutocarvalho.net/casabrasil/sgcb/SGCB2.1.1.tar.bz2
ou se preferir da fenix (servidor do casabrasil.gov.br)
root@servidor:/opt# wget http://www.casabrasil.gov.br/SGCB/files/SGCB2.1.1.zip

root@servidor:/opt# tar jxvf SGCB2.1.1.tar.bz2
root@servidor:/opt# cd SGCB2.1.1

agora vamos criar o banco, use o arquivo createDatabase.sql que vem no pacote SGCB2.1.1.zip

root@defiant:/opt/SGCB2.1.1# psql -d postgres -f createDatabase.sql -h 127.0.0.1 -U postgres -W

agora procure seu dump e execute o restore da seguinte forma

root@defiant:/opt/SGCB2.1.1# psql -d dbGestao -f /home/livre/pdgump-dbgestao-ms-ihp-2007-12-27.sql -h 127.0.0.1 -U postgres -W

[editar] dica: alterando codificação de bancos

[editar] convertendo de UTF8 para ISO89859

crie um arquivo chamado utf82iso, adicione o seguinte conteúdo.

root@defiant:/opt/SGCB2.1.1# vim utf82iso
#!/usr/bin/perl
#
# utf82iso - Converte texto de UTF-8 para ISO8859
#
 
 use Encode;
  
  while(<STDIN>){
     print encode("iso-8859-1", decode("utf8", $_));
  }

para converter use o comando abaixo

root@defiant:/opt/SGCB2.1.1# ./utf82iso < banco.sql > banco-iso.sql

para conferir faça o seguinte

root@defiant:/opt/SGCB2.1.1# file banco-iso.sql dbGestao.sql: ISO-8859 text


[editar] convertendo de ISO8859 para UTF-8

root@defiant:/opt/SGCB2.1.1# vim iso2utf8
  1. !/usr/bin/perl
  2. iso2utf8 - Converte texto de ISO8859 para UTF-8
use Encode;

 while(<STDIN>){
    print encode("utf8", decode("iso-8859-1", $_));
 }
root@defiant:/opt/SGCB2.1.1# ./iso2utf8 < banco.sql > banco-utf8.sql

para conferir faça o seguinte

root@defiant:/opt/SGCB2.1.1# file banco-utf8.sql
banco-utf8.sql: UTF-8 Unicode text


[editar] dica: instalando o último tomcat e configurando o sgcb nele

durante a elaboração deste tutorial a última versão era a 5.5.25

root@defiant:~# cd /opt
root@defiant:/opt# wget http://ftp.unicamp.br/pub/apache/tomcat/tomcat-5/v5.5.25/bin/apache-tomcat-5.5.25.tar.gz
root@defiant:/opt# tar zxvf apache-tomcat-5.5.25.tar.gz
root@defiant:/opt/# wget http://gutocarvalho.net/casabrasil/conf-servidores/tomcat55

movendo script para o init.d

root@defiant:/opt/# mv tomcat55 /etc/init.d

setando permissões para ele poder ser executado

root@defiant:/opt/# chmod 700 /etc/init.d/tomcat55

adicionando script na inicialização do sistema

root@defiant:/opt/# update-rc.d tomcat55 defaults

configurando tomcat

vamos abrir o arquivo /opt/tomcat5.5.25/conf/tomcat-users.xml e deixar o conteúdo como abaixo

root@defiant:/opt/# vim /opt/tomcat5.5.25/conf/tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="null"/>
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="role1" password="tomcat" roles="role1"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="admin" password="admin" roles="admin,manager"/>
</tomcat-users>

agora vamos iniciar o tomcat55

root@defiant:/opt/# invoke-rc.d tomcat55

ou

root@defiant:/opt/# /etc/init.d/tomcat55 start

verificando se o tomcat subiu

root@defiant:/opt/# netstat -ntpl |grep java

tcp6       0      0 ::ffff:127.0.0.1:8005   :::*                    OUÇA      15340/java
tcp6       0      0 :::8009                 :::*                    OUÇA      15340/java
tcp6       0      0 :::8080                 :::*                    OUÇA      15340/java

Se a porta 8080 estiver sendo listada, bastará abrir o navegador e digitar.

http://192.168.0.1:8080

Lembrando que 192.168.0.1 deverá ser substituído pelo ip do seu servidor.

Clique em Tomcat Manager

Usuário: admin
Senha: admin

Procure a tabela WAR file to deploy

Clique em arquivo e vá até o local no seu sistema onde está o SGCB2.1.1.zip decompactado,
Clique no arquivo CasaBrasil.war para selecioná-lo.
Clique em Deploy

Depois disto o /CasaBrasil estará disponível na tabela Applications

Clique lá para acessar o SGCB.

Usuário: admin
Senha: admin

[editar] problemas conhecidos

Se na tentativa de acessar o sistema retornar uma página de erro no TOMCAT, verifique se o seguinte arquivo foi criado;

/opt/tomcat5.5.25/webapps/CasaBrasil/Common/Banco.cfg

conteúdo do arquivo

USER="postgres"
PASSWORD="casabrasil"
SERVER="127.0.0.1"
PORT="5432"

reinicie o tomcat pela página de administração e tente acessar o sgcb novamente.

[editar] referências

http://www.casabrasil.gov.br http://www.casabrasil.gov.br/SGCB/

Ferramentas pessoais