Benutzer-Werkzeuge


Sidebar

ASV-Webseite

Dokumentation

Hilfe


Webseiten-Werkzeuge

Profil


Druck/Export

Drucken/PDF erzeugen

Installation der ASV Serverkomponente (DSS)

Der Betrieb des DSS benötigt keine root-Rechte und sollte daher auch nicht mit root-Rechten laufen. Allerdings sollte er aus Sicherheitsgründen als root installiert werden. Im Betrieb läuft er dann mit den Rechten eines eigens angelegten, unprivilegierten Benutzers asvdss.

Vorbereitung

Anlegen des Benutzers asvdss

Legen Sie unter debian/Ubuntu einen Systembenutzer asvdss mit dem folgenden Kommando an:

root@sonne:/# adduser --system --no-create-home --disabled-login asvdss

SuSE/OSS-Nutzer verwenden den folgenden Befehl:

root@sonne:/# useradd -r  -g nogroup -M asvdss

Die Installation und spätere Updates des DSS sollten immer als root duchgeführt werden. Die Ausführung des DSS sollte jedoch immer unter dem Benutzer asvdss geschehen. Dies ist durch die Verwendung des init-Skripts (siehe unten) gewährleistet. Dieses wird zwar als root gestartet, übergibt jedoch die Ausführung an den user asvdss.

Ubuntu/Debian

An der graphischen Oberfläche starten Sie zunächst ein Terminal (Menü → Terminal). Für die Installation der ASV kopieren Sie dann das Installationspaket für die Serverkomponente (z.B. 1.16.348_030_03_by-installer.zip) sowie gegebenenfalls die OWA-Zertifikatsdatei in ein geeignetes Verzeichnis (z.B. /tmp/asv). Selbstverständlich kann hierfür auch der Dateimanager unter xfce benutzt werden. Nun Archiv entpacken1) und (sofern nötig) das Installationsskript ausführbar machen:

root@sonne:/# mkdir /tmp/asv
root@sonne:/# unzip 1.16.348_030_03_by-installer.zip -d /tmp/asv
root@sonne:/# cd /tmp/asv
root@sonne:/tmp/asv# chmod +x install.sh

Nun kann der Installationsassistent gestartet werden. Er entpackt das ASV-Archiv in ein Verzeichnis, passt die Konfigurationsdatei und legt eine intiale Datenbank an:

root@sonne:/tmp/asv# ./install.sh

Nach der Installation kann das temporäre Verzeichnis samt OWA-Zertifikatsdatei gelöscht werden.

OpenSchoolServer

Kopieren Sie das Installationspaket für die Serverkomponente 1.16.348_030_03_by-installer.zip sowie gegebenenfalls die OWA-Zertifikatsdatei z.B. in das home-Verzeichnis des Benutzers root. Rechtklicken Sie auf das Dateisymbol und wählen Sie im Kontext-Menü „Hier entpacken“.

Das Archiv wird nun in das Verzeichnis 1.16.348_030_03_by-installer.zip entpackt. Zunächst muss noch die Datei install.sh ausführbar gemacht werden. Hierzu rechtsklicken Sie auf das Dateisymbol und wählen Sie im Kontextmenü „Eigenschaften“. Im folgenden Dialog wählen Sie den Reiter „Zugriffsrechte“ und aktivieren das Optionsfeld „Datei als Programm ausführen“.

Schließen Sie nun das Dialogfenster und doppelklicken Sie auf die Datei install.sh. Die Datei install.sh ist ein shell-Skript, eine Art ausführbare Textdatei. Daher werden Sie nun gefragt, ob Sie die Datei mit einem Texteditor öffnen oder ausführen möchten. Wählen Sie „Ausführen“.

Anschließend startet der Installationsassistent:

Installationsassistent

Weiter geht es nun distributionsunabhängig.

Sollen auf dem DSS-Rechner mehrere DSS-Instanzen gleichzeitig installiert werden, beispielsweise eine zweite Instanz für Schulen im Parallelbetrieb, weicht die Installationen in einigen Punkten leicht ab. Bitte beachten Sie dazu die entsprechenden Hinweise.

Installationsart

Im folgenden Dialog wird die Installationsart gewählt. Wählen Sie hier „Mehrplatz-Server“ aus.

Zielverzeichnis

Nun legen Sie das Zielverzeichnis fest. Der Vorschlag /opt/asv sollte übernommen werden.

Bei mehreren DSS-Instanzen installieren Sie jede in ein eigenes Verzeichnis. Einen zusätzlichen DSS im Parallelbetrieb zum Beispiel nach /opt/asv_para

Zertifikats-Auswahl

Ein Zertifikat ist nötig, um den Datenverkehr zwischen dem DSS und dem ZSS zu verschlüsseln. Hierfür benutzen Sie das OWA-Zertifikat, welches sich bereits an Ihrer Schule befindet. Das anzugebende Passwort ist nicht Ihr OWA-Passwort, sondern jenes, welches Sie bei der Installation des Zertifikats auf den Clients verwendet hatten. Das Passwort sollte sich im Safe befinden.

PostgreSQL Verbindungsdaten

Die Werte des folgenden Dialogs sind bereits sinnvoll vorbelegt und brauchen normalerweise bis auf die Passwörter nicht geändert werden:

  • PostgreSQL Verbindungsdaten
    • Kennung: postgres (Kennung des Datenbank-„Superusers“)
    • Passwort: In das Passwort-Feld geben Sie beim OSS das root-Passwort bzw, bei Ubuntu/Debian das zuvor geänderte postgresql-Passwort ein.
    • Host: localhost (Wenn DSS und Postgres auf derselben Maschine laufen, können Sie den eintrag stehen lassen)
    • Port: 5432 (Standardport von Postgresql)
    • Initiale Datenbank: postgres (In dieser Datenbank verwaltet postgres sich selbst)
  • ASV Datenbank
    • Datenbankname: asv (Diesen Namen können Sie so belassen)

      Für mehrere DSS-Instanzen vergeben Sie bitte jeweils eigene Datenbank-Namen, sodass jede Instanz ihre Daten getrennt von den anderen ablegt. Im Parallelbetrieb beispielsweise asv_para statt asv.

    • ASV DB Kennung: asv (Dies ist die Kennung des Datenbankbenutzers, der die Rechte an der Datenbank asv hat)
    • ASV DB Kennwort: Das ASV DB Passwort können Sie frei wählen. Dieses wird als Passwort für den Datenbankbenutzer asv gesetzt.

Der ASV-Client kommuniziert mit dem DSS (ASV-Server) über den Port 8765. Dieser Port muss gegebenenfalls geöffnet werden. Dies gilt sowohl für den Server als auch für die Clients!

Bei mehreren DSS-Instanzen benötigt jede Instanz ihren eigenen Port. Finden Sie in der Datei „configuration/config.ini“ die Zeile „org.osgi.service.http.port=8765“. Vergeben Sie einen anderen Port, zum Beispiel 8766. Im zweiten Schritt muss bei den Mehrplatz-Clients der Port ebenfalls entsprechend geändert werden. Damit der zweite DSS auch nach einem Update noch funktioniert, legen Sie bitte eine config.local.ini mit genau dieser neuen Zeile an.

Installation

Nun werden die Dateien aus dem Installationspaket in das Zielverzeichnis kopiert und die Konfigurationsdatei der ASV angepasst. In einem weiteren Schritt wird die Datenbank angelegt und initialisiert.

Verknüpfungen einrichten

Das Einrichten eines Desktop-Starters funktioniert nicht mit allen Desktop-Oberflächen (und ist auch nicht nötig, da der DSS als Service gestartet werden sollte). Daher: Option ggf. deaktivieren

Nach diesem Schritt kann der Assistent beendet werden.

Anpassen der Verzeichnisrechte

Nach der Installation „gehören“ alle installierten Verzeichnisse und Dateien dem Benutzer root. Da der DSS jedoch als Benutzer asvdss ausgeführt wird und seine logfiles im Unterverzeichnis logs ablegt, muss der Benutzer asvdss Schreibrechte auf dieses Verzeichnis erhalten. Da das Verzeichnis direkt nach der Installation noch nicht existiert, muss es noch angelegt werden. Des weiteren legt der DSS im Verzeichnis /opt/asv eine Dateil .lock an und schreibt in das Unterverzeichnis configuration. Daher benötigt der Benutzer asvdss auch Rechte an diesen Verzeichnissen.

root@sonne:/# mkdir /opt/asv/logs
root@sonne:/# chown asvdss:nogroup /opt/asv/logs
root@sonne:/# chown asvdss:nogroup /opt/asv/configuration
root@sonne:/# chown -R asvdss:nogroup /opt/asv/client
root@sonne:/# chown asvdss:nogroup /opt/asv

WICHTIG: Falls die interne H2-Datenbank statt PostgreSQL verwendet wird (möglich ab Versison 1.27), ist noch zusätzlich der Besitzer des Verzeichnisses database anzupassen:

root@sonne:/# chown -R asvdss:nogroup /opt/asv/database

Installation eines init-scripts zum automatischen Start der ASV

Der DSS ist ein klassischer daemon und sollte nicht mit einem direkten Aufruf, sondern über ein Init-Script gestartet bzw. gestoppt werden. Dieses Init-Script übernimmt auch den automatischen Start bzw. Stop des DSS beim Hoch- bzw. Herunterfahren des Servers.

Das Init-Script dss können Sie hier herunterladen. Die müssen dieses einfach entpacken und in das Verzeichnis /etc/init.d kopieren, ausführbar machen und an Ihre Gegebenheiten anpassen.

Das Skript funktioniert sowohl für debian-basierende Distributionen (z.B. Ubuntu) als auch für OpenSuSE.

Wichtig sind vor allem folgende Einträge:

JAVA_HOME=/opt/Oracle_Java/jre1.8.x_xx

Passen Sie diese Zeile falls nötig an das Installationsverzeichnis Ihrer Java-Installation an.

serviceUser="asvdss" 
serviceGroup="nogroup"

Linux-Benutzer und -Gruppe, mit dessen Rechten die ASV läuft

applDir="/opt/asv"
serviceUserHome=""

Installationsverzeichnis der ASV und home-Verzeichnis des ASV-Benutzers

serviceLogFile="/opt/asv/$serviceNameLo-service.log"

Hier werden die log-Dateien des Dienstes abgelegt. Wenn Sie die log-Dateien lieber in das Verzeichnis /var/log legen möchten, achten Sie darauf, dass der Benutzer asvdss dort entsprechende Schreibrechte besitzt. Der DSS schreibt noch eigene Log-Fils, die ebenfalls in /opt/asv/logs geschrieben werden.

Falls die h2-Version der Datenbank verwendet wird (ASV-Server-School), müssen am Anfang des Skripts noch die Zeilen

# Required-Start:       postgresql
# Required-Stop:        postgresql

ersetzt werden durch

# Required-Start:       
# Required-Stop:        

Setzen der Start-/Stop-Skripte -- System-V

Mit dem folgenden Befehl werden in den Verzeichnissen /etc/rcX.d symbolische Links gesetzt, die den DSS in den einzelnen Runleveln automatisch starten bzw. stoppen. Die Informationen hierzu sind im Kopf des init-Scripts abgelegt.

Debian/Ubuntu: root@sonne# update-rc.d dss defaults
OpenSuSE root@sonne# chkconfig --set dss on

Um die Links wieder zu entfernen, benutzen Sie die folgende Variante:

Debian/Ubuntu: root@sonne# update-rc.d -f dss remove
OpenSuSE: root@sonne# chkconfig --set dss off

Nun wird die ASV-Serverkomponente beim Herunterfahren des Servers beendet und beim Hochfahren automatisch gestartet.

Zum manuellen Starten, Stoppen und Statusabfragen können Sie nun die gewohnten Befehle verwenden:

root@sonne# /etc/init.d/dss start
root@sonne# /etc/init.d/dss stop
root@sonne# /etc/init.d/dss status

Test, ob ASV-Server läuft

Ein einfacher Test, ob der dss-Prozess läuft, kann mittels root@sonne:~/# ps –aux | grep java durchgeführt werden.

Wenn die ASV läuft, sollte die Ausgabe des obigen Befehls etwa so aussehen:

asvdss   12091  1.3  8.3 1925956 340104 ?      Sl   17:49   0:15 /usr/bin/java -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Xmx512m -Xms128m -Xverify:none -XX:PermSize=128m -XX:MaxPermSize=160m -XX:+UseBiasedLocking -XX:+CMSClassUnloadingEnabled -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -jar startup.jar
root     12309  0.0  0.0   7048   860 pts/2    S+   18:08   0:00 grep java

Interessant ist die erste Zeile. Sie zeigt den laufenden Prozess des DSS an. In der ersten Spalte steht der Benutzer asvdss, unter dem der Porzess ausgeführt wird.

Deinstallation der ASV

Für die Deinstallation der ASV genügt es, /opt/asv sowie die Datenbank asv zu löschen. Die ASV muss hierfür vorher beendet werden.

  1. Löschen des ASV-Verzeichnisses
    Dies geschieht mit Hilfe des Dateimanagers oder von der Konsole aus mittels root@sonne:/opt# rm –r asv
  2. Löschen der ASV-Datenbank
    Die ASV-Datenbank löschen Sie am einfachsten an der Konsole mit Hilfe des Tools dropdb.
    root@sonne:/# su postgres
    postgres@sonne:/ dropdb –h localhost asv
    Eine weitere Möglichkeit ist die Benutzung des graphischen Tools pgadmin.
  3. Löschen der symbolischen Links in den init-Verzeichnissen: update-rd.d -f dss remove (Debian/Ubuntu) bzw. chkconfig --set dss off (OpenSuSE)
1)
Falls das Paket unzip nicht installiert ist, lässt es sich mit dem Befehlt aptitude install unzip leicht nachinstallieren.