manual instalacao e cidade ubuntu 10.04 server lts
DESCRIPTION
E-cidadeTRANSCRIPT
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
Ttulo Manual Instalao e-cidade no Ubuntu Server 10.04 LTSAutor Fabrzio de Royes Mello
Colaborao Lus Fernando Paiva Smia Gerncia de Inovaes Tecnolgicas - DSI/MPOG
Direitos DBSeller Servios de Informtica LTDA.Data Criao 08/09/10
Importante Para este procedimento recomenda-se conhecimentos na instalao de sistemas operacionais linux e apt-get.O servidor que ser utilizado para instalao dever estar conectado a internet, pois os pacotes sero baixados dos repositrios.
1. RevisesNro Data Observaes
1 08/09/10 Criao deste documento2 05/01/11 Adicionado ajustes de permisso do /var/lib/php5 devido a um problema do php 5.3 com
o Debian/Ubuntu que, eventualmente, no consegue ler/escrever as sesses nesse diretrio
3 02/05/11 Ajustes criao de usurio para e-cidade no PostgreSQL
2. Instalao Ubuntu Server 10.04 LTS
2.1 - DownloadNo site http://www.ubuntu.com/getubuntu/download-server tem disponvel para download a verso 10.04LTS de acordo com a sua arquitetura 32 ou 64 bits.Dica: Se o seu servidor possuir mais de 4GB de memria RAM ento instale a verso 64 bits do sistema operacional.
2.2 - InstalaoA instalao do Ubuntu Server deve ser padro. Para maiores informaes acessar:https://help.ubuntu.com/10.04/serverguide/C/index.html
2.3 - Usurio AdministradorNa instalao do Ubuntu devemos criar um usurio para administrar o Servidor do e-cidade. No nosso caso criamos o usurio chamado dbseller
2.4 Edio arquivos de configuraoSugerimos utilizar o editor vim para edio dos arquivos de configurao que sero
Pgina 1/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
alterados nessa instalao. Mais informaes sobre o vim podem ser obtidas em:http://www.vim.org
2.5 ObservaesEsse manual contempla a instalao de um Servidor para uso do e-cidade, necessitando ento que o usurio tenha outro computador para acesso, via Firefox, ao sistema ou instale o ambiente grfico no servidor (no recomendado para ambientes de produo):$sudoaptgetinstallubuntudesktop
3. Instalao PostgreSQL 8.2 (sem otimizao de performance)
3.1 - PreparaoPara instalar o PostgreSQL 8.2 teremos de utilizar os repositrios do ubuntu 8.04 (Hardy) e para isso precisamos realizar os seguintes passos:$sudos
$echodebhttp://archive.ubuntu.com/ubuntuhardymainuniverse>/etc/apt/sources.list.d/ubuntu8.04.list
$exit
3.2 - InstalaoPara instalar o PostgreSQL 8.2 basta utilizar a ferramenta apt-get:$sudoaptgetupdate
$sudoaptgetinstallpostgresql8.2
$sudormf/etc/apt/sources.list.d/ubuntu8.04.list
$sudoaptgetupdate
3.3 - Configurao Cluster
Devemos utilizar o encoding LATIN1 (ISO-8859-1) no Cluster do PostgreSQL 8.2 onde ser instalado o e-cidade.
a) Editar o /etc/postgresql/8.2/main/pg_hba.conf e deixar conforme segue:
$sudovim/etc/postgresql/8.2/main/pg_hba.conf
Alteraraslinhasnofinaldoarquivoqueestosemo#,colocandotrustnolugarda
Pgina 2/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
ltimacoluna:
localallalltrusthostallall127.0.0.1/32trusthostallall::1/128trust
b) Recarregar as configuraes do PostgreSQL:
$sudo/etc/init.d/postgresql8.2reload
c) Verificar cluster atual:$psqlUpostgreshlocalhostlListofdatabasesName|Owner|Encoding++postgres|postgres|UTF8template0|postgres|UTF8template1|postgres|UTF8(3rows)
No caso acima precisamos recriar o cluster executando os prximos passos
d) Remover o cluster atual:$sudopg_dropclusterstop8.2main
e) Criar novo cluster como LATIN1:$sudopg_createclustereLATIN18.2main
Observaes: Caso ocorra algum erro ao tentar criar o cluster com encoding LATIN1 ento o sistema operacional instalado est sem suporte a ele e para isso necessrio:
$sudovim/var/lib/locales/support.d/local
Adicionar:pt_BR.ISO88591ISO88591
$sudovim/etc/locale.alias
Adicionar:pt_BRpt_BR.ISO88591
$sudodpkgreconfigurelocales
$exportLANG=pt_BR.ISO88591
$sudopg_createclustereLATIN18.2main
Pgina 3/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
f) Iniciar servidor PostgreSQL$sudo/etc/init.d/postgresql8.2start
g) Editar o /etc/postgresql/8.2/main/pg_hba.conf e deixar conforme segue:$sudovim/etc/postgresql/8.2/main/pg_hba.conf
Alteraraslinhasnofinaldoarquivoqueestosemo#,colocandotrustnolugardaltimacoluna:
localallalltrusthostallall127.0.0.1/32trusthostallall::1/128trust
h) Recarregar as configuraes do PostgreSQL:
$sudo/etc/init.d/postgresql8.2reload
i) Aps a recriao do cluster o resultado da verificao deve ser o que segue:
$psqlUpostgreshlocalhostlListofdatabasesName|Owner|Encoding++postgres|postgres|LATIN1template0|postgres|LATIN1template1|postgres|LATIN1(3rows)
3.4 - Configurao Principal (/etc/postgresql/8.2/main/postgresql.conf)
a) Configuraes a serem alteradas no postgresql.conf (o restante dos parmetros ficam inalterados):
$sudovim/etc/postgresql/8.2/main/postgresql.conf
max_fsm_pages=82000max_fsm_relations=5000
checkpoint_segments=16
redirect_stderr=onlog_directory='pg_log'log_filename='postgresql%Y%m%d_%H%M%S.log
Pgina 4/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
log_min_messages=warning
log_min_duration_statement=5000#5segundos
log_line_prefix='%t[%p]:[%l1]user=%u,db=%d'
autovacuum_naptime=5minautovacuum_vacuum_threshold=50autovacuum_analyze_threshold=50autovacuum_vacuum_cost_delay=20
add_missing_from=ondefault_with_oids=onescape_string_warning=off
b) Reiniciar PostgreSQL:$sudo/etc/init.d/postgresql8.2restart
3.5 - Configurao Acessos (pg_hba.conf)
a) Editar o /etc/postgresql/8.2/main/pg_hba.conf e deixar conforme segue:$sudovim/etc/postgresql/8.2/main/pg_hba.conf
Alteraraslinhasnofinaldoarquivoqueestosemo#,colocandotrustnolugardaltimacolula:
localallalltrusthostallall127.0.0.1/32trusthostallall::1/128trust
b) Recarregar as configuraes do PostgreSQL:
$sudo/etc/init.d/postgresql8.2reload
4. Instalao Apache 2
4.1 - Instalao
Para instalar o Apache 2 basta utilizar a ferramenta apt-get:$sudoaptgetinstallapache2
Pgina 5/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
4.2 - Editar arquivo /etc/apache2/apache2.conf$sudovim/etc/apache2/apache2.conf
a) Alterar o parmetro Timeout para 12000
Timeout12000
Dica: Caso voc utilize proxy (squid) na sua rede tem que atentar para o read timeout do mesmo em que o padro 10 minutos, e dependendo do processamento a ser efetuado no sistema, um programa pode levar bem mais de 10 minutos para executar (Ex: Clculo de Folha de Pagamento) ento ser necessrio aumentar o valor desse parmetro.
b) Adicionar as seguintes linhas ao final do arquivo:
#linhasadicionadasparaoecidadeLimitRequestLine16382LimitRequestFieldSize16382
4.3 - Editar arquivo /etc/apache2/conf.d/charset
a) Alterar o parmetro AddDefaultCharset
AddDefaultCharsetISO88591
ATENO! Cuidado para no deixar o AddDefaultCharset comentado, ou seja, com o caracter # no inicio!!
4.4 - Criao Pasta Arquivos Temporrios
a) Deve ser criada uma pasta tmp no DOCUMENT_ROOT do Apache (/var/www)
$sudomkdir/var/www/tmp$sudochownRwwwdata.wwwdata/var/www/tmp$sudochmodR777/var/www/tmp
b) Adicionar o usurio que ir administrar o e-cidade no grupo www-data, no nosso caso foi criado um usurio, na instalao do Ubuntu, chamado dbseller
$sudovim/etc/group(adicionarousuriodbsellerouoquevoccriounoitem2aogrupowwwdata)wwwdata:x:33:dbseller
Pgina 6/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
5. Instalao PHP 5
5.1 - Instalao
Para instalar o PHP 5 e os mdulos necessrios basta utilizar a ferramenta apt-get:
$sudoaptgetinstallphp5php5gdphp5pgsqlphp5cliphp5mhashphp5mcrypt
ATENO! As bibliotecas bcmath, DOM e mbstring devem estar instaladas tambm. Nas distribuies baseadas em Debian elas vem compiladas junto ao pacote do PHP5 e no existe em separado, mas em outras distribuies Linux isso pode ser diferente.
5.1 - Configurao
a) Criar pasta para os logs do PHP5$sudomkdir/var/www/log$sudochownRwwwdata.wwwdata/var/www/log
b) Acertar permisses do /var/lib/php5$sudochownroot.wwwdata/var/lib/php5$sudochmodg+r/var/lib/php5
c) Editar o arquivo /etc/php5/apache2/php.ini e modificar os parmetros:Observaes: os parmetros a serem configurados que na linha iniciam com o caracter #, este deve ser retirado.$sudovim/etc/php5/apache2/php.ini
register_globals=onregister_long_arrays=onregister_argc_argv=onpost_max_size=64Mmagic_quotes_gpc=onupload_max_filesize=64Mdefault_socket_timeout=60000max_execution_time=60000max_input_time=60000memory_limit=512Mallow_call_time_pass_reference=onerror_reporting=E_ALL&~E_NOTICEdisplay_errors=off
Pgina 7/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
log_errors=onerror_log=/var/www/log/phpscripts.logsession.gc_maxlifetime=7200
d) Reiniciar Servidor Web Apache$sudo/etc/init.d/apache2restart
6. Instalao OpenOffice
6.1 - PreparaoHabilitar repositrios Partner no /etc/apt/sources.list
$sudovim/etc/apt/sources.list
Descomentarlinhas(remover#doiniciodalinha),de:
#debhttp://archive.canonical.com/ubuntulucidpartner
#debsrchttp://archive.canonical.com/ubuntulucidpartner
para
debhttp://archive.canonical.com/ubuntulucidpartner
debsrchttp://archive.canonical.com/ubuntulucidpartner
$sudoaptgetupdate
6.2 - InstalaoPara instalar o OpenOffice basta utilizar a ferramenta apt-get:$sudoaptgetinstallsunjava6jreopenoffice.orgheadlessopenoffice.orgjavacommon
6.3 - ConfiguraoAdicione o que est em "negrito" ao arquivo /etc/rc.local. Antes da linha que contm exit 0:
$sudovim/etc/rc.local
/usr/bin/sofficeaccept="socket,host=localhost,port=8100;urp;"nofirststartwizardheadless&
exit0
Pgina 8/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
ATENO!! Caso voc utilize outra distribuio Linux ou instalou o OpenOffice de outra forma, deve verificar o arquivo "/var/www/e-cidade/bin/oo2pdf/oo2pdf.sh" para ajustar corretamente o caminho do OpenOffice na varivel "OOFFICE" e do Python na varivel "OOOPYTHON" para que a integrao do e-cidade com o OpenOffice funcione corretamente.
7. Instalao e-cidade
7.1 - Introduo
Antes de mais nada devemos obter o pacote com a verso desejada, e para isso precisamos entender a nomenclatura de um pacote do software conforme segue:ecidadeVERSAO.RELEASE.SUBRELEASESISTEMAOPERACIONAL.TIPO.tar.bz2
VERSAO : Nmero da verso do e-cidade. Ex: 2 RELEASE : Nmero da release atual do e-cidade. Ex: 2 SUBRELEASE : Nmero da sub-release (tambm chamado de compilao) do e-
cidade. Ex: 9 SISTEMAOPERACIONAL : Sistema Operacional para o qual foi gerado o pacote de
instalao. Atualmente somente "linux" suportado TIPO : Tipo do Pacote, se no existir nenhum comentrio ento esse um pacote
de atualizao de verso, caso contrrio ser indicado pelo termo "completo" que um pacote para uma nova instalao.
Um exemplo do pacotes da verso 2.2.50 ficaria assim:ecidade2.2.50linux.completo.tar.bz2(pacoteparanovainstalaodaverso2.2.50)
7.2 - Criao Base de Dados do e-cidade
Para exemplificar a instalao utilizaremos o pacote denominado "e-cidade-2.2.50-linux.completo.tar.bz2" que dever ser baixado do Portal do Software Pblico, comunidade e-cidade.
1. Descompactar o pacote no diretrio /tmp$cd/tmp
Pgina 9/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
$sudotarjxvfecidade2.2.50linux.completo.tar.bz2
2. Criao da base de dados (chamaremos a base de "e-cidade")$sudocdecidade2.2.50linux.completo/sql
$psqlUpostgreshlocalhosttemplate1c"createroleecidadewithsuperuserloginpassword'ecidade'"
$psqlUpostgreshlocalhosttemplate1c"createroledbsellerwithloginpassword'dbseller'"
$createdbUecidadeecidade
$psqlUecidadeecidadefecidade2.2.50.sql2>/tmp/erros.txt
$vim/tmp/erros.txt
$psqlUecidadeecidadec"VACUUMANALYZEVERBOSE;"
Observaes: Caso voc queira instalar o e-cidade utilizando uma base de dados para demonstrao, ou seja, com dados fictcios ento no item 2, linha 5 ao invs de recuperar o arquivo e-cidade-2.2.50.sql mude para e-cidade-demo-2.2.50.sql.
7.3 - Instalao do pacote do e-cidade
a) Acessar o pacote e copiar programas para pasta do Apache2$cd/tmp/ecidade2.2.50linux.completo
$sudocprecidade/var/www
b) Ajustar permisses da pasta$sudochownRdbseller.wwwdata/var/www/ecidade
$sudochmodR775/var/www/ecidade
$sudochmodR777/var/www/ecidade/tmp
c) Configurar acesso a base de dados ( conferncia )$sudovim/var/www/ecidade/libs/db_conn.php
(Ajustarasvariveis:)
$DB_USUARIO='ecidade';
$DB_SENHA='';//Ousefordefinidaalgumasenhaparaousuarioecidadenopostgresql
$DB_SERVIDOR='localhost';
$DB_PORTA='5432';
Pgina 10/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
$DB_PORTA_ALT='5432';
$DB_BASE='ecidade';
7.4 Acesso ao e-cidade
a) Se voc optou por instalar o ambiente grfico (ubuntu-desktop) junto ao servidor conforme descrito no item 2.5 ento basta abrir o navegador Firefox e acessar a url:http://localhost/e-cidade
b) Caso voc tenha instalado o servidor sem ambiente grfico, ento apartir de um computador desktop abra o navegador Firefox e acesse a url:http:///e-cidadeOnde ip_do_servidor indica o entereo IP atribudo na instalao do servidor Ubuntu.
c) Na tela de login do e-cidade informar o usurio dbseller e deixar a senha em branco.
ATENO! O Firefox deve estar com as pop-up habilitadas para o IP do Servidor para que o e-cidade possa funcionar.
7.5 - Instalao do e-cidadeonline
O pacote e-cidadeonline o servio disponvel ao cidado.
a) Acessar o pacote e copiar programas para pasta do Apache2$cd/tmp/ecidade2.2.50linux.completo
$sudocprecidadeonline/var/www
b) Ajustar permisses da pasta$sudochownRdbseller.wwwdata/var/www/ecidadeonline
$sudochmodR775/var/www/ecidadeonline
$sudochmodR777/var/www/ecidadeonline/tmp
c) Configurar acesso a base de dados ( conferncia )
Pgina 11/12
-
Manual Instalao e-cidade no Ubuntu Server 10.04 LTS
Verso 1.008/09/2010
$sudovim/var/www/ecidadeonline/libs/db_conn.php(Ajustarasvariveis:)
$DB_INSTITUICAO=1;
$DB_SERVIDOR='localhost';
$DB_BASEDADOS='ecidade';
$DB_USUARIO='ecidade';
$DB_SENHA='';//Ousefordefinidaalgumasenhaparaousuarioecidadenopostgresql
$DB_PORTA='5432';
8. Glossrio
Termo Significadoencoding http://en.wikipedia.org/wiki/Character_encodingcluster http://www.postgresql.org/docs/8.2/interactive/creating-cluster.htmlapt-get http://www.debian.org/doc/manuals/apt-howto
http://pt.wikipedia.org/wiki/Advanced_Packaging_ToolVim http://www.vim.orgFirefox http://www.mozilla.org/firefoxDBSeller Sistemas http://www.dbseller.com.brproxy http://pt.wikipedia.org/wiki/Proxysquid http://pt.wikipedia.org/wiki/Squid
Pgina 12/12