de:x2:install
Inhaltsverzeichnis
Installation
Systemvoraussetzungen
- PHP 7.3 oder neuer
- MySQL 8.0
bekannte Installationen
| Hardware | Betriebssystem | PHP | Datenbank |
|---|---|---|---|
| Raspberry PI | Raspbian GNU/Linux 10 (buster) | 7.3.31 | MariaDB 10.3.34 |
Variablen / Pfadangaben
Diese Anleitung verwendet Variablen zur Bestimmung der Verzeichnisse. Die Verzeichnisse sind abhängig vom individuellen System und Wünschen
| Variable | Wert |
|---|---|
| $X2_HOME | /var/www/html/x2 |
| $APACHE_DIR | /var/www/html |
Benötigte Pakete
- graphviz
- php-ssh2
- php-phpseclib
- libphp-phpmailer
apt install graphviz php-ssh2 php-phpseclib ibphp-phpmailer
GraphViz
GraphViz wird zur Erstellung der Graph-Elemente von X2 verwendet. Dazu muss das Paket für PHP installiert werden
- pear installieren, falls nicht vorhanden
wget http://pear.php.net/go-pear.phar php go-pear.phar
- Das PHP-Modul für GraphViz installieren
sudo pear install Image_GraphViz
- in der Datei
/etc/php/7.3/apache2/php.inimuss ggf. der include-Pfad angpasst werdeninclude_path = ".:/usr/share/pear:/usr/share/php"
- Apache neu starten
Datenbank
- Erstellen einer Datenbank
create database x2;
- Erstellen eines Benutzers
create user x2 identified by 'x2';
- Vergeben der Rechte an den neuen Benutzer
grant all privileges on x2.* to x2;
- Einstellungen in der DB laden
flush privileges;
X2
- Laden der Quellen der X2 Software
cd $X2_HOME git clone git@github.com:michdip/x2.git
- Erstellen von Arbeitsverzeichnissen
mkdir -p $X2_HOME/log mkdir -p $X2_HOME/tmp mkdir -p $X2_HOME/templates/templates_c mkdir -p $X2_HOME/templates/cache
- Sollte das Verzeichnis
$X2_HOMEnicht dem User gehören, mit dem der Apache ausgeführt wird, so müssen die Verzeichnisse für diesen zum Schreiben frei gegeben werdenchmod 777 $X2_HOME/log chmod 777 $X2_HOME/tmp chmod 777 $X2_HOME/templates/templates_c chmod 777 $X2_HOME/templates/cache
- Konfiguration von
$X2_HOME/conf.d/base.conf$X2_HOME/conf.d/databases.conf$X2_HOME/conf.d/x2_host.conflocal muss definiert sein
$X2_HOME/conf.d/mail.conf$X2_HOME/database/execute.sh
Smarty
Smarty wird zur Erstellung der HTML-Ausgabe verwendet.
- Laden der Quellen aus dem Git von Smarty
cd $APACHE_DIR git clone https://github.com/smarty-php/smarty.git
- Smarty mit dem X2 verlinken
cd $X2_HOME/lib ln -s $APACHE_DIR/smarty/libs smarty
X2 Setup
- Einen SSH-Key für das X2 erstellen
$ cd $X2_HOME/conf.d $ ssh-keygen -b 1024 -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/pi/.ssh/id_rsa): $X2_HOME/conf.d/id_rsa Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in $X2_HOME/conf.d/id_rsa. Your public key has been saved in $X2_HOME/conf.d/id_rsa.pub. The key fingerprint is: SHA256:QxrATJPO0xR/rtu0cLKLeL8PwZDuEYmDzHOAvBMRn6Q pi@raspberrypi The key's randomart image is: +---[RSA 1024]----+ |.++=+... | |.=+o=+.+ | | EB=+o* o . | | o o+o.B o | | . .+ S . | | . . + | | . = o | | ... X . | | ....*++ | +----[SHA256]-----+
- Die Verbindung zu local herstellen
ssh -i ./id_rsa <user>@<host>
- Erstellen der Datenbanktabellen
cd $X2_HOME/database ./createDatabase.sh
- Import der Datei
$X2_HOME/database/x2_system.json - Die Gruppe
X2 Systemhat als Variable$X2_HOMEdefiniert. Diese muss angepasst werden - Alle Templates in der Gruppe
X2 Systemmüssen aktiviert werden - Festlegen des
getLog-Template- In der Gruppe
X2 Systembefindet sich ein Template mit dem NamengetLogs. Die ID dieses Template muss in folgendes Statement eingegeben werden und an die DB gesendet werdeninsert into SEQUENCE (SEQ_NAME, SEQ_VALUE) values ( 'X2_MASHINE_ROOM_getLogs', <ID des Template>);
- Erstellen der crontab
0-59 * * * * cd $X2_HOME && ./x2Deamon.watchdoc.sh 1 0 * * * kill -USR1 `cat $X2_HOME/x2Deamon.pid`
de/x2/install.txt · Zuletzt geändert: von mdippold
