Es kann hilfreich sein, zu wissen ob ein Prozess im Moment aktiv ist oder nicht. Hierzu gibt es eine Vielzahl von unterschiedlichen Möglichkeiten unter Linux. Ich werde hier kurze die vorstellen, die mir am einfachsten Erscheint und dazu mit Standartwerkzeugen (auch unter Busybox) ausgeführt werden kann.
SERVICE=openvpn if P=$(pgrep $SERVICE) then echo "openvpn aktiv" else cd /etc/openvpn openvpn --config /etc/openvpn/client.ovpn & echo "openvpn wird nun gestartet" fi
Das Beispielprogramm macht nichts anderes, als die Prozessliste mit pgrep zu durchsuchen. Wird ein Eintag des Prozesses den wir suchen (openvpn) gefunden, dann wird das dementsprechende Statement in der if-else-Anweisung ausgeführt.
Es könnten genauso aber auch andere Dinge passieren, wie z.B. das versenden einer E-Mail u.a.
Schreibe einen Kommentar