Table of Contents

Babylon 5 Web UI

Beschreibung

Ist unter https://babylon5.manhart.space/ aufrufbar. Dort findet man eine Übersicht aller intern erreichbaren Services. Man kann unter Serverinfo vordefinierte Befehle am Server absetzen.

Aufgrund der engen Verzahnung mit dem Host-System lasse ich es aktuell nicht in einem Container laufen.

FIXME Überlegen, wie man es “containerizen” kann.

Befehl hinzufügen

FIXME Diese Sektion muss auf ihre Aktualität geprüft werden…

Um einen Befehl hinzuzufügen muss dieser in der Datei $docroot/babylon5/sysmon.php hinzugefügt werden.

zB:

$array = array('Top' => 'top -b -n 1',
        'free HDD Space' => 'df -h',
        'Memory Usage' => 'vmstat',
        'List open files' => 'lsof',
        'Netstat' => 'netstat',
        'PHP Info' => 'phpinfo',
        'DLNA Reindex' => 'sudo /etc/init.d/minidlna force-reload'
);

wird zu

$array = array('Top' => 'top -b -n 1',
        'free HDD Space' => 'df -h',
        'HDD SMART' => 'sudo smartctl --all /dev/sda',
        'Memory Usage' => 'vmstat',
        'List open files' => 'lsof',
        'Netstat' => 'netstat',
        'PHP Info' => 'phpinfo',
        'DLNA Reindex' => 'sudo /etc/init.d/minidlna force-reload'
);

damit man die HDD SMART Werte auslesen kann.

Hier ist noch die Besonderheit zu beachten, dass alle Befehle, welche sudo (root Zugriff) benötigen noch ins file /etc/sudoers eingetragen werden müssen, damit keine Passwort-Abfrage stattfindet.

sudoers editieren

# visudo

im nano dann am Ende folgende Zeile hinzufügen:

www-data ALL = (root) NOPASSWD: $PFAD_ZUM_BEFEHL

Danach noch

# service sudo restart

das Service neu starten und man kann diesen Befehl aus dem PHP-Script aufrufen.