- <title>2.4. Anpassung der PostgreSQL-Konfiguration</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="Lx-Office: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s03.html" title="2.3. Lx-Office-Konfigurationsdatei"><link rel="next" href="ch02s05.html" title="2.5. Webserver-Konfiguration"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.4. Anpassung der PostgreSQL-Konfiguration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Zurück</a> </td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right"> <a accesskey="n" href="ch02s05.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.4. Anpassung der PostgreSQL-Konfiguration"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Anpassung-der-PostgreSQL-Konfiguration"></a>2.4. Anpassung der PostgreSQL-Konfiguration</h2></div></div></div><p>PostgreSQL muss auf verschiedene Weisen angepasst werden.</p><div class="sect2" title="2.4.1. Zeichensätze/die Verwendung von UTF-8"><div class="titlepage"><div><div><h3 class="title"><a name="Zeichens%C3%A4tze-die-Verwendung-von-UTF-8"></a>2.4.1. Zeichensätze/die Verwendung von UTF-8</h3></div></div></div><p>Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet
- werden. Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in
- Version 8.2 oder neuer benutzt werden, und der
- PostgreSQL-Datenbankcluster muss ebenfalls mit UTF-8 als Locale
- angelegt worden sein.</p><p>Dieses ist kann überprüft werden: ist das Encoding der Datenbank
- “template1” “UTF8”, so kann auch Lx-Office mit UTF-8 betrieben werden.
- Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
- UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
- Ubuntu kann dies z.B. für PostgreSQL 8.2 mit dem folgenden Befehl
- getan werden:</p><pre class="programlisting">pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2 clustername</pre><p>Die Datenbankversionsnummer muss an die tatsächlich verwendete
- Versionsnummer angepasst werden.</p><p>Unter anderen Distributionen gibt es ähnliche Methoden.</p><p>Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und
- ist ein Neuanlegen eines weiteren Clusters nicht möglich, so kann
- Lx-Office mit ISO-8859-15 als Encoding betrieben werden.</p><p>Das Encoding einer Datenbank kann in <span class="command"><strong>psql</strong></span> mit
- <code class="literal">\l</code> geprüft werden.</p></div><div class="sect2" title="2.4.2. Änderungen an Konfigurationsdateien"><div class="titlepage"><div><div><h3 class="title"><a name="%C3%84nderungen-an-Konfigurationsdateien"></a>2.4.2. Änderungen an Konfigurationsdateien</h3></div></div></div><p>In der Datei <code class="filename">postgresql.conf</code>, die je nach
- Distribution in verschiedenen Verzeichnissen liegen kann (z.B.
- <code class="filename">/var/lib/pgsql/data/</code> oder
- <code class="filename">/etc/postgresql/</code>, muss sichergestellt werden,
- dass TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
- Parameter <code class="varname">listen_address</code> gesteuert. Laufen
- PostgreSQL und Lx-Office auf demselben Rechner, so kann dort der Wert
- <code class="literal">localhost</code> verwendet werden. Andernfalls müssen
- Datenbankverbindungen auch von anderen Rechnern aus zugelassen werden,
- was mit dem Wert <code class="literal">*</code> geschieht.</p><p>In der Datei <code class="filename">pg_hba.conf</code>, die im gleichen
- Verzeichnis wie die <code class="filename">postgresql.conf</code> zu finden
- sein sollte, müssen die Berichtigungen für den Zugriff geändert
- werden. Hier gibt es mehrere Möglichkeiten. Eine besteht darin, lokale
- Verbindungen immer zuzulassen:</p><pre class="programlisting">local all all trust
-host all all 127.0.0.1 255.0.0.0 trust</pre><p>Besser ist es, für eine bestimmte Datenbank Zugriff nur per
- Passwort zuzulassen. Beispielsweise:</p><pre class="programlisting">local all lxoffice password
-host all lxoffice 127.0.0.1 255.255.255.255 password</pre></div><div class="sect2" title="2.4.3. Erweiterung für servergespeicherte Prozeduren"><div class="titlepage"><div><div><h3 class="title"><a name="Erweiterung-f%C3%BCr-servergespeicherte-Prozeduren"></a>2.4.3. Erweiterung für servergespeicherte Prozeduren</h3></div></div></div><p>In der Datenbank <code class="literal">template1</code> muss die
- Unterstützung für servergespeicherte Prozeduren eingerichet werden.
- Melden Sie sich dafür als Benutzer “postgres” an der Datenbank an, und
- führen Sie die folgenden Kommandos aus:</p><pre class="programlisting">create language 'plpgsql';</pre></div><div class="sect2" title="2.4.4. Datenbankbenutzer anlegen"><div class="titlepage"><div><div><h3 class="title"><a name="Datenbankbenutzer-anlegen"></a>2.4.4. Datenbankbenutzer anlegen</h3></div></div></div><p>Wenn Sie nicht den Datenbanksuperuser “postgres” zum Zugriff
- benutzen wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer
- anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen
- können:</p><pre class="programlisting">su - postgres createuser -d -P lxoffice</pre><p>Wenn Sie später einen Datenbankzugriff konfigurieren, verändern
- Sie den evtl. voreingestellten Benutzer “postgres” auf “lxoffice” bzw.
- den hier gewählten Benutzernamen.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s05.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.3. Lx-Office-Konfigurationsdatei </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.5. Webserver-Konfiguration</td></tr></table></div></body></html>
\ No newline at end of file
+ <title>2.4. Manuelle Installation des Programmpaketes</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.9.2: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s03.html" title="2.3. Installation mittels Ansible auf Ubuntu 22.04"><link rel="next" href="ch02s05.html" title="2.5. kivitendo-Konfigurationsdatei"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.4. Manuelle Installation des Programmpaketes</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Zurück</a> </td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right"> <a accesskey="n" href="ch02s05.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.4. Manuelle Installation des Programmpaketes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Manuelle-Installation-des-Programmpaketes"></a>2.4. Manuelle Installation des Programmpaketes</h2></div></div></div><div class="sect2" title="2.4.1. Installation mit git"><div class="titlepage"><div><div><h3 class="title"><a name="Installation-mit-git"></a>2.4.1. Installation mit git</h3></div></div></div><p>Wir empfehlen eine Installation mittels des Versionsmanager
+ git. Hierfür muss ein git-Client installiert sein. Damit ist man sehr
+ viel flexibler für zukünftige Upgrades. Installations-Anleitung (bitte
+ die Pfade anpassen) bspw. wie folgt: </p><pre class="programlisting">cd /var/www/
+git clone https://github.com/kivitendo/kivitendo-erp.git
+cd kivitendo-erp/
+git checkout `git tag -l | egrep -ve "(alpha|beta|rc)" | tail -1`</pre><p>
+ Erläuterung: Der Befehl wechselt zur letzten Stable-Version (git tag
+ -l listet alle Tags auf, das egrep schmeisst alle Einträge mit alpha,
+ beta oder rc raus und das tail gibt davon den obersten Treffer
+ zurück). Sehr sinnvoll ist es, direkt im Anschluss einen eigenen
+ Branch zu erzeugen, um bspw. seine eigenen Druckvorlagen-Anpassungen
+ damit zu verwalten. Hierfür reicht ein simples </p><pre class="programlisting"> git checkout -b meine_eigenen_änderungen</pre><p>
+ nach dem letzten Kommando (weiterführende Informationen <a class="ulink" href="http://www-cs-students.stanford.edu/~blynn/gitmagic/index.html" target="_top">
+ Git Magic</a>).</p><p>Ein beispielhafter Workflow für Druckvorlagen-Anpassungen von
+ 3.4.1 nach 3.5: </p><pre class="programlisting">
+$ git clone https://github.com/kivitendo/kivitendo-erp.git
+$ cd kivitendo-erp/
+$ git checkout release-3.4.1 # das ist ein alter release aus dem wir starten ...
+$ git checkout -b meine_eigene_änderungen # unser lokaler branch - unabhängig von allen anderen
+$ git add templates/mein_druck # das sind unsere druckvorlagen inkl. produktbilder
+$ git commit -m "juhu tolle änderungen"
+
+[meine_aenderungen 1d89e41] juhu tolle ändernungen
+ 4 files changed, 380 insertions(+)
+ create mode 100644 templates/mein_druck/img/webdav/tesla.png
+ create mode 100644 templates/mein_druck/mahnung.tex
+ create mode 100644 templates/mein_druck/zahlungserinnerung_zwei.tex
+ create mode 100644 templates/mein_druck/zahlungserinnerung_zwei_invoice.tex
+
+# 5 Jahre später ...
+# webserver abschalten!
+
+$ git checkout master
+$ git pull # oder git fetch und danach ein stable release tag auswählen (s.o.)
+$ git checkout meine_eigenen_änderungen
+$ git rebase master
+
+Zunächst wird der Branch zurückgespult, um Ihre Änderungen
+darauf neu anzuwenden ...
+Wende an: juhu tolle änderungen
+$ service apache2 restart # webserver starten!
+</pre><p>
+ </p></div><div class="sect2" title="2.4.2. Installation über die Github Website"><div class="titlepage"><div><div><h3 class="title"><a name="Installation_mit_Github"></a>2.4.2. Installation über die Github Website</h3></div></div></div><p>Der aktuelle Stable-Release, bzw. beta Release wird bei github
+ gehostet und kann <a class="ulink" href="https://github.com/kivitendo/kivitendo-erp/tags" target="_top">hier</a>
+ heruntergeladen werden.</p><p>Das aktuelleste kivitendo ERP-Archiv
+ (<code class="filename">kivitendo-erp-*.tgz</code>) wird dann im
+ Dokumentenverzeichnis des Webservers (z.B.
+ <code class="filename">/var/www/html/</code>,
+ <code class="filename">/srv/www/htdocs</code> oder
+ <code class="filename">/var/www/</code>) entpackt:</p><pre class="programlisting">cd /var/www
+tar xvzf kivitendo-erp-*.tgz</pre><p>Wechseln Sie in das entpackte Verzeichnis:</p><pre class="programlisting">cd kivitendo-erp</pre><p>Alternativ können Sie auch einen Alias in der
+ Webserverkonfiguration benutzen, um auf das tatsächliche
+ Installationsverzeichnis zu verweisen.</p></div><div class="sect2" title="2.4.3. Restliche Verzeichnisse ändern und bearbeiten"><div class="titlepage"><div><div><h3 class="title"><a name="restliche-Verzeichnisse-erstellen-und-Besitzer-%C3%A4ndern"></a>2.4.3. Restliche Verzeichnisse ändern und bearbeiten</h3></div></div></div><p>Die folgenden Schritte müssen nach der Installation mittels git
+ oder der Github Website angewendet werden.</p><p>Bei einer Neuinstallation von Version 3.1.0 oder später muss das
+ WebDAV Verzeichnis derzeit manuell angelegt werden:</p><pre class="programlisting">mkdir webdav</pre><p>Die Verzeichnisse <code class="filename">users</code>,
+ <code class="filename">spool</code> und <code class="filename">webdav</code> müssen für
+ den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
+ restlichen Dateien müssen für diesen Benutzer lesbar sein. Die Benutzer-
+ und Gruppennamen sind bei verschiedenen Distributionen unterschiedlich
+ (z.B. bei Debian/Ubuntu <code class="constant">www-data</code>, bei Fedora
+ <code class="constant">apache</code> oder bei openSUSE
+ <code class="constant">wwwrun</code>).</p><p>Der folgende Befehl ändert den Besitzer für die oben genannten
+ Verzeichnisse auf einem Debian/Ubuntu-System:</p><pre class="programlisting">chown -R www-data users spool webdav</pre><p>Weiterhin muss der Webserver-Benutzer in den Verzeichnissen
+ <code class="filename">templates</code> und <code class="filename">users</code>
+ Unterverzeichnisse für jeden neuen Benutzer anlegen dürfen, der in
+ kivitendo angelegt wird:</p><pre class="programlisting">chown www-data templates</pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s05.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.3. Installation mittels Ansible auf Ubuntu 22.04 </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.5. kivitendo-Konfigurationsdatei</td></tr></table></div></body></html>
\ No newline at end of file