Page tree
Skip to end of metadata
Go to start of metadata

Wir freuen uns über jegliches Feedback und Anregungen um diese Doku und die darin enthaltenen Scripte zu verbessern.

Auch suchen wir noch jemand der uns hilft eine Installationspaket incl. der richtigen Abhängigkeiten von Java und Screen etc. zu erstellen



Die folgende Anleitung wurde getestet unter: Debian 8.5:

Schritt 1 von 3 Aktuelle JRE von Oracle installieren

Für Ubuntu:

die folgende Anweisung beachten: https://wiki.ubuntuusers.de/Java/Installation/Oracle_Java/Java_8/#Java-8-JRE

(Achtung: die JRE gilt dann Systemweit für jeden java -Aufruf)


Für Debian: 

- die  tar.gz Datei von Oracle (http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html) in das  /opt/ Verzeiochnis entpacken. (ein  jre1.8.0_xx Verzeichnis sollte dabei entstehel) 

- den Symlink unter /etc/alternatives/java auf /opt/jre1.8.0_XX/bin/java  setzen (normalerweise ist dies bei einer Standardinstallation OpenJDK, unter /usr/lib/jvm)

prompt> ln -s -f /opt/jre1.8.0_XX/bin/java /etc/alternatives/java


Die Java-Installation testen 

prompt> java -version 


Wenn die korrekte Java Laufzeitugebung gefunden wurde, sollte die Ausgabe etwa so aussehen:

java version "1.8.0_xxx" 
...


Wir empfehlen, mit der PicApport Installation nur dann fortzufahren wen die Java Laufzeitumgebung erfolgreich installiert wurde.



Schritt  2 von 3 PicApport-Installation

Verzeichnisstruktur  (Vorschlag)

  • /opt/picapport
    • picapport-headless.jar - Java Programm Datei
    • StartPicApport.sh Shell-Script um PicApport zu starten
    • .picapport  (Das PicApport Datenverzeichnis)
  • /etc/init.d
    • picapport (Daemon script)


Wir empfehlen die Installation als  root durchzuführen.


prompt> su - 


Das picapport-Verzeichnis unterhalb von /opt  anlegen 

prompt> mkdir /opt/picapport

Die aktuelle picapport-headless.jar von http://www.picapport.de/photo-server-download.php herunterladen und nach  /opt/picapport kopieren.


Das PicApport Datenverzeichnis anlegen

 prompt> mkdir /opt/picapport/.picapport


Ein Shell.Script mit dem Namen StartPicApport.sh in  /opt/picapport mit folgendem Inhalt anlegen:

#!/bin/bash
java -Xms512m -Xmx1024m -Duser.home=/opt/picapport -jar /opt/picapport/picapport-headless.jar

Das Script kann man hier herunterladen:  StartPicApport.sh


Das Script ausführbar machen

prompt> chmod a+x /opt/picapport/StartPicApport.sh


Die picapport.properties Datei im PicApport Datenverzeichnis  /opt/picapport/.picapport mit folgendem Inhalt anlegen: (Eine Beschreibung der Datei findet sich hier: PicApport-Server Guide)

server.port=80
server.ssl=false
user.log.access=true
gui.enabled=false
robot.root.0.id=Photos
robot.root.0.path=/srv/photos

Die Datei kann man hier herunterladen: picapport.properties




Schritt 3 von 3 Erstellen und konfigurieren des Daemons (optional)

screen-Packet mit folgendem Kommando installieren:

prompt> apt-get install screen


Das Daemon-Start-Script mit dem Namen picapport unterhalb von /etc/init.d erstellen:

 #!/bin/bash
# Filename    : picapport
# Version     : 2.0
# Date        : 20.09.2016
# Copyright   : (c) 2016 Contecon Software GmbH
# Description : starting script for starting PicApport as a daemon
# History     : 20.08.2015 - Initial version
#               20.09.2016 - revised  
 
### BEGIN INIT INFO
# Provides:             picapport
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Default-Start:        2
# Default-Stop:         1
# Short-Description:    PicApport Server
### END INIT INFO
 
PATH=/usr/bin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=picapport
DESC="PicApport Daemon"
DAEMON_ARGS="-d -m -S $NAME bash /opt/picapport/StartPicApport.sh"

 
case "$1" in
    start)
    
    start-stop-daemon --test --start --pidfile "/var/run/$NAME.pid" --exec /usr/bin/screen -- $DAEMON_ARGS
    if [ $? -eq 0 ]; then
       echo -n "Starting $DESC: "
       start-stop-daemon --start --pidfile "/var/run/$NAME.pid" --exec /usr/bin/screen -- $DAEMON_ARGS 
       PID=$( ps -aux | grep 'StartPicApport.sh'  | grep --ignore-case 'screen' | awk '{print $2}' | head -1)
       echo $PID > /var/run/$NAME.pid
       echo "Daemon $NAME started. To access console type: screen -R $PID.picapport"
    else
       echo -n "Daemon $NAME already running. To access console type: screen -R "
       cat /var/run/$NAME.pid | awk '{print $1".picapport"}'
    fi
    ;;
    
    stop)
    echo -n "Stopping $DESC: "
    start-stop-daemon --stop −−retry=SIGTERM/30/KILL/10 --pidfile "/var/run/$NAME.pid" --exec /usr/bin/screen -- $DAEMON_ARGS 
    if [ $? -eq 0 ]; then
       echo "Daemon $NAME stopped."
    else 
       echo "Daemon $NAME was not started."
    fi
    [ -e  /var/run/$NAME.pid ] && rm /var/run/$NAME.pid
    ;;
    
  
    status)
    start-stop-daemon --status --pidfile "/var/run/$NAME.pid" --exec /usr/bin/screen -- $DAEMON_ARGS   
    if [ $? -eq 0 ]; then
       echo -n "Daemon $NAME is running. To access console type: screen -R "
       cat /var/run/$NAME.pid | awk '{print $1".picapport"}'
    else 
       echo "Daemon $NAME was not started."
    fi
    ;;
  
    *)
    echo "usage: /etc/init.d/picapport start|stop|status"
    ;;
    
esac
exit 0

Das Script kann man hier herunterladen: picapport


Den Daemon ausführbar machen

prompt> chmod a+x /etc/init.d/picapport


Den Daemon konfigurieren

prompt> update-rc.d picapport defaults



Den Daemon benutzen

Sobald der Daemon konfiguriert ist, wird der PicApport Server beim Starten das Systems automatisch gestartet.

Der Daemon unterstützt die folgenden Kommandos: (Die Ausgabe wird in blau dargestellt)

Die grün markierten Ausgaben können benutzt werden um auf die Konsole des PicApport Servers zuzugreifen (screen)


Start des Daemons:

prompt> /etc/init.d/picapport start

Would start /usr/bin/screen -d -m -S picapport bash /opt/picapport/StartPicApport.sh.
Starting PicApport Daemon: Daemon picapport started. To access console type: screen -R 4573.picapport


Stop des Daemons:

prompt> /etc/init.d/picapport stop

Stopping PicApport Daemon: Daemon picapport stopped.


Daemon Status anzeigen:

prompt> /etc/init.d/picapport status

Daemon picapport is running. To access console type: screen -R 4722.picapport