GNU Health Dokumentation (deutsch)/ Installation
GNU Health/Installation !!!! ACHTUNG !!!! VERALTETE VERSION !!!! FÜR AKTUELLE VERSION BITTE ENGLISCHES WIKIBOOK BENUTZEN !!!!
Anforderungen
[Bearbeiten]Die letzte, stabile GNU Health Version hat folgende Anforderungen:
- Betriebssystem: Für den Server die meisten freien/libre Systeme werden unterstützt, wie z.B. GNU/Linux oderr FreeBSD
- Datenbank: PostgreSQL < 10.0
- Python: >= 3.4 ( Empfohlen >= 3.6 )
- Tryton: = 4.2
- BASH Shell
- PIP-Version für Python 3, verifizieren durch:
pip --version
Hier sollte ein python3 auftauchen, z.B.:
pip x.x.x from /usr/local/lib/python3.6/site-packages (python 3.6)
Wenn hier python2.x steht: Stop! und pip für python 3 besorgen.
Installation von GNU Health auf GNU/Linux und FreeBSD
[Bearbeiten]Betriebssystem-spezifische Anforderungen
[Bearbeiten]Die folgende Tabelle enthält Anweisungen, um das Betriebssystem für eine Standard GNU Health Installation vorzubereiten. Die Systeme und Versionen in der Tabelle sind mit den Anweisungen für jedes OS getestet.
Die Installationsanweisungen für die unterschiedlichen Systeme und Distributionen beziehen sich auf neue Installationen.
Der Einfachheit halber wurden nur die Server aufgesetzt, ohne Desktop. Ohne Firewall (das wird im Abschnitt 'Sicherheit' behandelt) aber mit SSH Installation.
Die Anweisungen wie hier beschrieben wurden mit den folgenden Systemen getestet:
Betriebssystem | Version | Link | Anmerkungen |
---|---|---|---|
Arch Linux | 2017.07.01 | Arch Linux setup | |
Debian | 9 | Debian setup | |
FreeBSD | 11.1 | FreeBSD setup | |
openSUSE | Leap / Tumbleweed | openSUSE setup | |
Ubuntu | 16.04 LTS | Ubuntu setup |
Hinweise zum Dateisystem
[Bearbeiten]
PostgreSQL auf BTRFS : Falls Sie BTRFS nutzen - wie eigentlich alle aktuellen Systeme - stellen Sie sicher das das Subvolume, auf dem die Datenbank liegt, mit der Option nodatacow gemounted wird. |
Installation Network Time Protocol (NTP)
[Bearbeiten]Damit GNU Health Server und Client sauber miteinander reden ist es wichtig, dass beide die gleiche Systemzeit haben. Dies erreicht man am Einfachsten, indem NTP aktiviert wird NTP Server .
Dies ist eine wichtige Einstellung, da viele Dokumente einen Zeitstempel tragen, der rechtliche Auswirkungen haben kann.
Betriebssystem-User anlegen
[Bearbeiten]
Führen Sie diesen Schritt nur aus falls der User nicht während des Aufsetzens des Betriebssystems angelegt wurde. |
Die folgenden Schritte legen den GNU Health User an. Viele Systeme erlauben die Anlage eines Users bereits beim Aufsetzen des Betriebssystems. Falls der 'gnuhealth' User bereits angelegt wurde, können Sie diesen Schritt überspringen.
Führen Sie die folgenden Kommandos als root aus:
adduser gnuhealth
Note: Falls ihr Betriebssystem nicht den adduser Befehl unterstützt, nehmen Sie useradd-Befehl:
useradd -m gnuhealth
PostgreSQL Authentifizierungsmethode
[Bearbeiten]PostgreSQL unterstützt unterschiedliche Authentifizierungsmethoden (MD5, ident, trust, ...). Die standardmäßig benutzte Methode kann für verschiedene Betriebssysteme unterschiedlich sein.
Die GNU Health Standardinstallation verwendet die trust Authentifizierungsmethode; die relevante Konfigurationsdatei pg_hba.conf muss diesbezüglich überprüft werden.
In UNIX/Linux Betriebssystemen kann diese Datei mit folgendem Befehl lokalisiert werden, der als Benutzer root ausgeführt werden muss:
sudo -u postgres psql -t -P format=unaligned -c 'show hba_file';
Nachstehend ein Beispiel eines Konfigurationsdatei-Eintrags für die trust Methode:
local all all trust
Dieses weitere Eintragsbeispiel kann Probleme beim Verbindungsaufbau lösen, wie sie insbesondere beim Anlegen der GNU Health Datenbank im Rahmen der erstmaligen Verwendung des Tryton-Klienten (siehe weiter unten) auftreten können (keine Anzeige der "Create" Schaltfläche):
host all all 127.0.0.1/32 trust
Nach Änderungen der Konfigurationsdatei muss der postgreSQL Server neu gestartet werden.
Viele Authentifizierungsfehler (z.B. Datenbank-Verbindungs-Fehler) sind auf Fehler in dieser Konfigurationsdatei zurückzuführen. Natürlich können andere Authentifizierungsmethoden spezifiziert und die Tryton / GNU Health Konfigurationsdatei entsprechend angepasst werden. Einfachheitshalber sind die Dokumentation und die Beispieldateien in diesem Buch auf diese eine Methode, trust, beschränkt.
Anlegen des Datenbank Nutzers
[Bearbeiten]Der folgende Befehl wechselt zum postgres Administrator Nutzer und erteilt dem neu eingerichteten gnuhealth Administrator Nutzer die erforderlichen Rechte:
Frühren Sie als root aus:
su - postgres -c "createuser --createdb --no-createrole --no-superuser gnuhealth"
Herunterladen und Installieren von GNU Health
[Bearbeiten]Ausführen des GNU Health Installer
[Bearbeiten]
Führen Sie die folgende Installation als der der neu angelegte gnuhealth Nutzer aus, NICHT als root! |
Die Hauptschritte sind:
1. Wechseln Sie zum Nutzer gnuhealth:
Hinweis: Wenn Sie den nachstehenden Befehl nicht als Nutzer root ausführen, werden Sie nach dem Passwort des Nutzers gnuhealth gefragt.
su - gnuhealth
2. Laden Sie GNU Health von GNU.org. Die neueste freigegebene Version ist immer unter http://ftp.gnu.org/gnu/health/gnuhealth-latest.tar.gz verfügbar:
wget http://ftp.gnu.org/gnu/health/gnuhealth-latest.tar.gz
3. Entpacken Sie das geladene Archiv und wechseln Sie in das neu angelegte Verzeichnis:
tar xzf gnuhealth-latest.tar.gz
cd gnuhealth-*
4. Führen Sie das Skript gnuhealth_install.sh aus:
Hinweis: Sie werden am Ende der Installation zur Eingabe eines neuen GNU Health Tryton master server Passwort gefragt (und gleich darauf zur nochmaligen Eingabe desselben Passworts zur Bestätigung aufgefordert).
./gnuhealth_install.sh
Hinweis: Die im Rahmen dieses Installationsschrittes neu eingerichtete Datei .gnuhealthrc im Heimverzeichnis des Nutzers gnuhealth legt gleich zu Beginn das Programm vi als Texteditorprogramm fest. Wenn Sie statt vi einen anderen Texteditor verwenden möchten, muss folgende Zeile (noch vor dem nächsten Schritt) entsprechend geändert werden:
export EDITOR=vi
Laden Sie schließlich die BASH Umgebung für den gnuhealth Nutzer:
source "$HOME"/.gnuhealthrc
Hinweis |
Falls Sie GNU Health erstmalig in der Version 2.8 installieren und die Meldung erhalten: "TRYTOND_CONFIG variable not set and No configuration file specified", dann müssen Sie das Server Passwort mit folgendem Befehl aufsetzen:
python "$HOME"/gnuhealth/tryton/server/util/serverpass.py
|
Aktivieren von Netzwerkschnittstellen für das JSON-RPC Protokoll
[Bearbeiten]Der Tryton GNU Health Server empfängt Anmeldungen an localhost am Port 8000 und erlaubt keine direkten Verbindungen von anderen Rechnern. Mit dem Befehl:
editconf
kann der Parameter listen im Abschnitt [jsonrpc] definiert werden, um die Netzwerkschnittstelle zu aktivieren und die Verbindungsherstellung von anderen Rechnern aus zu ermöglichen. Zum Beispiel erlaubt der folgende Block:
[jsonrpc] listen=*:8000
die Verbindungsherstellung von allen anderen Geräten im Netzwerk.
Aufsetzen eines lokalen Verzeichnisses für Attachments
[Bearbeiten]Tryton verwendet standardmäßig ein systemweites Verzeichnis für die Speicherung von Attachments. In GNU Health ist es empfehlenswert, die Attachments im Nutzerbereich von gnuhealth zu abzulegen.
Editieren Sie dazu mit dem editconf Befehl die Tryton Server Konfigurationsdatei und überprüfen bzw. legen Sie das für Attachments zu verwendende Verzeichnis im Abschnitt [database] fest; zum Beispiel:
editconf
[database] path = /home/gnuhealth/attach
Hinweis: falls der mit dem Befehl echo "$HOME" ausgegebene Pfadname des Heimverzeichnisses nicht /home/gnuhealth sein sollte, ist der Eintrag in der Konfigurationsdatei entsprechend auszubessern: Überprüfen Sie daher jedenfalls diesen Pfadeintrag in der Konfigurationsdatei!
Konfiguration der Log Datei
[Bearbeiten]Hinweis |
Dieser Abschnitt gilt ab Version 2.8 von GNU Health |
Ab GNU Health 2.8 basiert das Loggen und Verfolgen von Ereignissen durch den Server auf einer Log Konfigurationsdatei im Konfigurationsverzeichnis "${GNUHEALTH_DIR}"/tryton/server/config/.
In der Standarddistribution heißt diese Konfigurationsdatei gnuhealth_log.conf. Ihr Inhalt ist in etwa wie folgt:
Hinweis: falls der mit dem Befehl echo "$HOME" ausgegebene Pfadname des Heimverzeichnisses nicht /home/gnuhealth sein sollte, sind Einträge in der Konfigurationsdatei entsprechend auszubessern: Überprüfen Sie daher jedenfalls diesen Pfadeintrag in der Konfigurationsdatei!
[formatters]
keys: simple
[handlers]
keys: rotate, console
[loggers]
keys: root
[formatter_simple]
format: [%(asctime)s] %(levelname)s:%(name)s:%(message)s
datefmt: %a %b %d %H:%M:%S %Y
[handler_rotate]
class: handlers.TimedRotatingFileHandler
args: ('/home/gnuhealth/gnuhealth/logs/gnuhealth.log', 'D', 1, 30)
formatter: simple
[handler_console]
class: StreamHandler
formatter: simple
args: (sys.stdout,)
[logger_root]
level: NOTSET
handlers: rotate, console
In diesem Beispiel (und in the Standard-Konfigurationsdatei) werden die Log Daten in eine Logdatei im Standard-Logverzeichnis geschrieben. Dies kann nach Bedarf angepasst werden.
Um den Logging Dienst zu verwenden, muss beim Aufruf des Tryton Servers (siehe nächter Abschnitt) das Argument --logconf mit dem Pfad zur Log Konfigurationsdatei ("gnuhealth_log.conf") angegeben werden.
Nähere Informationen sind in folgenden Quellen verfügbar:
- Python logging facility logging tutorial: https://docs.python.org/2/howto/logging.html#logging-basic-tutorial
- Tryton Server logging documentation: http://trytond.readthedocs.org/en/latest/topics/logs.html
Hochfahren des Tryton Servers
[Bearbeiten]Wechseln Sie zum Verzeichnis des neu installierten Systems; dafür steht seit Version 2.2.1 der alias cdexe zur Verfügung:
cdexe
und fahren Sie den Tryton Server hoch.
./trytond
Es sollten Meldungen wie die nachstehenden angezeigt werden. Achten Sie auf die letzte Zeile: INFO:server:starting JSON-RPC protocol on *:8000
Hinweis |
Benutzen Sie die --logconf Option, um eine Log Datei zu führen (siehe auch oben) |
[Wed Jan 14 11:01:20 2015] INFO:server:using /home/gnuhealth/gnuhealth/tryton/server/config/log.conf as logging configuration file [Wed Jan 14 11:01:20 2015] INFO:trytond.server:using /home/gnuhealth/gnuhealth/tryton/server/config/trytond.conf as configuration file [Wed Jan 14 11:01:20 2015] INFO:trytond.server:initialising distributed objects services [Wed Jan 14 11:01:20 2015] INFO:trytond.server:starting JSON-RPC protocol on *:8000
Installation des Tryton Klienten
[Bearbeiten]
Installieren Sie den Tryton Klienten nicht als gnuhealth Nutzer. Der gnuhealth Nutzer sollte ausschließlich für die Ausführung des GNU Health Servers verantwortlich sein |
Standardmethode
[Bearbeiten]FreeBSD, GNU/Linux und andere *NIX Betriebssysteme
[Bearbeiten]1. Herunterladen der tarball-Archivdatei des Tryton Klienten von der Tryton Webseite [1]
wget http://downloads.tryton.org/3.4/tryton-3.4.2.tar.gz
Die Haupt- und Unterversionsnummer des Tryton-Klienten muss mit jener des verwendeten Tryton-Servers übereinstimmen (also für eine Tryton-Server Version 3.4.# auch eine Klienten-Version 3.4.#)! Die höchste aktuell verfügbare Klienten-Version kann durch Aufsuchen des Distributions-Verzeichnisses (hier: http://downloads.tryton.org/3.4/) im Webbrowser identifiziert werden. |
2. Entpacken des Klienten tarballs:
tar -xzvf tryton-3.4.2.tar.gz
3. Ausführen des Klienten:
cd tryton-3.4.2/bin
./tryton
Microsoft Windows
[Bearbeiten]1. Herunterladen der Installationsdatei für den Tryton Klienten [2].
2. Führen Sie die Installationsdatei aus und folgen Sie den angezeigten Anweisungen
Alternative Methode (PIP)
[Bearbeiten]Hinweis: Es ist bekannt, dass eine lokale Installation des Tryton Klienten mit PIP zu Problemen führt. Wir empfehlen, der Standardmethode zu folgen. Die nachstehende Anleitung ist für eine systemweite Klienteninstallation (ohne --user Option).
pip install "tryton>=3.4,<3.5"
Falls Sie einen älteren Tryton Klienten haben (der mit PIP installiert wurde), können Sie ihn mit folgendem Befehl auf die jüngste Version aktualisieren:
pip install --upgrade tryton
Der folgende Befehl startet Ihren Tryton Klienten
tryton
Setzen der Position der Reiter ("Tabs") des Tryton Klienten für GNU Health
[Bearbeiten]Bevor Sie die Installation der Datenbank starten, sollten Sie für die bestmögliche Navigation die Position der Reiter("Tabs") als obenauf ("Top") festlegen.
Navigieren Sie dazu im ("Tryton") Hauptfenster des Tryton Klienten wie folgt: Options → Form → Tabs Position → Top.
Sichern Sie abschließend die gesetzten Optionen: Options → Save Options.
Sie können den Standarwert auch direkt in der Tryton Klienten Konfigurationsdatei tryton.conf auf "top" ändern. Diese Konfigurationsdatei befindet sich im Verzeichnis "$HOME"/.config/tryton/HAUPTVERSIONSNUMMER.UNTERVERSIONSNUMMER/tryton.conf). Für eine Installation von Tryton Version 3.4, können Sie zum Beispiel den aktuellen Wert Ihrer Reiterpositionen mit folgenden Befehlen überprüfen:
cd "$HOME"/.config/tryton/3.4 grep form_tab tryton.conf
Dies sollte form_tab = top liefern. Sollte ein anderer Wert angezeigt werden, bessern Sie in der tryton.conf Datei diese Zeile aus.
Anlegen der GNU Health Datenbank
[Bearbeiten]Der erste Schritt besteht darin, eine Datenbank für die Verwaltung aller Informationen Ihres GNU Health Systems anzulegen.
Die gesamte GNU Health Information wird in einer PostgreSQL Datenbank gespeichert und vom Tryton Kernel verarbeitet. Es sind keine Befehle auf Betriebssystemebene erforderlich un die Datenbank anzulegen oder zu verwalten: dies kann alles über die Tryton / GNU Health Benutzeroberfläche erfolgen.
Um die Datenbank anzulegen, öffnen Sie Ihren Tryton Klienten. Daraufhin wird folgendes "Login" Fenster angezeigt:
Klicken Sie zunächst auf Manage profiles, dann auf Add. Geben Sie Ihrer Verbindung ("connection") auf der linken Seite einen Namen, und füllen Sie die Felder auf der rechten Seite aus. Falls Sie die Klienten Installation auf demselben Rechner durchführen, der auch den GNU Health Server beherbergt, wählen Sie localhost als "hostname". Beispiel:
Nach einem Klick auf die Create Schaltfläche erscheint folgende Anzeige:
Das Standard-Passwort des Tryton Servers ist admin (Sie können es auch später ändern). Geben Sie Ihrer Datenbank einen Namen, und geben Sie ein neues Administrator-Passwort (zwei Mal) ein. Hinweis: dies ist das Passwort des "super-user"s für Ihre neue Datenbank; definieren Sie daher insbesondere beim Aufsetzen eines Produktions-Servers unbedingt ein starkes Passwort.
Überprüfen Sie Ihr Server log (oder die Konsole) auf Fehlermeldungen. Behandeln Sie allfällige Probleme (etwa Meldungen zu fehlenden Python Modulen oder offene Abhängigkeiten), löschen Sie ("drop") die soeben angelegte Datenbank und wiederholen Sie die gesamte Prozedur.
Nach einem erfolgreichen Anlegen der Datenbank klicken Sie auf OK: Sie können sich nun anmelden!
Anmeldung bei der Applikation
[Bearbeiten]Bei der Rückkehr zum Anmeldeschirm sollte das soeben angelegte Profil angewählt sein. Füllen Sie das Anmeldeformular wie folgt aus:
- User name: der von Ihnen zuvor verwendete, für gewöhnlich: admin
- Passwort: das von Ihnen im vorigen Abschnitt zweimal Eingegebene
Installation der Standardmodule
[Bearbeiten]Von diesem Punkt an werden Sie den Klienten für fast alle Aufgaben verwenden. Beginnen Sie mit der Installation der Grundfunkionalitäten:
- Nach dem Anlegen der Datenbank fordert Sie das System dazu auf, neue Nutzer anzulegen. Sie können diesen Schritt vorläufig überspringen.
- Danach wird eine Liste von Modulen angeboten, die gewünschte Funktionalitäten bereitstellen. Falls Sie das "Modules" Fenster nicht sehen, navigieren Sie auf der rechten Seite dorthin: Administration → Modules → Modules.
- Wählen Sie das health_profile Modul an, und Klicken Sie auf Mark for installation:
- Klicken Sie auf das Action Symbol (ein blaues diagonal verdrehtes Quadrat) and wählen Sie Perform Pending Installation/Upgrade:
- Tryton wählt daraufhin automatisch alle weiteren für die Installation benötigten Module aus:
- Klicken Sie auf Start Upgrade. Diese Aufgabe wird (je nach verwendetem Rechner) einige Zeit in Anspruch nehmen. Nach erfolgreicher Beendingung wird folgende Nachricht angezeigt:
Glückwunsch zur erfolgreichen GNU Health Installation!
Anlegen einer Firma
[Bearbeiten]Der nächste Schritt ist das Anlegen der ersten Firma: Ihrem Gesundheitszentrum. Ein Installationsassistent ist Ihnen dabei behilflich.
Drücken Sie F3 um eine neue Firma anzulegen.
Hinweis: Stellen Sie sicher, dass Sie im Partei ("party") Formular das institution attribute setzen. Sie werden im folgenden diese Firma mit Ihrer Gesundheitseinrichtung verlinken. Der screenshot in diesem Abschnitt zeigt genauere Details an.
Glückwunsch! Sie haben die Erstinstallation von GNU Health abgeschlossen. Im nächsten Kapitel werden wir besprechen, wie weitere Funktionalitäten durch Installation zusätzlicher Module ergänzt werden können.