OpenKM 6.3.0 na bazie MySQL
system elektronicznego zarządzania dokumentami (DMS)
dla platformy ARM (na przykładzie TS-x21)
uruchomiony w Natywnym Debianie Squeeze
system elektronicznego zarządzania dokumentami (DMS)
dla platformy ARM (na przykładzie TS-x21)
uruchomiony w Natywnym Debianie Squeeze
[Notatki informacyjne]
Producent zaleca instalację na maszynach posiadających 2 GB pamięci RAM i procesora dual-core Intel 3,2 GHz (dla 30-50 użytkowników systemu), dlatego instalacja tego na maszynach typu TS-x21 z 1 GB RAM jest poniżej minimalnych wymagań (ale działa
[Instalacja]
- Zainstaluj Natywnego Debiana Squeeze.
- Pobierz Oracle Java SE Embedded (zgodnie z zaleceniem producenta OpenKM powinno być to JDK 6 lub 7, ale dla platformy ARMv5 dostępna jest jedynie wersja Embedded JRE). Wersja do pobrania:
ARMv5 Linux - Headless EABI, SoftFP ABI, Little Endian - ejre-7u75-fcs-b13-linux-arm-sflt-headless-18_dec_2014.tar.gz- Ze względów licencyjnych podaję linka do strony producenta. W celu pobrania konieczne będzie założenie konta w portalu oracle.com.
- W czasie czytania tego postu może być dostępna nowa wersja, dlatego w następnych krokach należy w odpowiednich miejscach uwzględnić poprawną lokalizację folderu JAVA.
- Ze względów licencyjnych podaję linka do strony producenta. W celu pobrania konieczne będzie założenie konta w portalu oracle.com.
- Przenieś pobrany plik ejre-... do powyżej zainstalowanego Natywnego Debiana do folderu
/opt/
- Pobierz załączony do tego postu plik libsigar-arm-linux.tar.gz i podobnie jak w pkt. 3 przenieś go do folderu
/opt/
- Zaloguj się do QNAPa (nie Natywnego Debiana) w celu przygotowania bazy MySQL
Bash:# Podłącz się do bazy MySQL /mnt/ext/opt/mysql/bin/mysql -h localhost -u root -p
Kod:# Utwórz bazę "okmdb" DROP DATABASE IF EXISTS okmdb; CREATE DATABASE okmdb DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_bin; # Utwórz użytkownika bazy "okmdb" CREATE USER openkm@localhost IDENTIFIED BY 'twoje_haslo_dla_uzytkownika'; GRANT ALL ON okmdb.* TO openkm@localhost WITH GRANT OPTION; exit;
- Za pomocą klienta SSH (np. PuTTY) zaloguj się na do powyższej instalacji Natywnego Debiana i wykonaj poniższe polecenia
-
Bash:
# Utwórz katalog OpenKM mkdir -p /opt/OpenKM cd /opt/OpenKM # Przenieś i rozpakuj pobraną instalację JAVA mv /opt/ejre-7u75-fcs-b13-linux-arm-sflt-headless-18_dec_2014.tar.gz /opt/OpenKM tar zxvf ejre-7u75-fcs-b13-linux-arm-sflt-headless-18_dec_2014.tar.gz rm -f ejre-7u75-fcs-b13-linux-arm-sflt-headless-18_dec_2014.tar.gz # Pobierz OpenKM 6.3.0 curl -L -O http://sourceforge.net/projects/openkm/files/6.3/openkm-6.3.0-community-tomcat-bundle.zip unzip openkm-6.3.0-community-tomcat-bundle.zip rm -f openkm-6.3.0-community-tomcat-bundle.zip # Podegraj bibliotekę libsigar-arm-linux.so tar zxvf ../libsigar-arm-linux.tar.gz mv libsigar-arm-linux.so tomcat/lib/sigar/ rm -f ../libsigar-arm-linux.tar.gz
-
Bash:
# Konfiguracja połączenia do bazy "okmdb" vim /opt/OpenKM/tomcat/conf/server.xml
XML:<Resource name="jdbc/OpenKMDS" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" validationQuery="select 1" username="openkm" password="*****" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/okmdb?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"/>
Następnie zakomentuj (dodaj znaczniki <!-- -->) poniższy fragment
XML:<Resource name="jdbc/OpenKMDS" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" validationQuery="select 1 from INFORMATION_SCHEMA.SYSTEM_USERS" username="sa" password="" driverClassName="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:${catalina.base}/repository/okmdb"/>
Bash:# Zmień dialekt połączenia vim /opt/OpenKM/tomcat/OpenKM.cfg
INI:hibernate.dialect=org.hibernate.dialect.HSQLDialect
INI:hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
- Ustaw parametry wykorzystania pamięci przez wirtualną maszynę JAVA (poniższa konfiguracja dotyczy urządzenia z 1 GB pamięci RAM)
Bash:vim /opt/OpenKM/tomcat/bin/setenv.sh
Bash:JAVA_OPTS="$JAVA_OPTS -Xms256m -sXmx1256m -XX:PermSize=256m -XX:MaxPermSize=512m"
Bash:JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256m"
- Zmień porty wykorzystywane przez serwer Tomcat
Bash:vim /opt/OpenKM/tomcat/conf/server.xml
- Shutdown port: 8005
- AJP Connector port: 8009
- Tomcat Connector port: 8080
- Tomcat SSL Connector port: 8443.
- Shutdown port: 9005
- AJP Connector port: 9009
- Tomcat Connector port: 9080
- Tomcat SSL Connector port: 9443.
- Shutdown port: 8005
- W celu poprawnego generowania podglądów wymagane jest zainstalowanie i konfiguracja:
- LibreOffice
Bash:# Dodaj backport do listy źródeł vim /etc/apt/sources.list
Bash:# Squeeze Backports na potrzeby instalacji LibreOffice deb http://ftp.vectranet.pl/debian-backports squeeze-backports main
Bash:apt-get update apt-get install -t squeeze-backports uno-libs3 # removes openoffice.org-* apt-get install -t squeeze-backports libreoffice
- SWFTools
Bash:mkdir /opt/OpenKM/swftools # Doinstaluj brakujące biblioteki aptitude update aptitude install build-essential libgif-dev xpdf libfreetype6 libfreetype6-dev libjpeg62 libjpeg8 libjpeg8-dev # Pobierz SWFTools cd /opt/OpenKM/ wget http://www.swftools.org/swftools-0.9.2.tar.gz tar -zvxf swftools-0.9.2.tar.gz cd swftools-0.9.2/ # Zainstaluj SWFTools ./configure --prefix=/opt/OpenKM/swftools make make install cd .. rm -rf swftools-0.9.2/ # Zmień konfigurację uruchamiania pdf2swf vim /opt/OpenKM/tomcat/OpenKM.cfg
INI:system.swftools.pdf2swf=/opt/openkm/bin/pdf2swf -f -T 9 -t -s storeallcharacters ${fileIn} -o ${fileOut}
INI:system.swftools.pdf2swf=/opt/OpenKM/swftools/bin/pdf2swf -f -T 9 -t -G -s storeallcharacters ${fileIn} -o ${fileOut}
- ImageMagick
Bash:# Instalacja ImageMagick aptitude install imagemagick
- LibreOffice
- Ustaw zmienną środowiskową JRE_HOME
Bash:vim /etc/environment
INI:JRE_HOME=/opt/OpenKM/ejre1.7.0_75/
Bash:export JRE_HOME source /etc/environment # Zweryfikuj, czy JRE_HOME została prawidłowo dodana printenv | grep JRE_HOME
- Test pierwszego uruchomienia serwera OpenKM
Bash:# Uruchomienie serwera Tomcat /opt/OpenKM/tomcat/bin/catalina.sh start # Podgląd logu (najlepiej w osobnym SSH lub screenie) tail -f /opt/OpenKM/tomcat/logs/catalina.out
Adres do zalogowania z przeglądarki:
http://[adres_qnapa]:9080/OpenKM
login: okmAdmin
hasło: admin
- Utwórz usługę serwera OpenKM
Bash:# Utwórz użytkownika systemu odpowiedzialnego za uruchomienie serwera (bez podawania hasła) adduser openkm # Nadaj uprawnienia użytkownikowi openkm chown -R --from=root openkm /opt/OpenKM/tomcat # Edytuj konfigurację usługi vim /etc/init.d/openkm
Bash:#!/bin/sh ### BEGIN INIT INFO # Provides: openkm # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start and stop OpenKM # Description: Enable Apache Tomcat (OpenKM) service provided by daemon. ### END INIT INFO ECHO=/bin/echo TEST=/usr/bin/test TOMCAT_USER=openkm TOMCAT_HOME=/opt/OpenKM/tomcat TOMCAT_START_SCRIPT=$TOMCAT_HOME/bin/startup.sh TOMCAT_STOP_SCRIPT=$TOMCAT_HOME/bin/shutdown.sh $TEST -x $TOMCAT_START_SCRIPT || exit 0 $TEST -x $TOMCAT_STOP_SCRIPT || exit 0 start() { $ECHO -n "Starting OpenKM (Tomcat)" su - $TOMCAT_USER -c "$TOMCAT_START_SCRIPT &" $ECHO "." } stop() { $ECHO -n "Stopping OpenKM (Tomcat)" su - $TOMCAT_USER -c "$TOMCAT_STOP_SCRIPT 60 -force &" while [ "$(ps -fu $TOMCAT_USER | grep java | grep tomcat | wc -l)" -gt "0" ]; do sleep 5; $ECHO -n "." done $ECHO "." } case "$1" in start) start ;; stop) stop ;; restart) stop sleep 30 start ;; *) $ECHO "Usage: openkm {start|stop|restart}" exit 1 esac exit 0
Bash:# Nadaj odpowiednie uprawnienia na usługę chmod 755 /etc/init.d/openkm # Ustaw poziomy uruchamiania usługi update-rc.d openkm defaults # Uruchom usługę service openkm start
-
- Za pomocą klienta SSH (np. PuTTY) zaloguj się do QNAPa (nie do instalacji Natywnego Debiana) i wykonaj poniższe polecenia w celu uruchamiania usługi openkm po każdym restarcie serwera
Bash:vim /share/HDA_DATA/debpool/squeeze/env.init
Powodzenia