[[fhc:server|zurück zur Übersicht]]
====== Systemd ======
Systemd ist ein init-Dienst zum Steuern von Prozessen ähnlich wie Upstart und SysVinit-Skripten.\\
\\
Um einen neuen Service anzulegen, muss eine Textdatei mit der Endung .service
in /etc/systemd/system erstellt werden.\\
===== Beispiel PhantomJS mit Highcharts =====
Datei: /etc/systemd/system/phantomjs@.service
[Unit]
Description=PhantomJS headless browser with HighCharts
After=network.target
[Service]
ExecStart=/usr/bin/phantomjs /home/%i/highcharts/highcharts-convert.js -host xxx.xxx.xxx.xxx -port 3003
KillMode=process
Restart=on-failure on-abort
User=%i
Group=%i
Das @ im Dateinamen steht dafür, dass der Prozess von mehreren Benutzern gestartet werden kann.\\
%i: Benutzername\\
ACHTUNG: Relative Pfade werden NICHT unterstützt!\\
Nach jeder Veränderung, oder dem hinzufügen eines Systemd-Services, muss mit systemctl daemon-reload
der Daemon neu geladen werden.
==== Shell ====
systemctl start phantomjs@USERNAME #startet den Prozess
systemctl stop phantomjs@USERNAME #beendet den Prozess
systemctl enable phantomjs@USERNAME #aktiviert den Prozess(wird bei systemstart ausgeführt)
systemctl disable phantomjs@USERNAME #deaktiviert den Prozess
systemctl status phantomjs@USERNAME #zeigt, ob der Prozess läuft, evtl. Fehler und seinen Output
==== weiterführende Links ====
[[https://freedesktop.org/wiki/Software/systemd/|SystemD]]\\
[[https://www.freedesktop.org/software/systemd/man/|SystemD manpage]]\\
[[https://www.freedesktop.org/software/systemd/man/systemctl.html|systemctl]]\\
[[https://www.freedesktop.org/software/systemd/man/journalctl.html|journalctl]]\\