Linux Installation

Aus EBKuS Dokumentation
Wechseln zu: Navigation, Suche

Gültig ab: EBKuS 4.4.1


Voraussetzungen

Die folgende Anleitung habe ich mit Ubuntu 10.04.2 LTS 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 kein GUI haben.

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

Python

Ist auf solche Systemen normalerweise bereits installiert, ansonsten:

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

Es kann auch Python 2.7 sein, wenn das in der Distribution angeboten wird, jedoch nicht Python 3.0 oder höher.

MySQL

Bei Ubuntu 10.04 LTS wird MySQL 5.1.XX installiert. Mit der nächsthöheren MySQL-Version 5.5 ist EBKuS noch nicht getestet!

Die Datenbank installieren mit:

 ebkus@ebvm:~$ sudo apt-get install mysql-server mysql-common mysql-client

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.

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.6.5 (r265:79063, Apr 16 2010, 13:09:56)
 ...
 >>> 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)

Den Webserver konfigurieren:

 ebkus@ebvm:~$ cd /etc/apache2/mods-enabled
 ebkus@ebvm:/etc/apache2/mods-enabled$ sudo ln -s ../mods-available/ssl.conf ssl.conf
 ebkus@ebvm:/etc/apache2/mods-enabled$ sudo ln -s ../mods-available/ssl.load ssl.load
 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

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) generiert.

Reportlab

Falls keine Internetverbindung besteht, muss diese Datei bei der Installation im Downloadverzeichnis stehen, ansonsten wird sie bei der Installation automatisch heruntergeladen.

EBKuS

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

 ebkus@ebkusvm1:~$ wget ftp://www.efb-berlin.de/pub/ebkus/ebkus-4.4/ebkus-4.4.1-rc1-src.zip
 ebkus@ebkusvm1:~$ unzip ebkus-4.4.1-rc1-src.zip
 ebkus@ebkusvm1:~$ cd EBKuS-4.4.1
 ebkus@ebkusvm1:~/EBKuS-4.4.1$

Installation

Erstkonfiguration erzeugen:

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

System-Konfiguration anpassen, insbesondere:

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

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:

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

Falls wie in Windows_Installation#Migration beschrieben eine Menge von bestehenden Instanzen übernommen werden soll:

 ebkus@ebkusvm1:~/EBKuS-4.4.1$ ./install.py -p ~/ebkus_preconfig ~/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 werden die start/stop-Skripte in die Bootsequenz (/etc/init.d/) eingetragen.

Dienste:

Im Unterschied zu Windows werden bei der Installation und der Konfigurierung keine Dienste gestartet oder gestoppt.



Schritte:

  1. `Installationsverzeichnis`_ einrichten, z.B. /home/user/ebinst:
 mkdir /home/user/ebinst
  1. In das `Distributionsverzeichnis`_ gehen (z.B. /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
  1. EBKuS-Konfiguration erzeugen:
 python install.py --config /home/user/ebinst
  1. Erzeugte Konfigurationsdatei /home/user/ebinst/ebkus/ebkus.confanpassen (siehe `Konfiguration`_).
  2. 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`_:

/home/user/ebinst/ebkus/Instanzname

Die Meldungen des Installationsskriptes stehen auch in der Datei /home/user/ebinst/install.log.

  1. (als root) Die in Schritt 5. erzeugte Datei /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
  1. (als root) Den Apache-Webserver neustarten, damit die modifizierte Konfiguration berücksichtigt wird, z.B. bei SuSE:
 rcapache restart
  1. 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.

  1. Über einen Browser mit der Instanz demo arbeiten (anstatt 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 htdocs/index.html zu finden.

Als Administrator anmelden: Benutzer Admin, Passwort Admin. Als angemeldeter Administrator können Sie weitere Benutzer anlegen.

Die Instanzen demo bzw. 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 test, Passwort test bzw. Benutzer verw, Passwort 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
  1. (als 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.

  1. 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