Два процесса wb-mqtt-serial


#1

Добрый день!
Почему так много процессов wb-mqtt-serial? Какой за что отвечает?

root@wirenboard-ARLXKII4:~# ps -aux | grep wb-mqtt-serial
root      2392  0.0  0.3   2712  1852 ?        S    09:13   0:00 /bin/bash -c exec /usr/bin/wb-mqtt-serial -c /etc/wb-mqtt-serial.conf 2>&1 | logger -t serial
root      2393  6.4  2.2  45188 11304 ?        Sl   09:13   3:18 /usr/bin/wb-mqtt-serial -c /etc/wb-mqtt-serial.conf

#2

Он один, на самом деле (2393): первый (2392 ) — это родительский bash, который его запустил.


#3

Очень хочется увидеть wb-mqtt-serial на systemd.
Например так:

[Unit]
Description=Serial device <==> MQTT bridge which follows Wiren Board MQTT Conventions
After=syslog.target

[Service]
Type=simple
NotifyAccess=main
ExecStart=/usr/bin/wb-mqtt-serial -c /etc/wb-mqtt-serial.conf
ExecStartPost=/bin/sh -c "echo $MAINPID > /var/run/wb-mqtt-serial.pid"
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Это бы добавило стабильности и позволило бы более гибко управлять процессами.


#4

Да, правильное пожелание. Там есть еще сервисы, которыми хочется через systemd рулить. Будем стараться в этом направлении.


#5

А если вы отправите pull request в wb-mqtt-serial, то это сильно ускорит процесс.
Кстати строчка с pid нужна вообще? Он вроде использовался раньше только в start-stop-daemon, чтобы убивать по stop.


#6

Рад буду внести вклад, но не пойму на какой стадии появляется конфигурация сервиса. В репозитории wb-mqtt-serial не вижу такого.

По поводу pid перепроверю, везде где читал был указан. Нужно почитать документацию.