Wie geht Automatisierung mit Linux?

1 Antwort

Von Experte julihan41 bestätigt

Die in meinen Augen bessere Variante :

Systemd

Dafür brauchen wir

  • Skript
  • Service
Skript

Dafür erstellst du ein Skript

sudo nano  /path/to/script.sh

Mit folgendem Inhalt

#!/bin/bash

Das was das Skript halt machen soll, oder eben der Befehl

Das Skript muss nun ausführenbar gemacht werden

sudo chmod -x  /path/to/script.sh

Ausprobieren ob dein Skript macht was es soll kannst du mit

sh  /path/to/script.sh
Service

Danach brauchen wir noch den Service der dieses Skript ausführt

sudo nano path/toService/Name.service

Diese Datei muss folgenden inhalt haben

[Unit]
Description=was macht der Service

[Service]

ExecStart=/path/to/script.sh
Type=simple

[Install]
WantedBy=multi-user.target

Das Ganze denn speichern und

sudo chmod 644  path/toService/Name.service

Danach

sudo systemctl enable Name.service 
sudo systemctl start Name.service

Ob der Service Job läuft siehst du hier

sudo systemctl status Name.service

Wie du dir denken kannst habe ich natürlich ein paar Platzhalter verwendet

/path/to/script.sh >>> das wäre dort wo du deine Skripte speichern willst und halt auch den Namen dafür verwenden

Name.service >>> hier ist Name der Platzhalter und kann von dir relativ frei gewählt werden (sofern der Name noch frei ist)

Das das Ganze über das Terminal einzugeben ist, erklärt sich hoffentlich selbst. In meinem Beispiel wäre es ein Service der startet bei Start des PCs. Dies lässt sich natürlich beliebig erweitern oder modifizieren.

Bspw mit :

Wenn erst ein anderer Service gestartet werden muss bevor dein Service Aktiv ist

Requires=xyz.service