Linux Installation: Unterschied zwischen den Versionen

Aus EBKuS Dokumentation
Wechseln zu: Navigation, Suche
(kOTYVENdHxP)
 
(59 dazwischenliegende Versionen von 38 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
This article achieved exactly what I wntead it to achieve.
+
Gültig ab: EBKuS 4.10
 +
 
 +
Die folgende Anleitung habe ich mit "Debian GNU/Linux 10 (buster)" getestet; vermutlich funktioniert das auch auf anderen Ubuntu bzw. Debian-basierten Gnu/Linux-Distributionen.
 +
 
 +
Die Installation im folgenden Beispiel erfolgt unter dem User {{code|ebkus}} auf einem Rechner mit dem Namen {{code|ebvm}}. Der User {{code|ebkus}} benötigt Superuserrechte ({{code|sudo}}). Es wird angenommen, dass eine Internetverbindung besteht (zur Installation von Software mit {{code|apt-get}}).
 +
 
 +
Die Installation erfolgt ausschließlich über die Kommandozeile. Damit funktioniert sie auch auf reinen Servern, die keine GUI haben.
 +
 
 +
Bitte auch die [[Windows Installation]] beachten, da sind einige betriebssystemunabhängige Punkte ausführlicher dargestellt als hier.
 +
 
 +
=== Voraussetzungen ===
 +
 
 +
Folgende Voraussetzungen müssen erfüllt sein, damit EBKuS installiert werden kann:
 +
 
 +
==== Python 2.7 ====
 +
 
 +
Ist auf solche Systemen normalerweise bereits installiert, ansonsten:
 +
 
 +
  ebkus@ebvm:~$ sudo apt-get install python2.7
 +
 
 +
Die Python Version sollte 2.7.13 oder höher sein, optimalerweise
 +
2.7.18, welches die letzte Python-2-Version darstellt.
 +
Python 2 wird nicht mehr weiterentwickelt wird. EBKuS ist noch nicht
 +
auf Python 3 portiert.
 +
 
 +
==== MySQL ====
 +
 
 +
Es sollte eine MySQL 5.*-Version zur Verfügung stehen, z.B. 5.1, 5.6
 +
oder 5.7. Zur Installation auf Debian 10 siehe zum Beispiel
 +
https://tecadmin.net/install-mysql-on-debian-10-buster/
 +
Kurz zusammengefasst wie folgt:
 +
 
 +
1. System auf den neuesten Stand bringen:
 +
 
 +
    ebkus@ebvm:~$ sudo apt update
 +
    ebkus@ebvm:~$ sudo apt upgrade
 +
 
 +
2. PPA (Personal Package Archive, Paketquelle) von MySQL einrichten und MySQL-Installation konfigurieren:
 +
 
 +
    ebkus@ebvm:~$ wget <nowiki>http://repo.mysql.com/mysql-apt-config_0.8.15-1_all.deb</nowiki>
 +
    ebkus@ebvm:~$ sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb
 +
 
 +
Beim letzten Schritt unbedingt ein MySQL 5 auswählen, also 5.6
 +
oder 5.7! EBKuS wurde noch nicht auf höheren Versionen getestet.
 +
 
 +
3. MySQL installieren:
 +
 
 +
    ebkus@ebvm:~$ sudo apt update
 +
    ebkus@ebvm:~$ sudo apt install mysql-community-server
 +
 
 +
Bei der Installation muss ein Passwort für den Datenbank-User {{code|root}} angegeben werden, das später in die {{file|ebkus.conf}} eingetragen werden muss. Nach einer erfolgreichen Installation kann man sich mit dem Befehl
 +
 
 +
    ebkus@ebvm:~$ mysql -uroot -p''Passwort''
 +
    Welcome to the MySQL monitor.  Commands end with ; or \g.
 +
    ...
 +
    mysql>
 +
 
 +
mit der Datenbank verbinden.
 +
 
 +
Falls der Standardport 3306 für MySQL nicht zur Verfügung steht, muss die Datei {{file|/etc/mysql/my.cnf}} angepasst werden.
 +
 
 +
==== Python-MySQLdb ====
 +
 
 +
Den Datenbankadapter für Python-MySQL installieren:
 +
  ebkus@ebvm:~$ sudo apt-get install python-mysqldb
 +
Nach erfolgreicher Installation kann man Python aufrufen und MySQLdb importieren:
 +
  ebkus@ebvm:~$ python
 +
  Python 2.7.16 (default, Oct 10 2019, 22:02:15)
 +
  ...
 +
  >>> import MySQLdb
 +
  >>>
 +
 
 +
==== Apache 2 ====
 +
 
 +
Den Webserver installieren:
 +
  ebkus@ebvm:~$ sudo apt-get install apache2
 +
Nach der erfolgreichen Installation erhält man mit einem Browser mit der Adresse <nowiki>http://localhost/</nowiki> eine Seite mit '''It works!'''. Oder man installiert z.B. {{code|wget}} und erhält mit der genannten Adresse die entsprechende HTML-Datei {{file|index.html}}:
 +
  ebkus@ebvm:~$ sudo apt-get install wget
 +
  ebkus@ebvm:~$ wget <nowiki>http://localhost/</nowiki>
 +
 
 +
Falls der Webserver nicht auf den Standardports 80 und 443 laufen soll, muss die Datei {{file|/etc/apache2/ports.conf}} angepasst werden, ebenso die {{file|ebkus.conf}} (siehe [[Konfiguration]])
 +
 
 +
Um den Webserver zu konfigurieren, müssen das ssl-Modul und das
 +
cgi-Modul aktiviert werden:
 +
  ebkus@ebvm:~$ sudo a2enmod ssl
 +
  ebkus@ebvm:~$ sudo a2enmod cgi
 +
 
 +
Außerdem muss die von EBKuS generierte Apache-Konfigurationsdatei eingebunden werden:
 +
  ebkus@ebvm:~$ cd /etc/apache2/sites-enabled
 +
  ebkus@ebvm:/etc/apache2/sites-enabled$ sudo ln -s /home/ebkus/ebkus_installation/ebkus/ebkus_httpd.conf ebkus-ssl.conf
 +
Die Datei {{file|ebkus_httpd.conf}} existiert zu diesem Zeitpunkt noch nicht, sie wird bei der Installation ({{file|install.py}}) und bei jeder Änderung von Instanzen ({{file|configure.py}}) neu generiert. Sie definiert einen Virtual Host für den Webserver, über den alle EBKuS-Instanzen angesprochen werden.
 +
 
 +
'''Dateirechte:''' Alle Verzeichnisse, die in einem Pfad zu einer Datei stehen, die vom Webserver gelesen werden soll, müssen das Leserecht und das Ausführungsrecht besitzen. Wenn das Installationsverzeichnis wie im Beispiel im Homeverzeichnis eines Benutzers steht, müssen diese Rechte evt. explizit vergeben werden:
 +
  ebkus@ebvm:~$ sudo chmod go+rx /home/ebkus
 +
Den vom Installationsskript erzeugten Verzeichnissen und Dateien werden diese Rechte automatisch gegeben.
 +
 
 +
 
 +
==== EBKuS ====
 +
 
 +
Die neueste [http://www.ebkus.org/alle_downloads.html EBKuS-Software]
 +
herunterladen, auspacken und in das Distributionsverzeichnis gehen, z.B.:
 +
 
 +
  ebkus@ebkusvm1:~$ wget https://ebkus.org/downloads/ebkus-4.10/ebkus-4.10-src.zip
 +
  ebkus@ebkusvm1:~$ unzip ebkus-4.10-src.zip
 +
  ebkus@ebkusvm1:~$ cd EBKuS-4.10
 +
  ebkus@ebkusvm1:~/EBKuS-4.10$
 +
 
 +
=== Installation ===
 +
 
 +
==== Erstkonfiguration ====
 +
 
 +
Erstkonfiguration erzeugen:
 +
  ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py -c ~/ebkus_installation
 +
Die EBKuS-Konfigurationsdatei {{file|/home/ebkus/ebkus_installation/ebkus/ebkus.conf}} kann nun weiter bearbeitet und für die eigentliche Installation verwendet werden.
 +
 
 +
==== Systemkonfiguration ====
 +
 
 +
System-[[Konfiguration]] anpassen, insbesondere:
 +
* Passwort für Datenbank-User {{code|root}} eintragen (Parameter {{konfig|database_admin_password}})
 +
* {{konfig|server_name}}, normalerweise die IP-Nummer des Rechners
 +
* Evt. Standardports {{konfig|server_https_port}} und {{konfig|server_http_port}} anpassen
 +
* {{konfig| server_admin}}
 +
* Im Abschnitt {{code|openssl}} Angaben zur Region und Organisation
 +
 
 +
==== Instanzkonfiguration ====
 +
 
 +
Instanz-[[Konfiguration]] anpassen:
 +
* {{konfig|instance_name}}, optional {{konfig|instance_title}}
 +
* {{konfig|initial_content}}, falls eine initiale Datenbank vorhanden ist (z.B. aus einer früheren Installation)
 +
* {{konfig|port}}
 +
 
 +
==== Installation ====
 +
 
 +
Installation:
 +
  ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py ~/ebkus_installation
 +
Bei der Installation wird man unter Umständen nach dem Passwort des (Linux-)Users gefragt, dasselbe, das man bei einem vorangestellten {{code|sudo}} angeben muss. Damit können die start/stop-Skripte in die Bootsequenz ({{file|/etc/init.d/}}) eingetragen werden
 +
 
 +
Nach der Installation (und auch nach jeder Umkonfigurierung mit {{file|configure.py}}) muss der Webserver neu gestartet werden:
 +
  ebkus@ebvm:~$ sudo service apache2 restart
 +
  * Restarting web server apache2                        [ OK ]
 +
Ansonsten wird die neu generierte Webserver-Konfiguration in {{file|ebkus_httpd.conf}} nicht wirksam.
 +
 
 +
==== Migration ====
 +
 
 +
Falls wie [[Windows_Installation#Migration|hier]] beschrieben eine Menge von bestehenden Instanzen in die neue Installation übernommen werden soll:
 +
  ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py -p ~/ebkus_preconfig ~/ebkus_installation
 +
Im Verzeichnis {{file|~/ebkus_preconfig}} muss dann eine gültige {{file|ebkus.conf}} liegen sowie eine Sicherungsdatei für jede Instanz, die in der Konfiguration über den Parameter {{konfig|initial_content}} eingebunden wird.
 +
 
 +
=== Dienste ===
 +
 
 +
Im Unterschied zu [[Windows Installation|Windows]] werden bei der Installation und der Konfigurierung keine Dienste gestartet oder gestoppt. Es werden jedoch Skripte in {{file|/etc/init.d}} generiert, mit denen die EBKuS-Server hoch und runtergefahren werden. Beim booten des Systems geschieht dies automatisch, d.h. nach einem Reboot steht EBKuS automatisch zur Verfügung.
 +
 
 +
Für den Systemadministrator gibt es folgende Skripte, die nach der Installation im Homeverzeichnis stehen:
 +
* {{code|ebkusctl}}: Damit kann jede Instanz einzeln oder auch alle Instanzen gemeinsam hoch- und runtergefahren werden sowie deren Status abgefragt werden. Dieses Skript verwendet intern die generierten Skripte in {{file|/etc/init.d}}.
 +
* {{code|ebkusdump}}: Für jede Instanz einzeln oder für alle zusammen eine Sicherungsdatei erzeugen (verwendet intern {{file|datenbank_sichern.py||}}).
 +
* {{code|ebkusrestore}}: Für jede Instanz einzeln oder für alle zusammen die Datenbank aus eine Sicherungsdatei initialisieren (verwendet intern {{file| datenbank_initialisieren.py||}}).
 +
Z.B.
 +
  ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl all start
 +
* Starting EBKuS demo                                [ OK ]
 +
* Starting EBKuS muster_efb                          [ OK ]
 +
* Starting EBKuS demo_braunschweig                  [ OK ]
 +
Jedes Skript hat eingebaute Hilfe:
 +
  ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl --help
 +
  ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl -h
 +
 
 +
 
 +
 
 +
 
 +
 
 +
<!--
 +
 
 +
Schritte:
 +
 
 +
#`Installationsverzeichnis`_ einrichten, z.B. {{code|/home/user/ebinst}}:
 +
  mkdir /home/user/ebinst
 +
#In das `Distributionsverzeichnis`_ gehen (z.B. {{code|/home/user/ebkus-cd/ebkus-3.3}}; man könnte hier auch direkt von der CD arbeiten):
 +
 
 +
 
 +
cd /home/user/ebkus-cd/ebkus-3.3
 +
#EBKuS-Konfiguration erzeugen:
 +
  python install.py --config /home/user/ebinst
 +
#Erzeugte Konfigurationsdatei {{code|/home/user/ebinst/ebkus/ebkus.conf}}anpassen (siehe `Konfiguration`_).
 +
#EBKuS und alle in der Konfigurationsdatei definierten Instanzen installieren und konfigurieren:
 +
  python install.py /home/user/ebinst
 +
Für jede in der Konfiguration definierten Instanz gibt es dann ein `Instanzverzeichnis`_:
 +
 
 +
<blockquote>{{code|/home/user/ebinst/ebkus/}}''Instanzname''
 +
 
 +
</blockquote>
 +
Die Meldungen des Installationsskriptes stehen auch in der Datei {{code|/home/user/ebinst/install.log}}.
 +
 
 +
#(als {{code|root}}) Die in Schritt 5. erzeugte Datei {{code|/home/user/ebinst/ebkus/ebkus_httpd.conf}} in die Apache-Konfigurationsdatei (bei SuSE z.B. /etc/httpd/httpd.conf) inkludieren, z.B. indem Sie dort am Ende die folgende Zeile eintragen:
 +
  Include /home/user/ebinst/ebkus/ebkus_httpd.conf
 +
#(als {{code|root}}) Den Apache-Webserver neustarten, damit die modifizierte Konfiguration berücksichtigt wird, z.B. bei SuSE:
 +
  rcapache restart
 +
#Eine konfigurierte EBKuS-Instanz testen, z.B. die Instanz demo:
 +
  cd /home/user/ebinst/ebkus/demo
 +
  ./start.py --console
 +
Der gestartete Server gibt Meldungen auf die Konsole aus.
 +
 
 +
#Über einen Browser mit der Instanz {{code|demo}} arbeiten (anstatt {{code|demo}} auch mit jeder anderen in der `Konfiguration`_definierten Instanz):
 +
  https://localhost/ebkus/demo/cgi/do/login
 +
Die Login-Maske kann auch über eine vorgeschaltete Eingangsseite erreicht werden, die für jede Instanz generiert wird:
 +
 
 +
  https://localhost/ebkus/demo/index.html
 +
Diese Seite kann mit einem HTML-Editor gemäß den lokalen Bedürfnissen erweitert oder verändert werden. Die zu editierende Datei ist im `Instanzverzeichnis`_ unter {{code|htdocs/index.html}} zu finden.
 +
 
 +
Als Administrator anmelden: Benutzer {{code|Admin}}, Passwort {{code|Admin}}. Als angemeldeter Administrator können Sie weitere Benutzer anlegen.
 +
 
 +
Die Instanzen {{code|demo}} bzw. {{code|demo_berlin}} enthalten bereits Beispieldaten, mit denen Sie experimentieren können. Sie können sich also gleich als Bearbeiter bzw. als Verwaltungskraft anmelden, z.B. Benutzer {{code|test}}, Passwort {{code|test}} bzw. Benutzer {{code|verw}}, Passwort {{code|verw}}.
 +
 
 +
Falls Sie in der Konfiguration den Parameter ''server_name'' mit einer in Ihrem Netzwerk gültigen IP-Adresse oder einem gültigen Namen belegt haben, können Sie auch von anderen Rechnern im Netzwerk auf eine EBKuS-Instanz zugreifen, z.B.:
 +
 
 +
  https://192.168.1.92/ebkus/demo/index.html https://192.168.1.92/ebkus/demo/cgi/do/login
 +
#(als {{code|root}}) Die Instanz in die Bootsequenz des Servers aufnehmen, so dass beim Hochfahren des Rechners der EBKuS-Server für die Instanz automatisch gestartet wird:
 +
  cd /home/user/ebinst/ebkus/demo cp ebkus_demo /etc/init.d
 +
Die Links für die Run-Level manuell setzen oder, z.B. bei SuSE, den Run-Level-Editor verwenden.
 +
 
 +
#In einer Produktionsinstanz die Anwendung einrichten, siehe Einrichtung der Anwendung im Handbuch.
 +
 
 +
 
 +
 
 +
 
 +
- Apache richtig löschen, so dass frische Konfig kommt:
 +
 
 +
- sudo dpkg --purge --force-remove-reinstreq apache2.2-common
 +
 
 +
So geht richtiges uninstall mit Konfiguration:
 +
apt-get remove ––purge *paketname*
 +
 
 +
 
 +
 
 +
- download mit wget auf dem ubuntu server
 +
 
 +
 
 +
 
 +
== Apache Konfiguration ==
 +
 
 +
cd /etc/apache2/mods-enabled
 +
sudo ln -s ../mods-available/ssl.conf ssl.conf
 +
sudo ln -s ../mods-available/ssl.load ssl.load
 +
 
 +
cd /etc/apache2/sites-enabled
 +
sudo ln -s /home/ebkus/ebkus_installation/ebkus/ebkus_httpd.conf ebkus-ssl
 +
http://ebkus.org/wiki/Linux_Installation#MySQL
 +
http://ebkus.org/wiki/Linux_Installation#Apache_2
 +
 
 +
-->

Aktuelle Version vom 19. November 2020, 13:51 Uhr

Gültig ab: EBKuS 4.10

Die folgende Anleitung habe ich mit "Debian GNU/Linux 10 (buster)" getestet; vermutlich funktioniert das auch auf anderen Ubuntu bzw. Debian-basierten Gnu/Linux-Distributionen.

Die Installation im folgenden Beispiel erfolgt unter dem User ebkus auf einem Rechner mit dem Namen ebvm. Der User ebkus benötigt Superuserrechte (sudo). Es wird angenommen, dass eine Internetverbindung besteht (zur Installation von Software mit apt-get).

Die Installation erfolgt ausschließlich über die Kommandozeile. Damit funktioniert sie auch auf reinen Servern, die keine GUI haben.

Bitte auch die Windows Installation beachten, da sind einige betriebssystemunabhängige Punkte ausführlicher dargestellt als hier.

Voraussetzungen

Folgende Voraussetzungen müssen erfüllt sein, damit EBKuS installiert werden kann:

Python 2.7

Ist auf solche Systemen normalerweise bereits installiert, ansonsten:

 ebkus@ebvm:~$ sudo apt-get install python2.7

Die Python Version sollte 2.7.13 oder höher sein, optimalerweise 2.7.18, welches die letzte Python-2-Version darstellt. Python 2 wird nicht mehr weiterentwickelt wird. EBKuS ist noch nicht auf Python 3 portiert.

MySQL

Es sollte eine MySQL 5.*-Version zur Verfügung stehen, z.B. 5.1, 5.6 oder 5.7. Zur Installation auf Debian 10 siehe zum Beispiel https://tecadmin.net/install-mysql-on-debian-10-buster/ Kurz zusammengefasst wie folgt:

1. System auf den neuesten Stand bringen:

   ebkus@ebvm:~$ sudo apt update 
   ebkus@ebvm:~$ sudo apt upgrade

2. PPA (Personal Package Archive, Paketquelle) von MySQL einrichten und MySQL-Installation konfigurieren:

   ebkus@ebvm:~$ wget http://repo.mysql.com/mysql-apt-config_0.8.15-1_all.deb
   ebkus@ebvm:~$ sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb

Beim letzten Schritt unbedingt ein MySQL 5 auswählen, also 5.6 oder 5.7! EBKuS wurde noch nicht auf höheren Versionen getestet.

3. MySQL installieren:

   ebkus@ebvm:~$ sudo apt update 
   ebkus@ebvm:~$ sudo apt install mysql-community-server

Bei der Installation muss ein Passwort für den Datenbank-User root angegeben werden, das später in die ebkus.conf eingetragen werden muss. Nach einer erfolgreichen Installation kann man sich mit dem Befehl

   ebkus@ebvm:~$ mysql -uroot -pPasswort
   Welcome to the MySQL monitor.  Commands end with ; or \g.
   ...
   mysql>

mit der Datenbank verbinden.

Falls der Standardport 3306 für MySQL nicht zur Verfügung steht, muss die Datei /etc/mysql/my.cnf angepasst werden.

Python-MySQLdb

Den Datenbankadapter für Python-MySQL installieren:

 ebkus@ebvm:~$ sudo apt-get install python-mysqldb

Nach erfolgreicher Installation kann man Python aufrufen und MySQLdb importieren:

 ebkus@ebvm:~$ python
 Python 2.7.16 (default, Oct 10 2019, 22:02:15)
 ...
 >>> import MySQLdb
 >>>

Apache 2

Den Webserver installieren:

 ebkus@ebvm:~$ sudo apt-get install apache2

Nach der erfolgreichen Installation erhält man mit einem Browser mit der Adresse http://localhost/ eine Seite mit It works!. Oder man installiert z.B. wget und erhält mit der genannten Adresse die entsprechende HTML-Datei index.html:

 ebkus@ebvm:~$ sudo apt-get install wget
 ebkus@ebvm:~$ wget http://localhost/

Falls der Webserver nicht auf den Standardports 80 und 443 laufen soll, muss die Datei /etc/apache2/ports.conf angepasst werden, ebenso die ebkus.conf (siehe Konfiguration)

Um den Webserver zu konfigurieren, müssen das ssl-Modul und das cgi-Modul aktiviert werden:

 ebkus@ebvm:~$ sudo a2enmod ssl
 ebkus@ebvm:~$ sudo a2enmod cgi

Außerdem muss die von EBKuS generierte Apache-Konfigurationsdatei eingebunden werden:

 ebkus@ebvm:~$ cd /etc/apache2/sites-enabled
 ebkus@ebvm:/etc/apache2/sites-enabled$ sudo ln -s /home/ebkus/ebkus_installation/ebkus/ebkus_httpd.conf ebkus-ssl.conf

Die Datei ebkus_httpd.conf existiert zu diesem Zeitpunkt noch nicht, sie wird bei der Installation (install.py) und bei jeder Änderung von Instanzen (configure.py) neu generiert. Sie definiert einen Virtual Host für den Webserver, über den alle EBKuS-Instanzen angesprochen werden.

Dateirechte: Alle Verzeichnisse, die in einem Pfad zu einer Datei stehen, die vom Webserver gelesen werden soll, müssen das Leserecht und das Ausführungsrecht besitzen. Wenn das Installationsverzeichnis wie im Beispiel im Homeverzeichnis eines Benutzers steht, müssen diese Rechte evt. explizit vergeben werden:

 ebkus@ebvm:~$ sudo chmod go+rx /home/ebkus 

Den vom Installationsskript erzeugten Verzeichnissen und Dateien werden diese Rechte automatisch gegeben.


EBKuS

Die neueste EBKuS-Software herunterladen, auspacken und in das Distributionsverzeichnis gehen, z.B.:

 ebkus@ebkusvm1:~$ wget https://ebkus.org/downloads/ebkus-4.10/ebkus-4.10-src.zip
 ebkus@ebkusvm1:~$ unzip ebkus-4.10-src.zip
 ebkus@ebkusvm1:~$ cd EBKuS-4.10
 ebkus@ebkusvm1:~/EBKuS-4.10$

Installation

Erstkonfiguration

Erstkonfiguration erzeugen:

 ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py -c ~/ebkus_installation

Die EBKuS-Konfigurationsdatei /home/ebkus/ebkus_installation/ebkus/ebkus.conf kann nun weiter bearbeitet und für die eigentliche Installation verwendet werden.

Systemkonfiguration

System-Konfiguration anpassen, insbesondere:

  • Passwort für Datenbank-User root eintragen (Parameter database_admin_password)
  • server_name, normalerweise die IP-Nummer des Rechners
  • Evt. Standardports server_https_port und server_http_port anpassen
  • server_admin
  • Im Abschnitt openssl Angaben zur Region und Organisation

Instanzkonfiguration

Instanz-Konfiguration anpassen:

  • instance_name, optional instance_title
  • initial_content, falls eine initiale Datenbank vorhanden ist (z.B. aus einer früheren Installation)
  • port

Installation

Installation:

 ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py ~/ebkus_installation

Bei der Installation wird man unter Umständen nach dem Passwort des (Linux-)Users gefragt, dasselbe, das man bei einem vorangestellten sudo angeben muss. Damit können die start/stop-Skripte in die Bootsequenz (/etc/init.d/) eingetragen werden

Nach der Installation (und auch nach jeder Umkonfigurierung mit configure.py) muss der Webserver neu gestartet werden:

 ebkus@ebvm:~$ sudo service apache2 restart
  * Restarting web server apache2                        [ OK ]

Ansonsten wird die neu generierte Webserver-Konfiguration in ebkus_httpd.conf nicht wirksam.

Migration

Falls wie hier beschrieben eine Menge von bestehenden Instanzen in die neue Installation übernommen werden soll:

 ebkus@ebkusvm1:~/EBKuS-4.10$ python install.py -p ~/ebkus_preconfig ~/ebkus_installation

Im Verzeichnis ~/ebkus_preconfig muss dann eine gültige ebkus.conf liegen sowie eine Sicherungsdatei für jede Instanz, die in der Konfiguration über den Parameter initial_content eingebunden wird.

Dienste

Im Unterschied zu Windows werden bei der Installation und der Konfigurierung keine Dienste gestartet oder gestoppt. Es werden jedoch Skripte in /etc/init.d generiert, mit denen die EBKuS-Server hoch und runtergefahren werden. Beim booten des Systems geschieht dies automatisch, d.h. nach einem Reboot steht EBKuS automatisch zur Verfügung.

Für den Systemadministrator gibt es folgende Skripte, die nach der Installation im Homeverzeichnis stehen:

  • ebkusctl: Damit kann jede Instanz einzeln oder auch alle Instanzen gemeinsam hoch- und runtergefahren werden sowie deren Status abgefragt werden. Dieses Skript verwendet intern die generierten Skripte in /etc/init.d.
  • ebkusdump: Für jede Instanz einzeln oder für alle zusammen eine Sicherungsdatei erzeugen (verwendet intern datenbank_sichern.py).
  • ebkusrestore: Für jede Instanz einzeln oder für alle zusammen die Datenbank aus eine Sicherungsdatei initialisieren (verwendet intern datenbank_initialisieren.py).

Z.B.

 ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl all start
* Starting EBKuS demo                                [ OK ] 
* Starting EBKuS muster_efb                          [ OK ] 
* Starting EBKuS demo_braunschweig                   [ OK ] 

Jedes Skript hat eingebaute Hilfe:

 ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl --help
 ebkus@ebvm:~/ebkus_installation/ebkus$ ebkusctl -h