|
\input texinfo @c -*-texinfo-*-
|
|
@c %**start of header
|
|
@documentencoding UTF-8
|
|
@setfilename INSTALL.info
|
|
@settitle Lx-Office Installationsanleitung
|
|
@c %**end of header
|
|
|
|
@c @copying
|
|
@c Die Lx-Office Installationsanleitung kann beliebig weiter verwendet
|
|
@c werden.
|
|
@c @end copying
|
|
|
|
@titlepage
|
|
@title Lx-Office Installationsanleitung
|
|
@end titlepage
|
|
|
|
@contents
|
|
|
|
@ifnottex
|
|
@node Top
|
|
@top Inhalt der Anleitung
|
|
@end ifnottex
|
|
|
|
@menu
|
|
* Aktuelle Hinweise:: Andere Informationsquellen als diese Anleitung
|
|
* Benötigte Software und Pakete:: Vorraussetzungen zum Betrieb von Lx-Office
|
|
* Installation des Programmpaketes:: Installationsort, Berechtigungen
|
|
* Anpassung der PostgreSQL-Konfiguration:: Verschiedene Aspekte der Datenbankkonfiguration
|
|
* Apache-Konfiguration:: Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
|
|
* Benutzerauthentifizierung und Administratorpasswort:: Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
|
|
* Benutzer- und Gruppenverwaltung:: Einrichten von Benutzern, Gruppen und Datenbanken
|
|
* OpenDocument-Vorlagen:: Wichtige Hinweise zum Erstellen und zur Verwendung von Dokumentenvorlagen
|
|
* Lx-Office ERP verwenden:: Die URLs zur Anmeldung und Administration
|
|
@end menu
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Aktuelle Hinweise
|
|
@chapter Aktuelle Hinweise
|
|
|
|
Aktuelle Installations- und Konfigurationshinweise gibt es:
|
|
|
|
@itemize
|
|
@item
|
|
auf der Lx-Office Homepage unter @uref{http://lx-office.org/index.php?id=dokumentation}
|
|
|
|
@item
|
|
im Lx-Office-Wiki unter Dokumentation (@uref{http://wiki.lx-office.org/index.php/Lx-Office_ERP})
|
|
|
|
@item
|
|
im Lx-Office-Forum: @uref{http://www.lx-office.org/forum/}
|
|
@end itemize
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Benötigte Software und Pakete
|
|
@chapter Benötigte Software und Pakete
|
|
|
|
Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL) benötigt.
|
|
|
|
Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind:
|
|
|
|
@itemize
|
|
@item
|
|
Archive::Zip
|
|
@item
|
|
Class::Accessor
|
|
@item
|
|
CGI::Ajax
|
|
@item
|
|
DateTime
|
|
@item
|
|
DBI
|
|
@item
|
|
DBD::Pg
|
|
@item
|
|
Email::Address
|
|
@item
|
|
List::MoreUtils
|
|
@item
|
|
PDF::API2
|
|
@item
|
|
Template
|
|
@item
|
|
Text::CSV_XS
|
|
@item
|
|
Text::Iconv
|
|
@item
|
|
URI
|
|
@item
|
|
XML::Writer
|
|
@item
|
|
YAML
|
|
@end itemize
|
|
|
|
Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, @code{URI}
|
|
und @code{XML::Writer} sind notwendig. Ohne startet Lx-Office nicht.
|
|
|
|
@code{Email::Address} und @code{List::MoreUtils} sind schon länger feste
|
|
Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide sind auch
|
|
in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
|
|
aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den
|
|
anderen als Bibliotheken zu installieren.
|
|
|
|
@code{CGI::Ajax} ist nach wie vor in einer modifizierten Version mitgeliefert
|
|
und braucht nicht nachinstalliert werden.
|
|
|
|
Die zu installierenden Pakete können in den verschiedenen Distributionen unterschiedlich heißen.
|
|
|
|
Für Debian oder Ubuntu benötigen Sie diese Pakete:
|
|
|
|
@code{apache2 postgresql libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl libio-stringy-perl liblist-moreutils-perl libpdf-api2-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl}
|
|
|
|
Für Fedora Core benötigen Sie diese Pakete:
|
|
|
|
@code{httpd postgresql-server perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
|
|
|
|
Für OpenSuSE benötigen Sie diese Pakete:
|
|
|
|
@code{apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
|
|
|
|
Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
|
|
benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
|
|
|
|
@code{./scripts/installation_check.pl}
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Installation des Programmpaketes
|
|
@chapter Installation des Programmpaketes
|
|
|
|
Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.1.tgz) wird im
|
|
Dokumentenverzeichnis des Webservers (z.B. @code{/var/www/html/},
|
|
@code{/srv/www/htdocs} oder @code{/var/www/}) entpackt:
|
|
|
|
@code{cd /var/www
|
|
@*
|
|
tar xvzf lxoffice-erp-2.6.1.tgz}
|
|
|
|
Verändern Sie evtl. noch den Namen des Verzeichnisses mit
|
|
|
|
@code{mv lxoffice-erp/ lx-erp/}
|
|
|
|
Alternativ können Sie auch einen Alias in der Webserverkonfiguration
|
|
benutzen, um auf das tatsächliche Installationsverzeichnis zu
|
|
verweisen.
|
|
|
|
Die Verzeichnisse @code{users}, @code{spool} und @code{webdav} 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. Der
|
|
Benutzername ist bei verschiedenen Distributionen unterschiedlich
|
|
(z.B. bei Debian/Ubuntu @code{www-data}, bei Fedora core @code{apache}
|
|
oder bei OpenSuSE @code{wwwrun}).
|
|
|
|
Der folgende Befehl ändert den Besitzer für die oben genannten
|
|
Verzeichnisse auf einem Debian/Ubuntu-System:
|
|
|
|
@code{chown -R www-data lx-office-erp/users lx-office-erp/spool lx-office-erp/webdav}
|
|
|
|
Weiterhin muss der Webserver-Benutzer im Verzeichnis @code{templates} Verzeichnisse für
|
|
jeden neuen Benutzer, der in lx-office angelegt wird, anlegen dürfen:
|
|
|
|
@code{chgrp www-data lx-office-erp/templates; chmod g+w lx-office-erp/templates}
|
|
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Anpassung der PostgreSQL-Konfiguration
|
|
@chapter Anpassung der PostgreSQL-Konfiguration
|
|
|
|
PostgreSQL muss auf verschiedene Weisen angepasst werden.
|
|
|
|
@menu
|
|
* Zeichensätze/die Verwendung von UTF-8:: Was bei der Verwendung von UTF-8 zu beachten ist
|
|
* Änderungen an Konfigurationsdateien:: Anpassungen für Anmeldung am Server und Featureunterstützung
|
|
* Erweiterung für servergespeicherte Prozeduren:: Lx-Office benutzt servergespeicherte Prozeduren
|
|
* Datenbankbenutzer anlegen:: Um den Zugriff besser zu reglementieren
|
|
@end menu
|
|
|
|
@node Zeichensätze/die Verwendung von UTF-8
|
|
@section Zeichensätze/die Verwendung von UTF-8
|
|
|
|
Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet
|
|
werden. Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in
|
|
Version 8.0 oder neuer benutzt werden, und der
|
|
PostgreSQL-Datenbankcluster muss ebenfalls mit UTF-8 als Locale
|
|
angelegt worden sein.
|
|
|
|
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. mit dem folgenden Befehl getan werden:
|
|
|
|
@code{pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2 clustername}
|
|
|
|
Die Datenbankversionsnummer muss an die tatsächlich verwendete
|
|
Versionsnummer angepasst werden.
|
|
|
|
Unter anderen Distributionen gibt es ähnliche Methoden.
|
|
|
|
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.
|
|
|
|
Das Encoding einer Datenbank kann in @code{psql} mit @code{\l} geprüft werden.
|
|
|
|
@node Änderungen an Konfigurationsdateien
|
|
@section Änderungen an Konfigurationsdateien
|
|
|
|
In der Datei @code{postgresql.conf}, die je nach Distribution in
|
|
verschiedenen Verzeichnissen liegen kann
|
|
(z.B. @code{/var/lib/pgsql/data/} oder @code{/etc/postgresql/}, muss
|
|
sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Für
|
|
PostgreSQL vor Version v8.0 lautete dieser Parameter
|
|
|
|
@code{TCPIP_SOCKET = 1}
|
|
|
|
Ab v8.0 wird das Verhalten hingegen über den neuen Parameter
|
|
@code{listen_address} gesteuert. Laufen PostgreSQL und Lx-Office auf
|
|
demselben Rechner, so kann dort der Wert @code{localhost} verwendet
|
|
werden. Andernfalls müssen Datenbankverbindungen auch von anderen
|
|
Rechnern aus zugelassen werden, was mit dem Wert \@code{*} geschieht.
|
|
|
|
In der Datei @code{pg_hba.conf}, die im gleichen Verzeichnis wie die
|
|
@code{postgresql.conf} 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
|
|
|
|
@code{local all all trust
|
|
@*
|
|
host all all 127.0.0.1 255.0.0.0 trust}
|
|
|
|
Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
|
|
zuzulassen. Beispielsweise:
|
|
|
|
@code{local all lxoffice password
|
|
@*
|
|
host all lxoffice 127.0.0.1 255.255.255.255 password}
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Erweiterung für servergespeicherte Prozeduren
|
|
@section Erweiterung für servergespeicherte Prozeduren
|
|
|
|
In der Datenbank @code{template1} 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:
|
|
|
|
@code{create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
|
|
@*
|
|
create language 'plpgsql' handler plpgsql_call_handler
|
|
lancompiler 'pl/pgsql';}
|
|
|
|
Bitte beachten Sie, dass der Pfad zur Datei @code{plpgsql.so} von
|
|
Distribution zu Distribution verschiedlich sein kann. Bei
|
|
Debian/Ubuntu befindet sie sich unter
|
|
@code{/usr/lib/postgresql/lib/plpgsql.so}, bei Ubuntu 9.10 unter @code{/usr/lib/postgresql/8.4/lib/plpgsql.so}.
|
|
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Datenbankbenutzer anlegen
|
|
@section Datenbankbenutzer anlegen
|
|
|
|
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:
|
|
|
|
@code{su - postgres
|
|
@*
|
|
createuser -d -P lxoffice}
|
|
|
|
Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
|
|
den evtl. voreingestellten Benutzer ``postgres'' auf ``lxoffice''
|
|
bzw. den hier gewählten Benutzernamen.
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Apache-Konfiguration
|
|
@chapter Apache-Konfiguration
|
|
|
|
Der Zugriff auf das Programmverzeichnis muss in der Apache
|
|
Webserverkonfigurationsdatei @code{httpd.conf} eingestellt
|
|
werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
|
|
anderen Datei hinzu, die beim Starten des Webservers eingelesen wird:
|
|
|
|
@code{@*
|
|
AddHandler cgi-script .pl
|
|
@*
|
|
Alias /lx-erp/ /var/www/lx-erp/
|
|
@*
|
|
<Directory /var/www/lx-erp>
|
|
@*
|
|
Options ExecCGI Includes FollowSymlinks
|
|
@*
|
|
</Directory>
|
|
@*
|
|
@*
|
|
<Directory /var/www/lx-erp/users>
|
|
@*
|
|
Order Deny,Allow
|
|
@*
|
|
Deny from All
|
|
@*
|
|
</Directory>
|
|
@*
|
|
}
|
|
|
|
Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
|
|
Lx-Office-Archiv entpacket haben.
|
|
|
|
Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen ein
|
|
Plus @samp{+} gesetzt werden.
|
|
|
|
Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
|
|
nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die
|
|
folgende Option in die Konfiguration aufzunehmen:
|
|
|
|
@code{EnableSendfile Off}
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Benutzerauthentifizierung und Administratorpasswort
|
|
@chapter Benutzerauthentifizierung und Administratorpasswort
|
|
|
|
Informationen über die Einrichtung der Benutzerauthentifizierung, über
|
|
die Verwaltung von Gruppen und weitere Einstellungen
|
|
|
|
@menu
|
|
* Grundlagen zur Benutzerauthentifizierung:: Verfügbare Methoden, Name der Konfigurationsdatei
|
|
* Administratorpasswort:: Wo das Administratorpasswort gesetzt werden kann
|
|
* Authentifizierungsdatenbank:: Verbindungseinstellungen zur Authentifizierungsdatenbank
|
|
* Passwortüberprüfung:: Einstellungen zur Überprüfung der Benutzerpasswörter
|
|
* Name des Session-Cookies:: Ändern des Cookie-Namens bei Verwendung mehrerer Lx-Office-Installationen auf einem Server
|
|
* Anlegen der Authentifizierungsdatenbank:: Wie die Authentifizierungsdatenbank angelegt wird
|
|
@end menu
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Grundlagen zur Benutzerauthentifizierung
|
|
@section Grundlagen zur Benutzerauthentifizierung
|
|
|
|
Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
|
|
im folgenden ``Authentifizierungsdatenbank'' genannt wird. Für jeden
|
|
Benutzer kann dort eine eigene Datenbank für die eigentlichen
|
|
Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
|
|
aber nicht unterschiedlich sein.
|
|
|
|
Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
|
|
in der sowohl die Benutzerinformationen als auch die Daten abgelegt
|
|
werden.
|
|
|
|
Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
|
|
entweder gegen die Authentifizierungsdatenbank oder gegen einen
|
|
LDAP-Server überprüft werden.
|
|
|
|
Welche Art der Passwortüberprüfung Lx-Office benutzt und wie Lx-Office
|
|
die Authentifizierungsdatenbank erreichen kann, wird in der
|
|
Konfigurationsdatei @code{config/authentication.pl} festgelegt. Diese
|
|
muss bei der Installation und bei einem Upgrade von einer Version vor
|
|
v2.6.0 angelegt werden. Eine Beispielkonfigurationsdatei
|
|
@code{config/authentication.pl.default} existiert, die als Vorlage
|
|
benutzt werden kann.
|
|
|
|
@node Administratorpasswort
|
|
@section Administratorpasswort
|
|
|
|
Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt wird,
|
|
wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort und nicht
|
|
mehr im Administrationsinterface selber geändert werden. Der Parameter dazu
|
|
heißt @code{$self->@{admin_password@}}.
|
|
|
|
@node Authentifizierungsdatenbank
|
|
@section Authentifizierungsdatenbank
|
|
|
|
Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
|
|
in @code{$self->@{DB_config@}} konfiguriert. Hier sind die folgenden
|
|
Parameter anzugeben:
|
|
|
|
@itemize
|
|
@item
|
|
@samp{host} -- Der Rechnername oder die IP-Adresse des Datenbankservers
|
|
@item
|
|
@samp{port} -- Die Portnummer des Datenbankservers, meist 5432
|
|
@item
|
|
@samp{db} -- Der Name der Authentifizierungsdatenbank
|
|
@item
|
|
@samp{user} -- Der Benutzername, mit dem sich Lx-Office beim Datenbankserver anmeldet (z.B. ``postgres'')
|
|
@item
|
|
@samp{password} -- Das Passwort für den Datenbankbenutzer
|
|
@end itemize
|
|
|
|
Die Datenbank muss noch nicht existieren. Lx-Office kann sie
|
|
automatisch anlegen (mehr dazu siehe unten).
|
|
|
|
@node Passwortüberprüfung
|
|
@section Passwortüberprüfung
|
|
|
|
Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
|
|
Authentifizierungsdatenbank und gegen einen externen LDAP- oder
|
|
Active-Directory-Server. Welche davon benutzt wird, regelt der
|
|
Parameter @code{$self->@{module@}}.
|
|
|
|
Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
|
|
gespeichert werden, so muss der Parameter @code{$self->@{module@}} den
|
|
Wert @samp{DB} enthalten. In diesem Fall können sowohl der
|
|
Administrator als auch die Benutzer selber ihre Psaswörter in
|
|
Lx-Office ändern.
|
|
|
|
Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
|
|
werden, so muss der Parameter @code{$self->@{module@}} auf @samp{LDAP}
|
|
gesetzt werden. In diesem Fall müssen zusätzliche Informationen über
|
|
den LDAP-Server in @code{$self->@{LDAP_config@}} angegeben werden:
|
|
|
|
@itemize
|
|
@item
|
|
@samp{host} -- Der Rechnername oder die IP-Adresse des LDAP- oder Active-Directory-Servers. Diese Angabe ist zwingend erforderlich.
|
|
@item
|
|
@samp{port} -- Die Portnummer des LDAP-Servers; meist 389.
|
|
@item
|
|
@samp{tls} -- Wenn Verbindungsverschlüsselung gewünscht ist, so diesen Wert auf @samp{1} setzen, andernfalls auf @samp{0} belassen
|
|
@item
|
|
@samp{attribute} -- Das LDAP-Attribut, in dem der Benutzername steht, den der Benutzer eingegeben hat. Für Active-Directory-Server
|
|
ist dies meist @samp{sAMAccountName}, für andere LDAP-Server hingegen @samp{uid}. Diese Angabe ist zwingend erforderlich.
|
|
@item
|
|
@samp{base_dn} -- Der Abschnitt des LDAP-Baumes, der durchsucht werden soll. Diese Angabe ist zwingend erforderlich.
|
|
@item
|
|
@samp{filter} -- Ein optionaler LDAP-Filter. Enthält dieser Filter das Wort @code{<%login%>}, so wird dieses durch den vom Benutzer
|
|
eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum nach einem Element durchsucht, bei dem das oben angegebene Attribut
|
|
mit dem Benutzernamen identisch ist.
|
|
@item
|
|
@samp{bind_dn} und @samp{bind_password} -- Wenn der LDAP-Server eine Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist dies bei
|
|
Active-Directory-Servern der Fall), so kann diese hier angegeben werden. Für Active-Directory-Server kann als @samp{bind_dn} entweder eine
|
|
komplette LDAP-DN wie z.B. @samp{cn=Martin Mustermann,cn=Users,dc=firmendomain} auch nur der volle Name des Benutzers
|
|
eingegeben werden; in diesem Beispiel also @samp{Martin Mustermann}.
|
|
@end itemize
|
|
|
|
@node Name des Session-Cookies
|
|
@section Name des Session-Cookies
|
|
|
|
Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
|
|
werden, so müssen die Namen der Session-Cookies für alle
|
|
Installationen unterschiedlich sein. Der Name des Cookies wird mit dem
|
|
Parameter @code{$self->@{cookie_name@}} gesetzt.
|
|
|
|
Diese Angabe ist optional, wenn nur eine Installation auf dem Server
|
|
existiert.
|
|
|
|
@node Anlegen der Authentifizierungsdatenbank
|
|
@section Anlegen der Authentifizierungsdatenbank
|
|
|
|
Nachdem alle Einstellungen in @code{config/authentication.pl}
|
|
vorgenommen wurden, muss Lx-Office die Authentifizierungsdatenbank
|
|
anlegen. Dieses geschieht automatisch, wenn Sie sich im
|
|
Administrationsmodul anmelden, das unter der folgenden URL erreichbar
|
|
sein sollte:
|
|
|
|
@uref{http://localhost/lx-erp/admin.pl}
|
|
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Benutzer- und Gruppenverwaltung
|
|
@chapter Benutzer- und Gruppenverwaltung
|
|
|
|
Nach der Installation müssen Benutzer, Gruppen und Datenbanken
|
|
angelegt werden. Dieses geschieht im Administrationsmenü, das Sie
|
|
unter folgender URL finden:
|
|
|
|
@uref{http://localhost/lx-erp/admin.pl}
|
|
|
|
Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
|
|
@code{config/authentication.pl} eingetragen haben.
|
|
|
|
@menu
|
|
* Zusammenhänge:: Übersicht über Benutzer, Gruppen, Berechtigungen und Datenbanken
|
|
* Datenbanken anlegen:: Hinweise zum Anlegen von Datenbanken
|
|
* Gruppen anlegen:: Hinweise zum Anlegen von Gruppen
|
|
* Benutzer anlegen:: Hinweise zum Anlegen von Benutzern
|
|
* Gruppenmitgliedschaften verwalten:: Wie man Gruppen Benutzer zuordnet
|
|
* Migration alter Installationen:: Automatische Übernahme bei Update von einer älteren Version
|
|
@end menu
|
|
|
|
@node Zusammenhänge
|
|
@section Zusammenhänge
|
|
|
|
Lx-Office verwendet eine Datenbank zum Speichern all seiner
|
|
Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
|
|
mit Lx-Office arbeiten zu können, muss eine Person einen
|
|
Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
|
|
Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
|
|
möglich und normal, dass mehreren Benutzern die selbe Datenbank
|
|
zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
|
|
|
|
Die Basisdaten der Benutzer, die in der Administration eingegeben
|
|
werden können, werden in einer zweiten Datenbank gespeichert, der
|
|
bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
|
|
Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
|
|
Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
|
|
aber beliebig viele Datenbanken mit Firmendaten.
|
|
|
|
Lx-Office kann seinen Benutzern Zugriff auf bestimmte
|
|
Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
|
|
gestattet, so werden der entsprechenden Menüpunkte auch nicht
|
|
angezeigt. Diese Rechte werden ebenfalls in der
|
|
Authentifizierungsdatenbank gespeichert.
|
|
|
|
Um Rechte verteilen zu können, verwendet Lx-Office ein
|
|
Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
|
|
erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
|
|
mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
|
|
Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
|
|
Benutzer Mitglied ist.
|
|
|
|
Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
|
|
angelegt werden sollten, lautet:
|
|
|
|
@enumerate
|
|
@item
|
|
Datenbank anlegen
|
|
@item
|
|
Gruppen anlegen
|
|
@item
|
|
Benutzer anlegen
|
|
@item
|
|
Benutzer den Gruppen zuordnen
|
|
@end enumerate
|
|
|
|
@node Datenbanken anlegen
|
|
@section Datenbanken anlegen
|
|
|
|
Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
|
|
Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
|
|
ist dies @samp{lxoffice}).
|
|
|
|
Wenn Sie für die Lx-Office-Installation nicht den europäischen
|
|
Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
|
|
müssen Sie vor dem Anlegen der Datenbank in der Datei
|
|
@code{config/lx-erp.conf} die Variable @code{$dbcharset} auf den Wert
|
|
@samp{UTF-8} setzen. Zusätzlich muss beim Anlegen der Datenbank
|
|
@samp{UTF-8 Unicode} als Schriftsatz ausgewählt werden.
|
|
|
|
Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
|
|
verwenden müssen, da diese Einstellungen momentan global in Lx-Office
|
|
vorgenommen wird und nicht nach Datenbank unterschieden werden
|
|
kann. Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
|
|
angelegt worden sein.
|
|
|
|
@node Gruppen anlegen
|
|
@section Gruppen anlegen
|
|
|
|
Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
|
|
gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
|
|
Anlegen können Sie die verschiedenen Bereiche wählen, auf die
|
|
Mitglieder dieser Gruppe Zugriff haben sollen.
|
|
|
|
Benutzergruppen sind unabhängig von Datenbanken, da sie in der
|
|
Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
|
|
Datenbanken, die in dieser Installation verwaltet werden.
|
|
|
|
@node Benutzer anlegen
|
|
@section Benutzer anlegen
|
|
|
|
Beim Anlegen von Benutzern werden für viele Parameter
|
|
Standardeinstellungen vorgenommen, die den Gepflogenheiten des
|
|
deutschen Raumes entsprechen.
|
|
|
|
Zwingend anzugeben sind der Loginname sowie die komplette
|
|
Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
|
|
Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
|
|
gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
|
|
aktiv, so ist das Passwort-Feld deaktiviert.
|
|
|
|
In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
|
|
angelegten Datenbanken eingetragen werden.
|
|
|
|
@node Gruppenmitgliedschaften verwalten
|
|
@section Gruppenmitgliedschaften verwalten
|
|
|
|
Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
|
|
zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
|
|
|
|
@enumerate
|
|
@item
|
|
In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
|
|
Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen.
|
|
@item
|
|
In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
|
|
Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
|
|
System angelegten Gruppen und Benutzer enthält. Durch Setzen der
|
|
Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in der
|
|
ausgewählten Spalte hinzugefügt.
|
|
@end enumerate
|
|
|
|
@node Migration alter Installationen
|
|
@section Migration alter Installationen
|
|
|
|
Wenn Lx-Office 2.6.1 über eine ältere Version installiert wird, in der
|
|
die Benutzerdaten noch im Dateisystem im Verzeichnis @code{users}
|
|
verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
|
|
Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
|
|
übernehmen. Dies geschieht, wenn man sich nach dem Update der
|
|
Installation das erste Mal im Administrationsbereich anmeldet. Findet
|
|
Lx-Office die Datei @code{users/members}, so wird der
|
|
Migrationsprozess gestartet.
|
|
|
|
Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
|
|
können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
|
|
die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt
|
|
wird. Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office
|
|
gewährt. Alle migrierten Benutzern werden Mitglied in dieser
|
|
Gruppe. Damit wird das Verhalten von Lx-Office bis Version 2.4.3
|
|
inklusive wiederhergestellt, und die Benutzer können sich sofort
|
|
wieder anmelden und mit dem System arbeiten.
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node OpenDocument-Vorlagen
|
|
@chapter OpenDocument-Vorlagen
|
|
|
|
Lx-Office unterstützt die Verwendung von Vorlagen im
|
|
OpenDocument-Format, wie es OpenOffice.org ab Version 2
|
|
erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
|
|
auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
|
|
OpenDocument-Vorlagen zu aktivieren muss in der Datei
|
|
@code{config/lx-erp.conf} die Variable @code{$opendocument_templates}
|
|
auf @samp{1} stehen. Dieses ist die Standardeinstellung.
|
|
|
|
Weiterhin muss in der Datei @code{config/lx-erp.conf} die Variable
|
|
@code{$dbcharset} auf die Zeichenkodierung gesetzt werden, die auch
|
|
bei der Speicherung der Daten in der Datenbank verwendet wird. Diese
|
|
ist in den meisten Fällen "UTF-8".
|
|
|
|
Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
|
|
weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
|
|
OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
|
|
neben OpenOffice.org ab Version 2 auch der ``X virtual frame buffer''
|
|
(xvfb) installiert werden. Bei Debian ist er im Paket ``xvfb''
|
|
enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
|
|
|
|
Nach der Installation müssen in der Datei @code{config/lx-erp.conf}
|
|
zwei weitere Variablen angepasst werden:
|
|
@code{$openofficeorg_writer_bin} muss den vollständigen Pfad zur
|
|
OpenOffice.org Writer-Anwendung enthalten. @code{$xvfb_bin} muss den
|
|
Pfad zum ``X virtual frame buffer'' enthalten.
|
|
|
|
Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
|
|
OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
|
|
die Variable @code{$openofficeorg_daemon} gesetzt ist, startet ein
|
|
OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
|
|
bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
|
|
benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
|
|
reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
|
|
werden muss. Der Nachteil ist, dass diese Methode Python und die
|
|
Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
|
|
|
|
Ist @code{$openofficeorg_daemon} nicht gesetzt, so wird für jedes
|
|
Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe
|
|
eines Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
|
|
enthalten sein und ``Standard.Conversion.ConvertSelfToPDF()''
|
|
heißen. Die Beispielvorlage @samp{templates/German-invoice.odt}
|
|
enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
|
|
ebenfalls enthalten sein muss.
|
|
|
|
Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
|
|
Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
|
|
Debian ist dies momentan @code{~/.openoffice.org2}. Sollte der Name
|
|
bei Ihrer OpenOffice.org-Installation anders sein, so muss das
|
|
Verzeichnis @code{users/.openoffice.org2} entsprechend umbenannt
|
|
werden. Ist der Name z.B. einfach nur @code{.openoffice}, so wäre
|
|
folgender Befehl auszuführen:
|
|
|
|
@code{mv users/.openoffice.org2 users/.openoffice}
|
|
|
|
Dieses Verzeichnis, wie auch das komplette @code{users}-Verzeichnis,
|
|
muss vom Webserver beschreibbar sein. Dieses wurde in Schritt
|
|
@code{Installation des Programmpakets} oben bereits erledigt, kann
|
|
aber erneut überprüft werden, wenn die Konvertierung nach PDF
|
|
fehlschlägt.
|
|
|
|
@c ---------------------------------------------------------------
|
|
|
|
@node Lx-Office ERP verwenden
|
|
@chapter Lx-Office ERP verwenden
|
|
|
|
Nach erfolgreicher Installation ist der Loginbildschirm unter
|
|
folgender URL erreichbar:
|
|
|
|
@uref{http://localhost/lx-office-erp/login.pl}
|
|
|
|
Die Administrationsseite erreichen Sie unter:
|
|
|
|
@uref{http://localhost/lx-office-erp/admin.pl}
|
|
|
|
@bye
|