Alfresco Labs 3.1 unter OpenSuse 11.1 (Linux) installieren
Folgende Schritte und Kniffe sind für die Installation von Alfresco Labs 3.1 unter OpenSuse 11.1 notwendig:
- Java installieren
- ImageMagick installieren
- SWFTools installieren
- MySQL installieren
- OpenOffice installieren
- Alfresco-Installer ausführen
- Alfresco für MySQL konfigurieren
- Alfresco-Troubles beheben
- Firewall einrichten
- init-Skript einrichten
- Alfresco mittels mod_proxy ansprechen
Tomcat Log-Datei für die Fehlerdiagnose: /opt/Alfresco/tomcat/logs/catalina.out
Bitte Alfresco frühestens nach Schritt 6 zum Ersten Mal starten und die Logdatei auf Fehler überprüfen.
Sollten Zusatzmodule (.amp) installiert werden, müssen diese unter /opt/Alfresco/amps kopiert werden. Danach /opt/Alfresco/apply_amps.sh ausführen. (Sinnvoll erst, wenn Alfresco einwandfrei läuft, auch hier wieder die Log-Datei auf Fehler überprüfen. Ein Backup der War-Datei wird unter /opt/Alfresco/tomcat/webapps/alfresco.war-<Datum> angelegt.)
1. Java installieren
Installieren Sie über OpenSuse’s YUM (Yast Update Manager, zu finden unter Yast -> Software -> Software Management) mindestens Version 1.6 von Suns Java Plattform.
2. ImageMagick installieren
Aktuelle Version über YUM installieren.
3. SWFTools installieren
Zu finden unter: http://www.swftools.org/. Diese müssen selbst kompeliert werden und benötigen einige tools als Voraussetzung:
- make
- g++-4.1
- zlib1g-dev
- libungif4-dev
- libjpeg62-dev
- libfreetype6-dev
- libt1-dev
- xpdf-utils
- xpdf-common
Hinweis: Packet mittels ./configure, make und make install installieren (eventuell öfteres Ausführen bis alle abhängigen Softwarepakete installiert sind notwendig)
Installation durch Aufruf von pdf2swf testen.
4. MySQL installieren
MySQL Datenbank ebenfalls über YUM installieren. (setzen des Root-Passworts nicht vergessen)
5. OpenOffice installieren
OpenOffice ebenfalls über YUM installieren.
6. Alfresco-Installer ausführen
Laden Sie sich den aktuellen Installer für Linux von Alfresco Labs herunter (http://wiki.alfresco.com/wiki/Download_Labs) und führen Sie diesen aus. Folgen Sie den wenigen Anweisungen am Bildschirm.
7. Alfresco für MySQL konfigurieren
Um Alfresco mit MySQL zu betreiben sind einige Schritte notwendig.
1. Datenbank importieren
mysql -u root -p
source /opt/Alfresco/extras/databases/mysql/db_setup.sql
2. Datenverzeichnis von Alfresco löschen (wird beim Starten neu erzeugt)
Ist nur vorhanden falls Alfresco schon einmal gestartet wurde.
rm -R /opt/Alfresco/alf_data/
3. Konfiguration anpassen
/opt/Alfresco/alfresco.sh
- setzen Sie ALF_HOME auf /opt/Alfresco
- setzen Sie JAVA_HOME auf /usr/lib/jvm/java
/opt/Alfresco/tomcat/shared/classes/alfresco/extension/custom-hibernate-dialect.properties
- Kommentieren Sie hier den MySQL-Dialect aus und setzen sie alle anderen unter Kommentar.
/opt/Alfresco/tomcat/shared/classes/alfresco/extension/custom-repositories.properties
- Setzen Sie den Pfad für dir.root absolute: dir.root = /opt/Alfresco/alf_data
- Kommentieren Sie alle db. Paremeter aus (db.username, db.password, db.pool.inital, db.pool.max). Passwort und Benutzername sind durch das zuerst importierte SQL-Skript angelegt worden.
- setzen sie die Pfade unter “Sample external executable locations”. Bei einer Standardinstallation sollten diese wie folgt lauten:
ooo.exe=/usr/lib/ooo3/program/soffice
ooo.user=${dir.root}/oouser
img.root=/usr
swf.exe=/usr/local/bin/pdf2swf - Setzen sie das index tracking indem Sie index.tracking.cronExpression auskommentieren und index.recovery.mode=AUTO hinzufügen
- Kommentieren sie db.driver und db.url für MySQL aus un setzen Sie alle anderen unter Kommentar.
8. Alfreso-Troubles beheben
Leider treten nun in Alfresco immer noch einige Probleme auf:
- Vorschaubild in der Document Library werden zu groß generiert
Unter Linux schein in der Version 3.1 von Alfresco Labs der Resize mittels ImageMagick nicht standardmäßig zu funktionieren. Abhilfe schafft ein kleiner Eintrag in der Datei /opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/content-services-context.xml
Fügen Sie am Ende der Datei unter dem xml-Eintrag ‘<property name=”checkCommand”>’ -> ‘<bean name=”… ‘ -> ‘<property name=”CommandsAndArguments”>’ folgenden property-Dialog hinzu:
<property name="errorCodes">
<value>2</value>
</property> - Vorschaubild in der Document Library wird nicht generiert
Wird ein Dokument per Firefox hinaufgeladen wird kein Vorschaubild generiert. Dabei handelt es sich offenbar um ein Browser-Problem da bei Uploads mittels anderen Browsern die Generierung einwandfrei funktioniert. - Kalender-Eintrag lässt sich nicht erstellen
Auch hier wieder ein Browser-Problem (Vermutlich JS-Fehler). Im Internet Explorer funktioniert es einwandrei. - Des weiteren sind generell auch einige CSS Cross-Browser Probleme zu verzeichnen.
- Flash-Uploader funktioniert in Firefox via https nicht
- Benutzernamen dürfen keinen Punkt enthalten, da ansonsten einige Funktionen in Share nicht funktionieren
- Sites können nur vom Ersteller gelöscht werden, wird der erstellende Benutzer gelöscht wird die Site nicht mitgelöscht und kann auch nicht mehr entfernt werden
- Pagebrowser im Modul Links funktioniert nicht
- Wíki-Seiten dürfen keine Umlaute enthalten, so angelegte Seiten können weder bearbeitet noch gelöscht werden.
9. Firewall einrichten
Öffnen Sie folgende Ports in der Firewall:
Tomcat (Webinterface): 8080 TCP
FTP: 21 TCP
Samba (Windows-Freigabe): 139 TCP, 445 TCP, 137 UDP, 138 UDP
10. init-Skript einrichten
Kopieren Sie das folgende Skript nach /etc/init.d/ und passen Sie die Parameter ALF_HOME und JAVA_HOME an Ihre Installation an (sollten für eine Standardinstallation schon stimmen). Stellen Sie die Autostarts mittles Yast-> System -> System Services (Runlevel) ein. Aktivieren Sie hier sowohl MySQL als auch Alfresco.
#!/bin/sh
# Start or stop Alfresco server
# Set the following to where Tomcat is installed
ALF_HOME="/opt/Alfresco"
cd "$ALF_HOME"
APPSERVER="${ALF_HOME}/tomcat"
export JAVA_HOME="/usr/lib/jvm/java"
# Set any default JVM values
export JAVA_OPTS='-Xms128m -Xmx512m -XX:MaxPermSize=128m -server'
# Following only needed for Sun JVMs before to 1.5 update 8
export JAVA_OPTS="${JAVA_OPTS} -XX:CompileCommand=exclude,org/apache/lucene/index/IndexReader\$1,doBody -XX:CompileCommand=exclude,org/alfresco/repo/search/impl/lucene/index/IndexInfo\$Merger,mergeIndexes -XX:CompileCommand=exclude,org/alfresco/repo/search/impl/lucene/index/IndexInfo\$Merger,mergeDeletions"
#
if [ "$1" = "start" ]; then
"${APPSERVER}/bin/startup.sh"
elif [ "$1" = "stop" ]; then
"${APPSERVER}/bin/shutdown.sh"
fi
11. Alfresco mittels mod_proxy ansprechen
Um nun eine Alfresco Installation mittels mod_proxy und den bereits vorhandenen Webserver anzusprechen bedarf es in den Proxy-Einstellungen einer kleinen Rewrite-Regel da Tomcat automatisch immer /alfresco/<url> oder /share/<url> aufruft. Ein gültiger Apache-Proxy hat für Share also folgendes Setting:
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost On
RewriteEngine On
RewriteRule ^/share/proxy/(.*) /page/proxy/$1 [L,QSA,PT]
RewriteRule ^/share(.*) /$1 [PT]
ProxyPass / http://alfrescoserver:8080/share/
ProxyPassReverse / http://alfrescoserver:8080/share/
eine zweite Variante währe die Kombination von mod_proxy und mod_proxy_ajp um die Kommunikation zwischen Apache und Tomcat über das Apache JServ Protocol abzuwickeln.
- mod_proxy_ajp aktivieren
- in /opt/Alfresco/tomcat/conf/server.xml die Zeile mit dem AJP Connector ausdokumentieren
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" redirectPort="8443" protocol="AJP/1.3" /> - die Domain von ProxyPass und ProxyPassReverse auf ajp://alfrescoserver:8009/share/ abändern
- Port 8009 (TCP) in der Firewall öffnen