04 LTS
Ttulo Manual Instalao e-cidade no Ubuntu Server 12.04 LTS Autor Fabrzio de Royes Mello, Felipe Diefenbach Colaborao Lus Fernando Paiva Smia Gerncia de Inovaes Tecnolgicas DSI/MPOG Direitos DBSeller Servios de Informtica LTDA. Data Criao 05/11/12 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. Revises
Nro Data Observaes
2.4 Observaes
Pgina 1/12
Esse 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), durante a instalao do servidor voc deve fornecer um nome de usurio diferente de dbseller, pois mais adiante o mesmo ser utilizado para administrar o E-cidade:
$ sudo apt-get install ubuntu-desktop
Em seguida adicione os seguintes repositrios com o comando apt-add-repository $ sudo apt-add-repository ppa:pitti/postgresql Observaes: Maiores detalhes sobre a utilizao do repositrio podem ser encontradas no site https://launchpad.net/~pitti/+archive/postgresql 3.2 - Instalao Para instalar o PostgreSQL 9.2 basta utilizar a ferramenta apt-get:
$ sudo apt-get update $ sudo apt-get install postgresql-9.2 postgresql-contrib-9.2
3.3 - Configurao Cluster Devemos utilizar o encoding LATIN1 (ISO-8859-1) no Cluster do PostgreSQL 9.2 onde ser
Pgina 2/12
c) Adicionar no trecho do LC_COLLATE as linhas a seguir, entre LC_COLLATE e END LC_COLLATE: LC_COLLATE
copy "iso14651_t1" reorder-after <U00A0> <U0020><CAP>;<CAP>;<CAP>;<U0020> reorder-end
$ sudo vim /etc/postgresql/9.2/main/pg_hba.conf Alterar as linhas no final do arquivo que esto sem o #, colocando trust no lugar da ltima coluna: local all host all host all all all all 127.0.0.1/32 ::1/128 trust trust trust
3.4 - Configurao Principal (/etc/postgresql/9.2/main/postgresql.conf) a) Configuraes a serem alteradas no postgresql.conf (o restante dos parmetros ficam inalterados):
$ sudo vim /etc/postgresql/9.2/main/postgresql.conf
Pgina 4/12
listen_addresses = '*' max_connections = 20 bytea_output = 'escape' max_locks_per_transaction = 256 default_with_oids = on escape_string_warning = off standard_conforming_strings = off
b) Reiniciar PostgreSQL:
$ sudo /etc/init.d/postgresql restart
4. Instalao Apache 2
4.1 - Instalao Para instalar o Apache 2 basta utilizar a ferramenta apt-get:
$ sudo apt-get install apache2
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.
AddDefaultCharset ISO-8859-1
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)
$ sudo mkdir /var/www/tmp $ sudo chown -R www-data.www-data /var/www/tmp $ sudo chmod -R 777 /var/www/tmp
5. Instalao PHP 5
5.1 - Instalao Para instalar o PHP 5 e os mdulos necessrios basta utilizar a ferramenta apt-get:
$ sudo apt-get install php5 php5-gd php5-pgsql php5-cli php5-mhash php5-mcrypt
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.
Observaes: os parmetros a serem configurados que na linha iniciam com o caracter #, este deve ser retirado.
$ sudo vim /etc/php5/apache2/php.ini register_globals = on register_long_arrays = on register_argc_argv = on post_max_size = 64M magic_quotes_gpc = on upload_max_filesize = 64M default_socket_timeout = 60000 max_execution_time = 60000 max_input_time = 60000 memory_limit = 512M allow_call_time_pass_reference = on error_reporting = E_ALL & ~E_NOTICE display_errors = off log_errors = on error_log = /var/www/log/php-scripts.log session.gc_maxlifetime = 7200
6. Instalao LibreOffice
6.1 - Instalao Para instalar o LibreOffice basta utilizar a ferramenta apt-get:
$ sudo apt-get install libreoffice-writer python-uno openjdk-6-jre
6.2 - Configurao Adicione o que est em "negrito" ao arquivo /etc/rc.local. Antes da linha que contm exit 0:
$ sudo vim /etc/rc.local /usr/bin/soffice -accept="socket,host=localhost,port=8100;urp;" -nofirststartwizard -headless & Pgina 7/12
exit 0
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: e-cidade-VERSAO.RELEASE.SUBRELEASE-SISTEMAOPERACIONAL.TIPO.tar.bz2
VERSAO: Nmero da verso do e-cidade. Ex: 2 RELEASE: Nmero da release atual do e-cidade. Ex: 3 SUBRELEASE: Nmero da sub-release (tambm chamado de compilao) do e-cidade. Ex: 3 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
Pgina 8/12
atualizao de verso, caso contrrio ser indicado pelo termo "completo" que um pacote para uma nova instalao. Um exemplo do pacote da verso 2.3.3 ficaria assim:
e-cidade-2.3.3-linux.completo.tar.bz2 (pacote para nova instalao da verso 2.3.3)
7.2 - Usurio Administrador Devemos criar um usurio para administrar o e-cidade. Criaremos ento o usurio dbseller. a) Criando o usurio no grupo correto.
$ sudo useradd -d /home/dbseller -g www-data -k /etc/skel -m -s /bin/bash dbseller $ sudo passwd dbseller (definir a senha default como dbseller)
b) Para corrigir as permisses de criao de arquivos devemos modificar o login.defs e setarmos o parmetro umask para ao valor 002 da seguinte maneira:
$ sudo vi /etc/login.defs UMASK 002
Observaes: os parmetros a serem configurados que na linha iniciam com o caracter #, este deve ser retirado. 7.3 - Criao Base de Dados do e-cidade Para exemplificar a instalao utilizaremos o pacote denominado "e-cidade-2.3.3linux.completo.tar.bz2" que dever ser baixado do Portal do Software Pblico, comunidade ecidade. 1. Descompactar o pacote no diretrio /tmp
Pgina 9/12
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.3.3.sql mude para e-cidade-demo-2.3.3.sql.
7.4 - Instalao do pacote do e-cidade a) Acessar o pacote e copiar programas para pasta do Apache2
$ cd /tmp/e-cidade-2.3.3-linux.completo $ sudo cp -r e-cidade /var/www
7.5 Acesso ao e-cidade a) Se voc optou por instalar o ambiente grfico (ubuntu-desktop) junto ao servidor conforme descrito no item 2.4 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://<ip_do_servidor>/e-cidade Onde 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.6 - 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/e-cidade-2.3.3-linux.completo $ sudo cp -r e-cidadeonline /var/www
$DB_INSTITUICAO = 1; $DB_SERVIDOR = 'localhost'; $DB_BASEDADOS = 'e-cidade'; $DB_USUARIO = 'ecidade'; $DB_SENHA = ''; // Ou se for definida alguma senha para o usuario ecidade no postgresql $DB_PORTA = '5432';
8. Glossrio
Termo
encoding cluster apt-get
Significado http://en.wikipedia.org/wiki/Character_encoding http://www.postgresql.org/docs/8.2/interactive/creating-cluster.html http://www.debian.org/doc/manuals/apt-howto http://pt.wikipedia.org/wiki/Advanced_Packaging_Tool http://www.vim.org http://www.mozilla.org/firefox http://www.dbseller.com.br http://pt.wikipedia.org/wiki/Proxy http://pt.wikipedia.org/wiki/Squid
Pgina 12/12