Systemdienst einrichten

Aus behwiki
Zur Navigation springen Zur Suche springen

(Linux Debian/Ubuntu) - Terminal/Server

Um einen Systemdienst auf Linux einzurichten, um ihn als "service XYZ start" starten zu können, sind folgende Schritte nötig:

Es wird davon ausgegangen, dass diese Schritte als sudo-Mitglied gemacht werden.

sudo nano /etc/systemd/system/dienstname.service

Im einfachsten Fall reicht folgendes aus:

[Unit]

Description=Eigener Dienst

[Service]

WorkingDirectory=/srv

ExecStart=/srv/script.sh arg1 arg2

User=scripter

Restart=always

[Install]

WantedBy=multi-user.target

In einigen Fällen, vor allem wenn while-Schleifen zum Einsatz kommen, kann dies auch komplexer werden:

[Unit]

Description=Eigener dienst

After=network.target

Restart=always

RestartSec=5

[Service]

ExecStart=/srv/script.sh arg1 arg2

WorkingDirectory=/srv

User=scripter

Group=scripter

Restart=always

StandardOutput=journal

StandardError=journal

[Install]

WantedBy=multi-user.target

Zum Schluss muss der Dienst noch aktiviert werden:

sudo systemctl enable dyndnsupdater.service

Und anschließend kann der dienst gestartet und auf den Status geschaut werden:

sudo service dienst start

sudo service dienst status

sudo service dienst stop