Kernsystem
Aus Goobi
Inhaltsverzeichnis |
Installation des Kernsystems (Tomcat Server)
Voraussetzungen
- Installation eines aktuellen Linux Betriebssystems
- Aktualisierung der Paketquellen der Linuxdistribution
# Debian GNU/Linux 4.0 echo "deb http://ftp.de.debian.org/debian/ etch main contrib non-free" >/etc/apt/sources.list echo "deb-src http://ftp.de.debian.org/debian/ etch main contrib non-free" >>/etc/apt/sources.list echo "deb http://ftp.de.debian.org/debian-security/ etch/updates main contrib non-free" >>/etc/apt/sources.list echo "deb-src http://ftp.de.debian.org/debian-security/ etch/updates main contrib non-free" >>/etc/apt/sources.list aptitude -y update
- Einspielen der relevanten Sicherheitsupdates
# Debian GNU/Linux 4.0 aptitude -y upgrade
- Optional: Installation von Midnight Commander als Dateimanager im Textmodus
# Debian GNU/Linux 4.0 aptitude -y install mc
- Optional: Installation des SSH Servers für den Remote-Zugriff
# Debian GNU/Linux 4.0 aptitude -y install openssh-server
- Optional: Installation eines geeigneteren Kernels
# Debian GNU/Linux 4.0 # Im Beispiel wird der 486-er Kernel gegen einen 686-er ausgetauscht aptitude -y install linux-image-2.6-686 linux-image-2.6-486_ linux-image-`uname -r`_
Installation Java Umgebung
- Installation SUN Java JDK
# Debian GNU/Linux 4.0 aptitude -y install sun-java5-jdk
- Installation Java Advanced Imaging
# Debian GNU/Linux 4.0 # In Arbeitsverzeichnis wechseln cd $TMP # jai-1_1_3-lib-linux-i586-jdk.sfx ist das Originalpaket jai-1_1_3-lib-linux-i586-jdk.bin ohne das SUN Installer Shellskript chmod 755 jai-1_1_3-lib-linux-i586-jdk.sfx cd /usr/lib/jvm/java-1.5.0-sun /tmp/jai-1_1_3-lib-linux-i586-jdk.sfx cd -
Installation Tomcat Server
- Installation Tomcat
# Debian GNU/Linux 4.0 aptitude -y install tomcat5.5 # Das Debian Tomcat Paket zieht als abhängige Komponente ein OpenSource Java Environment nach, hier stellen wir wieder auf SUN Java um update-java-alternatives --set java-1.5.0-sun
- Optional: Verwendung symbolischer Links für alle Webanwendungen erlauben - damit lässt sich der Ordner mit den temporären Images in das SAN auslagern
# Debian GNU/Linux 4.0 cp context.xml /var/lib/tomcat5.5/conf/
- Optional: Zusätzlichen Hauptspeicher für Tomcat zuweisen
# Debian GNU/Linux 4.0 cp tomcat5.5 /etc/default/
- Optional: Tomcat Admin Komponente installieren
# Debian GNU/Linux 4.0 aptitude -y install tomcat5.5-admin # Damit die Tomcat Admin Komponente läuft, muss Struts dem Security Manager hinzugefügt werden cp 51tomcat-admin.policy /etc/tomcat5.5/policy.d/ # Definition eines Nutzers für den Zugriff auf die Tomcat Admin Komponente # Nutzername und Kennwort vorher anpassen! (Im Beispiel "test" ersetzen) cp tomcat-users.xml /var/lib/tomcat5.5/conf/
Einbindung Dateiablage
Die konkreten Details hängen von den örtlichen Gegebenheiten ab. Im folgenden wird beispielhaft die Einbindung einer NFS Freigabe gezeigt.
- Portmapper installieren
# Debian GNU/Linux 4.0 aptitude -y install portmap
- Zielverzeichnis erstellen
mkdir -p /zielverzeichnis
- Mountpunkt zu /etc/fstab hinzufügen
# Debian GNU/Linux 4.0 echo "nfs-server:/freigabe /zielverzeichnis nfs rw,rsize=8192,wsize=8192,soft,addr=nfs-server 0 0" >>/etc/fstab
- NFS Mount aktivieren
mount /zielverzeichnis
Sudo zur Rechtezuweisung für Goobi Shellskripte
- Sudo installieren
# Debian GNU/Linux 4.0 aptitude -y install sudo
- Konfigurationsdatei von Sudo einspielen
# Debian GNU/Linux 4.0 cp sudoers /etc
LDAP Namensauflösung
- LDAP Bibliotheken für Namensauflösung installieren
# Debian GNU/Linux 4.0 aptitude -y install libnss-ldap
- Konfigurationsdatei der Namensauflösung einspielen
# Debian GNU/Linux 4.0 cp nsswitch.conf /etc
Goobi einrichten
- Goobi WAR Archiv einspielen, wird automatisch entpackt
# Debian GNU/Linux 4.0 # Damit die Goobi Komponente läuft, muss das Verzeichnis goobi dem Security Manager hinzugefügt werden cp 52goobi.policy /etc/tomcat5.5/policy.d/ # Goobi WAR Archiv einspielen, wird automatisch entpackt chown tomcat55:nogroup goobi.war cp -p goobi.war /var/lib/tomcat5.5/webapps/ sleep 30
- Anpassungen an lokale Besonderheiten in die Goobi Komponente einspielen; konkret werden alle lokal angepaßten Dateien in das webapps Verzeichnis kopiert und überschreiben dort die Originale aus dem Goobi WAR Archiv
# Debian GNU/Linux 4.0 # Die lokal angepaßten Dateien liegen in einem Verzeichnisbaum, welcher die gleiche Verzeichnishierarchie wie das Original webapps Verzeichnis von Goobi hat chown -R tomcat55:nogroup webapps/ cp -rp webapps/* /var/lib/tomcat5.5/webapps/goobi/
- Eine log-Datei für Goobi einrichten: dafür sind die Zeilen
permission java.io.FilePermission "${catalina.base}/webapps/goobi/WEB-INF/classes/logging.properties", "read";
permission java.io.FilePermission "${catalina.base}/webapps/goobi/WEB-INF/classes/log4j.properties", "read";
in die /etc/tomcat5.5/policy.d/03catalina.policy einzutragen. Außerdem muss der Pfad der log-Datei in /var/lib/tomcat5.5/webapps/goobi/WEB-INF/classes/log4j.properties gesetzt werden:
log4j.appender.rolling.File=${catalina.base}/logs/goobi.log
- Goobi Konfigurationsdateien und Shellscripte einspielen; beide Bestandteile liegen außerhalb vom Goobi webapps Verzeichnis, z.B. unter /home/goobi/config
# Debian GNU/Linux 4.0 # Die Goobi Konfigurationsdateien und Shellscripte liegen in einem Verzeichnisbaum, welcher nach /home/goobi kopiert wird # Für die Aufnahme von zur Laufzeit angelegten Dateien mit LDAP Bezug wird ein entsprechendes Verzeichnis angelegt mkdir -p -m 775 config/ldap chgrp nogroup config/ldap chmod 755 config/scripts/* cp -rp config /home/goobi/
- Optional: Ordner für heruntergerechnete Scans verlinken - damit lässt sich der Ordner mit den temporären Images z.B. in das SAN auslagern
# Debian GNU/Linux 4.0 ln -s /zielverzeichnis /var/lib/tomcat5.5/webapps/goobi/pages/imagesTemp
- Goobi aktivieren
# Debian GNU/Linux 4.0 /etc/init.d/tomcat5.5 restart
Konfiguration eines Tomcat 5 für den ContentServer2
In der Datei $TOMCAT_HOME/conf/web.xml müssen in der Konfiguration des Servlets "jsp" folgende zusätzliche Parameter eingetragen werden:
<init-param>
<param-name>compilerSourceVM</param-name>
<param-value>1.5</param-value>
</init-param>
<init-param>
<param-name>compilerTargetVM</param-name>
<param-value>1.5</param-value>
</init-param>
