-CentOS
Aus Limbas Wiki
<-- zurück zu Quickinstall <-- zurück zu Installation / <-- zurück zur Hauptseite-Portale
Voraussetzung dieser Anleitung ist eine Standard CentOS 5.4 Installation mit einer minimalen Paketauswahl "Server". Wenn der Client (Browser) auf einem anderen Host läuft, ist keine "Desktop"-Installation notwendig.
Bezeichnungen in spitzen Klammern <> können mit beliebigen Text ersetzt werden, müssen aber durchgehend konsistent sein, um LIMBAS erfolgreich installieren zu können. Wenn nicht anders angegeben, erfolgen die im folgenden gezeigten Aufrufe von der Kommandozeile durch den Benutzer "root".
Inhaltsverzeichnis |
[bearbeiten] CentOS-Pakete nachinstallieren
Zusätzlich zur Standardinstallation sind für LIMBAS folgende Pakete zu installieren:
- httpd
- php
- php-gd
- php-imap
- php-odbc
- php-soap
- php-xml
- unixODBC
- postgresql-odbc
- postgresql
- postgresql-server
- ImageMagick
- poppler-utils (pdftohtml version >= 0.10.5)
$ yum install httpd php php-gd php-imap php-odbc php-soap php-xml unixODBC postgresql-odbc postgresql-server postgresql ImageMagick poppler-utils $ yum update
[bearbeiten] Updates und zusätzliche Pakete
[bearbeiten] PHP 5.2.0
Für PHP 5.2.x kann das folgende Repository genutzt werden:
$ rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
Neues Repository hinzufügen durch Anlegen der Datei "/etc/yum.repos.d/utterramblings.repo" mit folgender Konfiguration:
[utterramblings] name=Jason's Utter Ramblings Repo baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
Nach dem Aktualisieren kann PHP 5.2.x genutzt werden:
$ yum update
[bearbeiten] PostgreSQL 8.4
LIMBAS wurde auf PosgreSQL ab V 8.4 getestet. Für einige Distributionen muß die PostgreSQL Datenbank und insbesondere ihr ODBC Treiber aktualisiert werden.
Durch folgende Befehle kann das Update durchgeführt werden.
$ wget http://yum.pgsqlrpms.org/reporpms/8.4/pgdg-centos-8.4-2.noarch.rpm $ rpm -i pgdg-centos-8.4-2.noarch.rpm $ yum update
[bearbeiten] Tools
Für einige benötigte Tools, die nicht mit dem Paketmanagement verfügbar sind, können externe Repositories eingebunden werden. Damit können die folgenden Zusatzpakete installiert werden:
- htmldoc (LIMBAS benötigt die Version 1.9.x, die Standardversion 1.8.x ist nicht ausreichend, also ggf. von Hand herunterladen und installieren)
- pdftk
- wvware
- antiword
- t1lib
$ rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm $ yum install htmldoc pdftk wvware antiword t1lib
LIMBAS benötigt "htmldoc" in der Version 1.9.x oder neuer, die Standardversion 1.8.x aus den Pakenten ist nicht ausreichend. Daher ist ein Download der Sourcen (http://www.htmldoc.org/software.php) und manuelles Übersetzen/Installieren durchzuführen.
[bearbeiten] pdftohtml
Die in der Standardinstallation enthaltene Version ignoriert den Zielpfad für die Format-Konvertierung (bug). Daher muß eine aktuellere Version verwendet werden. Mit folgenden Paketen und deren Abhängigkeiten wurde erfolgreich getestet:
- poppler-0.8.7-7.fc10.i386.rpm
- poppler-utils-0.8.7-7.fc10.i386.rpm
- openjpeg-libs-1.3-6.el5.1.i386.rpm
[bearbeiten] ttf2pt1
Dieses Tool konnte mit folgenden Paketen fehlerfrei verwendet werden:
- ttf2pt1-3.4.4-7.fc10.i386.rpm
- t1utils-1.32-9.fc8.i386.rpm
[bearbeiten] Datenbank einrichten
[bearbeiten] PostgreSQL
Ab Version 2.0.22 unterstützt LIMBAS UTF8 im Beta Stadium. Falls UTF8 nicht benötigt wird, wird ein ISO Encoding empfohlen. LIMBAS konvertiert die Datums- und Zeitformate selbstständig und benötigt das Datumsformat "DD.MM.YYYY". Da PostgreSQL standardmäßig mit Lokalisierung installiert wird, müssen ein paar zusätzliche Schritte beachtet werden.
- Datenbank-Server stoppen:
$ /etc/init.d/postgresql stop
- Falls bereits ein Datenbank-Cluster existiert, so ist der entsprechende Verzeichnis-Inhalt von "/var/lib/pgsql/data" zu löschen (Achtung: Dabei werden schon vorhandene Datenbanken gelöscht).
- Datenbank-Cluster ohne Lokalisierung neu anlegen:
$ su - postgres
# initdb --local=C
Die Dateien, die zu diesem Datenbanksystem gehören, werden dem Benutzer
»postgres« gehören. Diesem Benutzer muss auch der Serverprozess gehören.
Der Datenbankcluster wird mit der Locale C initialisiert werden.
Die Standarddatenbankkodierung wurde entsprechend auf SQL_ASCII gesetzt.
Die Standardtextsuchekonfiguration wird auf »english« gesetzt.
erzeuge Verzeichnis /var/lib/pgsql/data ... ok
erzeuge Unterverzeichnisse ... ok
wähle Vorgabewert für max_connections ... 100
wähle Vorgabewert für shared_buffers ... 32MB
erzeuge Konfigurationsdateien ... ok
erzeuge Datenbank template1 in /var/lib/pgsql/data/base/1 ... ok
initialisiere pg_authid ... ok
initialisiere Abhängigkeiten ... ok
erzeuge Systemsichten ... ok
lade Systemobjektbeschreibungen ... ok
erzeuge Konversionen ... ok
erzeuge Wörterbücher ... ok
setze Privilegien der eingebauten Objekte ... ok
erzeuge Informationsschema ... ok
führe Vacuum in Datenbank template1 durch ...ok
kopiere template1 nach template0 ... ok
kopiere template1 nach postgres ... ok
WARNUNG: Authentifizierung für lokale Verbindungen auf »trust« gesetzt
Sie können dies ändern, indem Sie pg_hba.conf bearbeiten oder beim
nächsten Aufruf von initdb die Option -A verwenden.
Erfolg. Sie können den Datenbankserver jetzt mit
postgres -D /var/lib/pgsql/data
oder
pg_ctl -D /var/lib/pgsql/data -l logdatei start
starten.
# exit
- Beim Zugriff eines Clients auf den PostgreSQL-Datenbank-Server wird eine Authentifizierung durchgeführt. Diese Client-Authentifizierung wird durch die Datei "pg_hba.conf" kontrolliert. Sofern keine Änderungen an der PostgreSQL-Konfigurationsdatei "postgresql.conf" vorgenommen wurde, wird diese aus dem Verzeichnis "/var/lib/pgsql/data" genommen (genauere Informationen siehe http://www.postgresql.org/docs/8.4/interactive/runtime-config-file-locations.html). Durch entsprechenden Eintrag in der Datei "pg_hba.conf" ist sicherzustellen, daß die Authentifizierung für den LIMBAS-Zugriff erfolgreich ist (siehe ggf. http://www.postgresql.org/docs/8.4/static/client-authentication.html).
- Datenbank-Server starten und ggf. Status überprüfen:
$ /etc/init.d/postgresql start postgresql-Dienst starten: [ OK ] $ /etc/init.d/postgresql status (PID <pid>) wird ausgeführt...
- Datenbank anlegen (mögliche Kodierungen wären z.B. LATIN1 oder SQL_ASCII oder UTF8) und ggf. Vorhandensein überprüfen:
$ su - postgres
# psql
psql (8.4.3)
Geben Sie »help« für Hilfe ein.
postgres=# create user <limbasuser> password '<limbasuserPW>';
CREATE ROLE
postgres=# create database <limbasDB> WITH ENCODING 'SQL_ASCII' OWNER <limbasuser>;
CREATE DATABASE
postgres=#\q
# createlang plpgsql <limbasDB>
# psql -l
Liste der Datenbanken
Name | Eigentümer | Kodierung | Sortierfolge | Zeichentyp | Zugriffsrechte
-----------+------------+-----------+--------------+-------------+-----------------------
<limbasDB> |<limbasuser>| SQL_ASCII | C | C |
postgres | postgres | SQL_ASCII | C | C |
template0 | postgres | SQL_ASCII | C | C | =c/postgres
: postgres=CTc/postgres
template1 | postgres | SQL_ASCII | C | C | =c/postgres
: postgres=CTc/postgres
(4 Zeilen)
# createlang -l <limbasDB>
Prozedurale Sprachen
Name | Vertraut?
---------------------
plpgsql | yes
[bearbeiten] ODBC konfigurieren
Es gibt zwei Varianten LIMBAS mit der Datenbank zu verbinden:
- Verbindung mit direktem ODBC-Treiberzugriff
- Verbindung mit ODBC-resource
Die folgenden beiden Punkte sind für beide Varianten durchzuführen:
- Pfade der Konfigurationsdateien von unixODBC ermitteln:
$ odbcinst -j unixODBC 2.2.11 DRIVERS............: /etc/odbcinst.ini SYSTEM DATA SOURCES: /etc/odbc.ini USER DATA SOURCES..: /<user>/.odbc.ini
- In der unter "DRIVERS" ermittelten Datei (hier "/etc/odbcinst.ini") die Treiber mit Dateiname und Pfad hinzufügen:
[<postgreSQLDriver>] Driver = /usr/lib/psqlodbc.so (bei PostgreSQL Version >= 8.4) Setup = /usr/lib/libodbcpsqlS.so
- ACHTUNG: bei älteren PostgreSQL Versionen (<= 8.3) wird folgender Treiber verwendet:
[<postgreSQLDriver>] Driver = /usr/lib/psqlodbcw.so Setup = /usr/lib/libodbcpsqlS.so
Der folgende Punkt ist nur notwendig bei einer Verbindung mittels ODBC-resource
- In der unter "SYSTEM DATA SOURCES" ermittelten Datei (hier "/etc/odbc.ini") die folgenden Eintrag hinzufügen:
[<limbasOdbcResourceName>] Description = PSQL Driver = <postgreSQLDriver> Trace = No TraceFile = Database = <limbasDB> Servername = localhost Username = <limbasuser> Password = <limbasuserPW> Port = 5432 Protocol = 6.4 ReadOnly = No RowVersioning = No ShowSystemTables = No ShowOidColumn = No FakeOidIndex = No ConnSettings =
[bearbeiten] PHP konfigurieren
Die PHP-Konfiguration muß in "/etc/php.ini" leicht angepasst werden:
- short_open_tag On
- magic_quotes Off
- register_globals Off
- upload_max_filesize ?M (maximale Dateiuplod / Formulargröße)
- odbc.defaultlrl 20480 (maximale Textfeldgröße)
- error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
[bearbeiten] Apache HTTP Server einrichten
Für die LIMBAS Installation müssen das Root-Verzeichnis des Apache-Servers und der Apache-User sowie dessen Gruppe bekannt sein:
- Das Root-Verzeichnis des Apache-Servers läßt sich aus dem "DocumentRoot"-Eintrag der Datei "/etc/httpd/conf/httpd.conf" ermitteln.
- Der Apache-User und seine Gruppe lassen sich aus den "User"- und "Group"-Einträgen der Datei "/etc/httpd/conf/httpd.conf" ermitteln.
- Damit alle Zeichen korrekt angezeigt werden, ist in der Datei "/etc/httpd/conf/httpd.conf" folgende Zeile zu löschen oder auszukommentieren:
# AddDefaultCharset UTF-8 DIESE ZEILE LÖSCHEN ODER AUSKOMMENTIEREN !!
- Damit die in den LIMBAS-Verzeichnissen verwendeten .htaccess-Dateien vom Apache-Server interpretiert werden, ist folgender Eintrag in "/etc/httpd/conf/httpd.conf" hinzuzufügen:
<Directory "<DocumentRoot>/openlimbas/dependent">
AllowOverride All
</Directory>
Starten des Apache HTTP Servers:
$ /etc/init.d/httpd start
[bearbeiten] LIMBAS installieren
- LIMBAS kann unter http://sourceforge.net/projects/limbas/files herunter geladen werden. Mittels Kommandozeile ist beispielsweise folgender Aufruf möglich:
$ wget http://downloads.sourceforge.net/projects/limbas/files/limbas%20packages/2.0.45/openlimbas_2.0.45.632.tar.gz?use_mirror=ovh
- Die Download-Datei (hier "openlimbas_2.0.45.632.tar.gz") in <DocumentRoot> speichern und dort entpacken:
$ tar xzfv openlimbas_2.0.45.632.tar.gz
- Beim Entpacken wird das Verzeichnis "<DocumentRoot>/openlimbas" mit den folgenden Unterverzeichnissen angelegt:
- limbas_src: Hier befinden sich die LIMBAS Source-Dateien, die im Falle eines Updates überschrieben werden können, ohne daß individuelle Einstellungen verloren gehen.
- independent: Hier befinden sich eigenständige externe Anwendungen, die von LIMBAS benutzt werden. Ein von LIMBAS losgelöstes Update dieser Anwendungen ist zwar möglich, ist aber nicht zu empfehlen, da das Zusammenspiel nur mit den in der LIMBAS-Installation enthaltenen Versionen getestet ist.
- public: Hier befindet sich ein Beispiel für eine SOAP Anwendung. Die Dateien aus diesem Verzeichnis sind für die Funktionalitäten von LIMBAS nicht erforderlich.
- dependent: Dies ist das eigentliche Arbeitsverzeichnis, in dem auch individuelle Einstellungen abgelegt werden. Die Verzeichnisse und Dateien des limbas_src-Verzeichnisses müssen hier als symbolische Links vorliegen.
- Liegen die Verzeichnisse und Dateien aus "<DocumentRoot>/openlimbas/limbas_src" in "<DocumentRoot>/openlimbas/dependent" fälschlicherweise als Kopie anstatt symbolischer Links vor (bei manchen Systemen gibt es Probleme beim Entpacken der symbolischen Links), so ist wie unter Bekannte Problemlösungen beschrieben vorzugehen:
- Um das Speichern individueller Einstellungen in LIMBAS zu ermöglichen, muß LIMBAS schreibend auf "./openlimbas/dependent" und allen Unterverzeichnissen zugreifen können. Um dies zu ermöglichen ist der Besitzer dieses Verzeichnisses und seiner Unterverzeichnisse auf den Apache-User (hier "apache") zu ändern.
$ chown -R apache:apache openlimbas/dependent
- Falls der Browser auf einem anderen Host läuft, ist dafür zu sorgen, daß die Firewall-Konfiguration den Zugriff von diesem Browser auf den LIMBAS Host zuläßt.
- Mit Hilfe eines Browsers kann jetzt die LIMBAS Datenbankstruktur angelegt werden. Dazu muß das LIMBAS-Installationsskript mit folgender URL aufgerufen werden:
- http://<LIMBAS Host IP-Adresse>/openlimbas/dependent/admin/install/
- In der Installations-Maske müssen nun die Parameter der erstellten PostgreSQL Datenbank Instanz eingetragen werden. Abhängig von der Variante, wie sich LIMBAS mit der Datenbank verbindet, unterscheiden sich diese:
- Verbindung mit direktem ODBC-Treiberzugriff
- Database Vendor: PostgreSQL
- Database Host: localhost
- Database Name: <limbasDB> (siehe Datenbank einrichten)
- Database User: <limbasuser> (siehe Datenbank einrichten)
- Database Password: <limbasuserPW> (siehe Datenbank einrichten)
- Database Schema: public
- SQL Driver (unixODBC): <postgreSQLDriver> (siehe ODBC konfigurieren)
- Verbindung mit ODBC-resource
- Database Vendor: PostgreSQL
- Database Host: localhost
- Database Name: <limbasOdbcResourceName> (siehe ODBC konfigurieren)
- Database User: (kein Eintrag erforderlich)
- Database Password: (kein Eintrag erforderlich)
- Database Schema: public
- SQL Driver (unixODBC): (kein Eintrag erforderlich)
- Verbindung mit direktem ODBC-Treiberzugriff
- Das Webinterface versucht automatisch alle Pfade korrekt einzutragen. Geschieht dies nicht oder bleiben die Felder leer, sollte die php.ini noch mal überprüft werden.
- Bei Mausklick auf "check" wird geprüft, ob alle benötigten Funktionen verfügbar sind. Die Installation kann nur dann fortgeführt werden, wenn die Mindestanforderungen erfüllt sind. Dies ist an den grünen und gelben Häkchen zu erkennen. Ist dies der Fall, kann man die gewünschte Installation auswählen:
- demo.tar.gz: Die Datenbank enthält Benutzer-Daten, mit welchen die Eigenschaften von LIMBAS demonstriert werden können
- clean.tar.gz: Die Datenbank enthält keine Benutzer-Daten.
- Bei Mausklick auf "install" startet der Installationsvorgang. Den Fortschritt der Installation erkennt man an den grünen Fortschrittsbalken.
- Benutzer "root": Das Installations-Skript überträgt die Datenbankeinstellungen in die Datei "<DocumentRoot>/openlimbas/dependent/inc/include_db.lib". Wird diese Datei verändert, ist kein Zugriff auf die Datenbank mehr möglich. Um unerwünschten Manipulationen vorzubeugen, sollten sämtliche Schreibrechte auf diese Datei entfernt werden.
chmod 444 <DocumentRoot>/openlimbas/dependent/inc/include_db.lib
- Nach erfolgreicher Installation kann LIMBAS durch Mausklick auf den Link "test installation" oder durch Eingabe folgender URL gestartet werden:
- http://localhost/openlimbas/dependent
- Gleich nach dem Aufruf der URL wird man aufgefordert sich zu authentifizieren. Dazu steht folgender Default-Benutzer mit allen Administrator-Rechten zur Verfügung:
- Benutzername: admin
- Passwort: limbas


