Thursday, 23 November 2006

HowTo build UMN on Ubuntu DepperDrake within a few minutes

Installation of "GIS-system" UbuntuGIS Benjamin Thelen & Lars-Hendrik Schneider

Workshop FOSSGIS 2006 Installation des "GIS-Betriebssystems" UbuntuGIS Benjamin Thelen & Lars-Hendrik Schneider Bonn, den 29.03.2006

Mini-Howto Installation Ubuntu 5.10 „Breezy Badger“ mit PostgreSQL 8.1 und PostGIS 1.1.1 (optional MySQL 4.1) UMN Mapserver 4.8.2

  1. ) Vorbereitung der Installation System bootet von CD/DVD, Monitor und Tastatur anschließen, Netzwerkkabel angeschlossen (DHCP) ...
  2. ) Installation des Basissystems Installation vom Datenträger starten, am Bootprompt boot: server eingeben (für erweiterte Optionen ''server-expert''). Dies startet die Installation des Grundsystems ohne X.

Sprache wählen/Choose language: Choose a language: German – Deutsch Sprache wählen/Choose: Land wählen: Deutschland Ihre Tastatur ist: Deutsch Netzwerk einrichten: Bitte geben Sie den Namen des Rechners an: webgis Festplatte partitionieren: Partitionstabelle von Hand eingeben: z.B. 200MB /boot (Boot-Flag: EIN), 1GB SWAP (Auslagerungsdatei), 2GB /, Rest /var, u.U. noch /tmp auf eigene Partition. Alle Dateisysteme Ext3-Journaling-Dateisystem.

Zeitzone konfigurieren: Europe/Berlin: Ja User und Passwörter einrichten: Voller Name für den neuen Benutzer: www-User User und Passwörter einrichten: Benutzername für ihr Konto: www User und Passwörter einrichten: Passwort für den neuen Benutzer: (-Bestätigen) Installation beenden: Erste Stufe abgeschlossen: Weiter (-Reboot)

  1. ) Grundkonfiguration des Systems Netzwerkeinstellungen: /etc/network/interfaces (IP, Gateway, Broadcast ...) /etc/resolv.conf (DNS)

Root-Account aktivieren: # sudo passwd root # su

anderen Usern sudo-Rechte entziehen: # visudo %admin ALL=(ALL) ALL ändern in #%admin ALL=(ALL) ALL

apt-Quellen einrichten: # vi /etc/apt/sources.list Erste Zeile mit cdrom löschen, bei anderen # entfernen. TIP: Der vi ändert nicht die Eigentümerrechte einer Datei!

Erstes Mal Paketquellen einlesen & updaten: # apt-get update && apt-get upgrade

SSH-Server installieren: # apt-get install openssh-server

Basispakete für Entwicklung installieren: # apt-get install build-essential

Lokale anlegen: # dpkg-reconfigure locales de_utf-8 auswählen, andere abwählen, de_utf-8 als Standard wählen.

Umgebungsvariable LC_ALL exportieren: # echo LC_ALL=de_DE.UTF-8 >> /etc/environment # export LC_ALL=de_DE.UTF-8

  1. ) Apache2-Webserver mit PHP5 installieren Verzeichnisse: /etc/apache2/sites-available – Verzeichnis für vHosts-Dateien /etc/apache2/sites-enabled – Verzeichnis für vHosts-Dateien, die aktiviert sind /var/www – default Veröffentlichungsverzeichnis des Apache /usr/lib/cgi-bin – default cgi-bin des Apache /etc/php5/apache2/php.ini – PHP.INI-Datei von PHP5 im Apache2

Apache2 und PHP5 installieren (zieht weitere Pakete automatisch mit): # apt-get install apache2 apache2-common apache2-mpm-prefork apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-pgsql

Veröffentlichungsverzeichnis dem www-User schenken (für Webseitenbetreuung): # chown -R www:www /var/www

  1. ) PostgreSQL-Pakete installieren Verzeichnisse: /etc/postgresql/8.1/main/pg_hba.conf – Rechteverwaltung des PostgreSQL-Servers /etc/postgresql/8.1/main/postgresql.conf – zentrale Konfigurationsdatei des PostgreSQL-Servers

PostgreSQL-Pakete installieren (zieht weitere Pakete automatisch mit): # apt-get install postgresql-8.1 postgresql-client-8.1 postgresql-contrib-8.1 postgresql-server-dev-8.1 Contrib-Paket wird dabei später für die PostGIS-Installation benötigt.

PostgreSQL für den Einsatz mit TCP/IP freischalten: # vi /etc/postgresql/8.1/main/postgresql.conf -> #listen_addresses = localhost ändern in listen_addresses = localhost

Nutzerrechte freischalten: # vi /etc/postgresql/8.1/main/pg_hba.conf -> local all all ident sameuser ändern in local all all trust bzw. was als Sicherheitspolicy vorgesehen ist. PostgreSQL-Server neu starten: # /etc/init.d/postgresql-8.1 restart

/***OPTIONAL ***/ MySQL-Pakete installieren MySQL-Paket installieren (zieht weitere Pakete automatisch mit): # apt-get install mysql-server-4.1 u.a. postfix (für die Zustellung von Mails aus dem DB-System) Local only oder No configuration /***OPTIONAL***/

  1. ) Vor den weiteren Schritten Pakete holen: Folgende Pakete werden für die Kompilierung von PostGIS bzw. des UMN Mapservers benötigt und werden vorab installiert (zieht weitere Pakete automatisch mit): # apt-get install proj libgeos-dev libcurl3-dev libfreetype6-dev libgdal1-dev gdal-bin libjpeg62-dev libpng12-dev libgd2-xpm-dev flex bison
  2. ) Kompilierung und Installation von PostGIS Arbeitsverzeichnis anlegen: # mkdir /var/src

Sourcen von PostgreSQL besorgen von http://www.postgresql.org/ftp/source/v8.1.2/, entweder herunterladen und per SCP hochladen oder aus dem Mirror direkt mit wget laden: # wget ftp.de.postgresql.org/mirror/postgresql/source/v8.1.2/postgresql-8.1.2.tar.gz Unbedingt die genaue PostgreSQL-Version (hier die 8.1.2) beachten!

Sourcen entpacken: # tar xzf postgresql-8.1.2.tar.gz # cd postgresql-8.1.2

configure laufen lassen: # ./configure -–without-readline -–without-zlib

wenn configure erfolgreich war: # make und KEIN make install, da wir ja nur das Binary brauchen!

PostGIS herunterladen in das Contrib-Verzeichnis der PostgreSQL-Sourcen laden und entpacken: # cd /var/src/postgresql-8.1.2/contrib # wget http://postgis.refractions.net/download/postgis-1.1.1.tar.gz # tar xzf postgis-1.1.1.tar.gz # mv postgis-1.1.1 postgis

PostGIS bauen und ins System installieren: # cd postgis # make && make install

Anlegen der ersten PostGIS-Datenbank als Benutzer postgres: # su postgres $ createdb mygisdb $ createlang plpgsql mygisdb $ psql -d mygisdb -f /usr/share/postgresql/8.1/contrib/lwpostgis.sql $ psql -d mygisdb -f /usr/share/postgresql/8.1/contrib/spatial_ref_sys.sql $ exit

  1. ) Kompilierung und Installation des UMN Mapservers # cd /var/src # wget http://cvs.gis.umn.edu/dist/mapserver-4.8.2.tar.gz # tar xzf mapserver-4.8.2.tar.gz # cd mapserver-4.8.2

Dateien tunen: # vi mapsymbol.h -> #define MS_MAXSYMBOLS 64 ändern in #define MS_MAXSYMBOLS 1000 Damit wird die Zahl der möglichen Symbole erhöht.

# vi map.h -> #define MS_MAXCLASSES 250 ändern in #define MS_MAXCLASSES 1000 Anzahl Klassen je Layer erhöhen. -> #define MS_MAXLAYERS 200 ändern in #define MS_MAXLAYERS 500 Anzahl Layer erhöhen. -> #define MS_MAXIMAGESIZE_DEFAULT 2048 ändern in #define MS_MAXIMAGESIZE_DEFAULT 10000 Dateigröße des möglichen Ausgabebildes erhöhen (wichtig für den hochqualitativen Druck!)

Nun configure ausführen: # ./configure --with-gd \ --with-gdal=/usr/bin/gdal-config \ --with-proj \ --with-ogr \ --with-jpeg=/usr/ \ --without-png \ --without-tiff \ --with-freetype \ --with-wmsserver \ --with-wmsclient \ --with-wfs \ --with-postgis

Wenn configure erfolgreich, dann das Binary bauen: # make

...und anschließend testen: # ./mapserv -v MapServer version 4.8.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=FREETYPE SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER INPUT=EPPL7 INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE

In das CGI-BIN des Apache2 verschieben: # cp mapserv /usr/lib/cgi-bin/ und im Browser testen Im Browser: http:///cgi-bin/mapserv/ No query information to decode. QUERY_STRING is set, but empty.

This How-to applies to: MapServer 4.8

by Till Adams last modified 2006-09-20 08:49
Contributors: Lars-Henrik Schneider, Benjamin Thelen, Till Adams

No comments: