Який правильний спосіб запустити скрипт python як демон (послуга) в розп’яні (або debian)?


9

Я хотів би використовувати свій Pi в якості домашнього термостата, при цьому цикл управління працює в сценарії python. Я хочу запустити це як демон на распбіні (debian) при запуску.

У /etc/init.d/skeleton є приклад bash-скрипту, але він здається непітонічним, щоб збивати bash та python разом. Існують модулі python та пакети deb, які можуть допомогти в обробці команд запуску / зупинки / оповіщення:

Хтось мав успіх у певному підході до демонстрації циклу управління зворотним зв'язком у реальному часі на Pi?

Відповіді:


6

Я робив це на кількох проектах. https://bitbucket.org/dnetman99/raspberrypiprojects Якщо ви подивитеся на gpsdpiTracker, trackerServer.pyвикористовує клас демона для демонстрації сценарію. Тоді я просто використовую, restartdщоб спостерігати, чи він зупиняється і перезапускається, що також означає, що він також запуститься після завантаження. Я також використовував файл скелета для запуску, зупинки демон, але це не потрібно, якщо ви використовуєте цей метод.

restartd = sudo apt-get install restartd

Дякую! Дивовижні приклади. Побачу, чи зможу я переробити частину цього коду. Клас демона походить від модуля python-daemon на основі PEP 3143 і тут перезапускається перезапуск .
варильні панелі

Насправді виглядає так, ніби ви прокатали свій власний клас Daemon. Приємно.
варильні панелі

1
За винятком лінії she-bang, клас Demon у бітбукеті dnetman99 ідентичний простому демон Sander Marechal з 2007 року. Через тут
RolfBly

2

Подивіться на те, як ми демонструємо в клієнті pybit-client.

https://github.com/nicholasdavidson/pybit

Це було розроблено, щоб працювати як демон на невеликих коробках ARM 24/7.

Обробляє журнал, обробку сигналів, сценарії запуску / зупинки тощо ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.