Difference between revisions of "Instalar Geoserver no Ubuntu 9.10 (com ECW, MrSID e Jpeg2000)"

From OSGeo
Jump to navigation Jump to search
(Guia de Instalação do Gerserver para o Ubuntu 9.10 com suporte para ficheiros MrSID, JPeg2000 e ECW)
 
Line 1: Line 1:
 
== Prefácio ==
 
== Prefácio ==
 +
Este guia pretende congregar os diversos processos e guias dispersos na rede necessários à instalação do servidor de mapas Geoserver[http://www.geoserver.org] no sistema operativo Ubuntu[http://www.ubuntu.org] na versão 9.10 (Karmic Koala).
  
Este guia pretende congregar os diversos processos e guias dispersos na rede necessários à instalação do servidor de mapas Geoserver no sistema operativo Ubuntu na versão 9.10 (Karmic Koala).
+
O servidor de mapas Geoserver tem como principal característica a total congruência com as normas de serviços espaciais do Open Geospatial Consortium[http://www.opengeospatial.org/], nomeadamente Web Map Services[http://www.opengeospatial.org/standards/wms] (WMS) e Web Feature Services[http://www.opengeospatial.org/standards/wfs] (WFS). O Gesoerver permite, entre outras coisas, a edição de informação vectorial através do serviço WFS, como sejam dados armazenados numa base de dados espacial (e.g. PostGis[http://postgis.refractions.net/]) ou em formato de ficheiro (e.g. Shapefile[http://en.wikipedia.org/wiki/Shapefile]).
  
O servidor de mapas Geoserver tem como principal característica a total congruência com as normas de serviços espaciais do Open Gis Consortium, nomeadamente Web Map Services (WMS) e Web Feature Services (WFS). O Gesoerver permite, entre outras coisas, a edição de informação vectorial através do serviço WFS, como sejam dados armazenados numa base de dados espacial (e.g. PostGis) ou em formato de ficheiro (e.g. Shapefile).
+
Para além desta característica o Geoserver pode servir um número considerável de formatos matriciais através de WMS recorrendo à biblioteca GDAL. Entre estes encontram-se os formatos criados com algoritmos de compressão baseados na Transformada de Onduletas[http://en.wikipedia.org/wiki/Discrete_wavelet_transform], com sejam o Jpeg2000[http://en.wikipedia.org/wiki/JPEG_2000], MrSID[http://en.wikipedia.org/wiki/MrSID] e ECW[http://en.wikipedia.org/wiki/ECW_(file_format)].
  
Para além desta característica o Geoserver pode servir um número considerável de formatos matriciais através de WMS recorrendo à biblioteca GDAL. Entre estes encontram-se os formatos criados com algoritmos de compressão baseados na tanformada de onduletas, com sejam o Jpeg2000, MrSID e ECW.
+
Existem de momento duas versão do Geoserver, uma em formato binário e outra em formato WAR[http://en.wikipedia.org/wiki/WAR_(file_format)]. A primeira inclui um[http://en.wikipedia.org/wiki/Web_server servidor de HTTP] dedicado, o Jetty[http://www.mortbay.org/], a segunda serve para uma instalação com um servidor de HTTP existente (e.g. Tomcat[http://tomcat.apache.org/]). Este guia de instalação contempla apenas a versão binária do Geoserver.  
  
Existem de momento duas versão do Geoserver, uma em formato binário e outra em formato WAR. A primeira inclui um servidor de HTTP dedicado, o Jetty, a segunda serve para uma instalação com um servidor de HTTP existente (e.g. Tomcat). Este guia de instalação contempla apenas a versão binária do Geoserver.
+
Nota: Em relação aos ECW é importante notar que para servir mapas neste formato é necessário adquirir uma licença ao fabricante, ER Mapper[http://www.ermapper.com/].
 
 
Nota: Em relação aos ECW é importante notar que para servir mapas neste formato é necessário adquirir uma licença ao fabricante, ER Mapper.
 
  
 
== Sun Java Development Kit ==
 
== Sun Java Development Kit ==

Revision as of 14:31, 20 April 2010

Prefácio

Este guia pretende congregar os diversos processos e guias dispersos na rede necessários à instalação do servidor de mapas Geoserver[1] no sistema operativo Ubuntu[2] na versão 9.10 (Karmic Koala).

O servidor de mapas Geoserver tem como principal característica a total congruência com as normas de serviços espaciais do Open Geospatial Consortium[3], nomeadamente Web Map Services[4] (WMS) e Web Feature Services[5] (WFS). O Gesoerver permite, entre outras coisas, a edição de informação vectorial através do serviço WFS, como sejam dados armazenados numa base de dados espacial (e.g. PostGis[6]) ou em formato de ficheiro (e.g. Shapefile[7]).

Para além desta característica o Geoserver pode servir um número considerável de formatos matriciais através de WMS recorrendo à biblioteca GDAL. Entre estes encontram-se os formatos criados com algoritmos de compressão baseados na Transformada de Onduletas[8], com sejam o Jpeg2000[9], MrSID[10] e ECW[11].

Existem de momento duas versão do Geoserver, uma em formato binário e outra em formato WAR[12]. A primeira inclui umservidor de HTTP dedicado, o Jetty[13], a segunda serve para uma instalação com um servidor de HTTP existente (e.g. Tomcat[14]). Este guia de instalação contempla apenas a versão binária do Geoserver.

Nota: Em relação aos ECW é importante notar que para servir mapas neste formato é necessário adquirir uma licença ao fabricante, ER Mapper[15].

Sun Java Development Kit

Esta secção é baseada na FAQ da nixCraft[16].

O Geoserver está assente na tecnologia Java, pelo que é necessária a instalação prévia do Java Development Kit (JDK). Os programadores do Geoserver aconselham a utilização do JDK distribuído pelo Sun, pois garante maior desempenho por parte do Geoserver.

Para começar há qu garinti que o repositório Multiverse está activado. Para tal aceder a SystemAdministrationSoftware Sources. Na secção Ubuntu Software seleccionar a opção Software restricted by copyright or legal issues (multiverse).

A seguir abrir uma linha de comandos e dar início à instalação:

sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk

É também conveniente instalar o pacote de actualizações:

sudo update-java-alternatives -s java-6-sun

A instalação terminou, por defeito o JDK fica instalado no directório /usr/lib/jvm/ dentro de um sub-directório que reflecte a versão instalada; neste guia assume-se que a versão instalada é a 6 da Sun, pelo que este sub-directório será java-6-sun. Há agora que começar actualizar as variáveis de sistema. Para este tipo de edições pode ser usado um dos vários editores de texto instalados por defeito com o Ubuntu, vi, nano, gedit. Neste guia será usado o nano:

sudo nano /etc/jvm

No final deste ficheiro há que adicionar as seguintes linhas:

/usr/lib/jvm/java-6-sun

/usr/lib/jvm/java-gcj

/usr/lib/jvm/ia32-java-1.5.0-sun

/usr/lib/jvm/java-1.5.0-sun

/usr

Por fim há que actualizar as variáveis de ambiente globais, editando o ficheiro /etc/environment:

sudo nano /etc/environment

Neste ficheiro adicionar a linha:

JAVA_HOME="/usr/lib/jvm/java-6-sun"

E na linha que começa por PATH acrescentar no fim o mesmo caminho para o JDK, inserindo :/usr/lib/jvm/java-6-sun antes de fechar as aspas.

Geoserver

Esta secção é baseada num guia de Fernando Quadro[17].

Para começar há que criar um directório para alojar o Geoserver, neste guia assume-se que este será /usr/lib/Geoserver:

sudo mkdir /usr/lib/Geoserver

sudo chmod 777 /usr/lib/Geoserver

cd /usr/lib/Geoserver/

Agora há que descarregar a versão correcta do Geoserver, aconselhando-se a que seja a última estável. O caminho para os ficheiros binários de intalação pode ser obtido na página do Geoserver[18].

wget http://downloads.sourceforge.net/geoserver/geoserver-2.0.1-bin.zip
unzip geoserver-2.0.1-bin.zip
mv geoserver-2.0.1 geoserver

Os binários do Geoserver ficaram no directório /usr/lib/Geoserver /geoserver, sendo também aqui que está o directório de dados. Fernando Quadro sugere que se mova o directório de dados para fora dos binários de modo a facilitar actualizações futuras:

mv geoserver/data_dir .

Fica a faltar a configuração do ambiente de execução do Geoserver, mas isso será efectuado no final, depois da instalação da extensão para o GDAL.

Imageio-ext

De modo a poder ler e servir ficheiros em formatos matriciais mais complexos e Geoserver usa um conjunto de bibliotecas do GDAL, com o nome de Imageio-ext[19]. Estas bibliotecas têm de ser uma versão específica, pelo que, mesmo que já exista uma versão do GDAL instalada no sistema, tem de ser descarregadas e instaladas.

Verifique através da página do Imageio-ext qual o endereço da última versão estável para descarregar. É aconselhável criar um directório específico para esta extensão; neste guia será /usr/lib/Geoserver/imageio-ext:

mkdir /usr/lib/Geoserver/imageio-ext
cd /usr/lib/Geoserver/imageio-ext
wget https://imageio-ext.dev.java.net/files/documents/7505/144611/imageio-ext-1.0.5-linux32-mrsid-ecw-lib.tar.gz

tar -xvvzf imageio-ext-1.0.5-linux32-mrsid-ecw-lib.tar.gz

É agora necessário descarregar um conjunto de informação necessário ao GDAL para a descodificação de sistemas de coordenadas. Este pacote pode ser descarregado a partir do mesmo repositório de onde foi retirado o Imageio-ext[20].

mkdir /usr/lib/Geoserver/gdal_data

cd /usr/lib/Geoserver/gdal_data
wget https://imageio-ext.dev.java.net/files/documents/7505/133661/gdal_data-1.4.4.zip

unzip gdal_data-1.4.4.zip

Configuração do ambiente de execução

Com todos os binários instalados no sistema é por fim necessário criar um ficheiro de configuração do ambiente de execução. Este ficheiro define um conjunto de variáveis de ambiente que indicam ao Geoserver a localização dos diversos recursos, nomeadamente:

  • GEOSERVER_DATA_DIR – directório de dados para o Geoserver;
  • GEOSERVER_HOME – raíz dos binários do Geoserver;
  • JAVA_HOME – raíz dos binários do JDK;
  • LD_LIBRARY_PATH – directório das bibliotecas do Imageio-ext;
  • GDAL_DATA – directório dos sistemas de coordenadas do GDAL.

Cria-se então um novo ficheiro de ambiente para o Geoserver:

sudo nano /etc/init.d/geoserver

Neste ficheiro inserir estas linhas:

#! /bin/sh -e
#
# Author: Luís de Sousa
#
# Adapted from Fernando Quadro:
# http://www.fernandoquadro.com.br/html/2009/05/14/instalando-o-geoserver-no-ubuntu/

export GEOSERVER_DATA_DIR=/usr/lib/Geoserver/data_dir
export GEOSERVER_HOME=/usr/lib/Geoserver/geoserver
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export LD_LIBRARY_PATH=/usr/lib/Geoserver/imageio-ext
export GDAL_DATA=/usr/lib/Geoserver/gdal_data

case "$1" in
    start)
    /usr/lib/Geoserver/geoserver/bin/startup.sh
    ;;
    stop)
    /usr/lib/Geoserver/geoserver/bin/shutdown.sh
    ;;
    force-reload|restart)
        $0 stop
         $0 start
    ;;
    *)
    exit 1
    ;;

esac
exit 0

Caso o Geoserver esteja instalado num directório diferente do sugerido neste guia deverá modificar os caminhos de acordo. Agora há que dar permissões de execução sobre este ficheiro:

sudo chmod +x /etc/init.d/geoserver

Por fim há que incluir o comando de arranque do Geoserver no ficheiro /etc/rc.local:

sudo nano /etc/rc.local

Acrescente a seguinte linha antes de “exit 0”.

/etc/init.d/geoserver start &


Conclusão

No final deste guia ficarão instalados no sistema o JDK da Sun e o Geoserver, com capacidades de serviço de ficheiros matriciais MrSID, Jpeg2000 e ECW.

Para fechar e/ou iniciar o Geoserver use os comandos:

/etc/init.d/geoserver start &

/etc/init.d/geoserver stop &