кто в системдэ умеет? чо ему надо? pi@raspberrypi:~ $ sudo systemctl start templogger.service
Job for templogger.service failed because the control process exited with error code.
See "systemctl status templogger.service" and "journalctl -xe" for details.
pi@raspberrypi:~ $ systemctl status templogger.service
templogger.service - templogger
Loaded: loaded (/etc/systemd/system/templogger.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2021-08-10 05:51:56 EEST; 6s ago
Process: 1190 ExecStart=/usr/bin/python3 /home/pi/templogger.py -db=temp_logger_db -sn=test1 (code=exited, status=1/FAILURE)
Aug 10 05:51:56 raspberrypi systemd[1]: Starting templogger...
Aug 10 05:51:56 raspberrypi python3[1190]: Traceback (most recent call last):
Aug 10 05:51:56 raspberrypi python3[1190]: File "/home/pi/templogger.py", line 8, in
Комментарии: 10
Anonim
Написано же - нет модуля инфлюксбд
Anonim
есть модуль и ниже тот же скрипт с теми же параметрами из шела отрабатывает
Anonim
Значит что-то откуда-то запускается с разных мест или с разными правами
Anonim
[Unit] Description=templogger [Service] Type=forking PIDFile=/work/www/templogger/shared/tmp/pids/service.pid ExecStart=/usr/bin/python3 /home/pi/templogger.py -db=temp_logger_db -sn=test1 TimeoutSec=60 RestartSec=30 [Install] WantedBy=multi-user.target
Anonim
Если запускать шелл скрипт заглушку, вместо питонячьего скрипта - ругань такая же?
Anonim
ща попробую работает, почти pi@raspberrypi:~ $ sudo systemctl status templogger.service templogger.service - templogger Loaded: loaded (/etc/systemd/system/templogger.service; disabled; vendor preset: enabled) Active: failed (Result: protocol) since Tue 2021-08-10 06:10:18 EEST; 7s ago Process: 1452 ExecStart=/bin/bash /home/pi/test.sh (code=exited, status=0/SUCCESS) Aug 10 06:10:18 raspberrypi systemd[1]: Starting templogger... Aug 10 06:10:18 raspberrypi bash[1452]: Hello world Aug 10 06:10:18 raspberrypi systemd[1]: templogger.service: Can't open PID file /work/www/templogger/shared/tmp/pids/service.pid (yet?) after start: No such file or directory Aug 10 06:10:18 raspberrypi systemd[1]: templogger.service: Failed with result 'protocol'. Aug 10 06:10:18 raspberrypi systemd[1]: Failed to start templogger .
Anonim
фейлед ту лоад пид, что-то мне подсказывает, что в эту сторону гуглить
Vasil
У тебя то, что от пользователя и от системы исполняется, использует разный набор библиотек для питона. Почему, я не знаю. Т.е. надо и для системы и для тебя ставить, чтобы работало.
Sergy
использовать virtualenv как минимум https://stackoverflow.com/questions/37211115/how-to-enable-a-virtualenv-in-a-systemd-service-unit
Anonim
Уже разобрался. Сказал системдэ от какого пользователя запускать