Hallo zusammen,
ich habe ein Python-Skript, welches ich über einen Systemd-Dienst beim Bootvorgang starten möchte. Das Python-Skript soll dabei mit pipenv aufgerufen werden und über sdnotify eine Rückmeldung über den erfolgreichen Start an Systemd geben.
Aufruf des Skriptes im Service:
ExecStart=/usr/bin/fish -c 'cd /pfad/zum/skript && /usr/bin/pipenv run python mein_skript.py'
Im Python-Skript kommt dann:
systemd_info = sdnotify.SystemdNotifier()
systemd_info.notify("READY=1")
Das führt aber zu folgender Fehlermeldung beim Start des Services:
systemd[1]: mein_skript.service: Got notification message from PID 15835, but reception only permitted for main PID 15833
Vermutlich hängt das damit zusammen, daß der Hauptprozeß der von pipenv ist, und das Python-Skript daher mit der falschen PID Nachrichten sendet.
Gibt es hierfür eine schöne Lösungsmöglichkeit?