Archiv für den Tag: 11. September 2015

Shell: Daemonize Script mit supervisord

Um ein Script im Hintergrund laufen zu lassen kann launchtool, upstart oder start-stop-daemon verwendet werden.
Ein einfacher Weg ist aber die Verwendung von supervisord (einem Python-Paket). Nach der Installation mit

sudo apt-get install supervisor

muss die Konfigurationsdatei (Ubuntu: /etc/supervisor/supervisord.conf) angepasst werden.
Dazu muss wenigstens ein Programm hinzugefügt werden, damit sich supervisord darum kümmern kann.

[program:myscript]
command=python /home/myuser/script.py
numprocs=1
autostart=true
autorestart=true
user=myuser

Hier ein Beispiel:

  • Python-Interpreter mit script.py aufrufen
  • Genau eine Instanz erlauben
  • Beim Hochfahren des Rechners starten
  • script.py restarten, wenn das Script nicht mehr läuft
  • Als User „myuser“ laufen lassen

Weiterlesen