ПО МКА-3/en: различия между версиями
(Новая страница: «Other configuration files must be added to the autoconfiguration system through WB-dbic package upgrade (with version increase). In this case, if the desired file…») |
(Новая страница: «Start/stop daemon: <pre> /etc/init.d/wb-dbic-pcycle start /etc/init.d/wb-dbic-pcycle stop </pre>») |
||
(не показано 9 промежуточных версий этого же участника) | |||
Строка 10: | Строка 10: | ||
</pre> | </pre> | ||
Демон слушает команды по шине MQTT. Есть три разных способа вызвать перезагрузку SCU, т.е. отправить MQTT-команду демону: | |||
* | * Через веб-интерфейс в разделе Back relays | ||
* | * С помощью команды `dbic_invoke_pcycle.sh` в консоли | ||
* | * С помощью отправки команды через MQTT | ||
<pre> | <pre> | ||
mosquitto_pub -h <ip-адрес МКА> -t "/devices/dbic-power-cycle/controls/power/on" -m "0" -q 2 | mosquitto_pub -h <ip-адрес МКА> -t "/devices/dbic-power-cycle/controls/power/on" -m "0" -q 2 | ||
Строка 20: | Строка 20: | ||
=== | === Механизм конфигурирования === | ||
==== | ==== Конфигурация ==== | ||
Пакет wb-dbic устанавливает и хранит темплейты конфигурационных файлов в директории /etc/wb-dbic/templates/. | |||
Например темплейт для файла /etc/network/interfaces хранится в файле /etc/wb-dbic/templates/etc/network/interfaces.template. | |||
Конфигурационные файлы генерируются посредством вызова скрипта dbic_gen_conf. | |||
Скрипт получает переменные для конфигурирования от SCU, после чего обрабатывает файлы из директории /etc/wb-dbic/templates. | |||
Обрабатываются только файлы с расширением .template. | |||
Если для заданного файла становится невозможно получить все необходимые переменные для подстановки, то файл не обновляется. | |||
Изменения в конфигурационных файлах не сохраняются. Изменения в темплейтах в директории /etc/wb-dbic/templates обрабатываются | |||
стандартным механизмом conffiles в dpkg: при установке обновлённого пакета | |||
и при наличии локальных правок пользователю будут предложены варианты дальнейших действий. | |||
==== | ==== Настройка сети ==== | ||
Т.к. получение переменных для подстановки в темплейты происходит по сети, | |||
то отдельно предоставляется первоначальный файл с настройками сети - /etc/network/interfaces. | |||
==== | ==== Добавление конфигурационных файлов в систему ==== | ||
Добавление других конфигурационных файлов в систему автоконфигурирования должно производиться | |||
через обновление пакета wb-dbic (с увеличением версии). При этом, если нужный файл предоставляется каким-либо пакетом, то | |||
необходимо пользоваться функционалом dpkg-divert или dpkg-divert в сочетании с ucf, чтобы предотвратить перезаписывание файла при обновлении | |||
исходного пакета. |
Версия 17:42, 18 июля 2019
Main article Wiren Board NETMON-1
Restart SCU (rear relays)
The daemon dbic-pcycle.py is responsible for controlling the rear relays.
Start/stop daemon:
/etc/init.d/wb-dbic-pcycle start /etc/init.d/wb-dbic-pcycle stop
Демон слушает команды по шине MQTT. Есть три разных способа вызвать перезагрузку SCU, т.е. отправить MQTT-команду демону:
- Через веб-интерфейс в разделе Back relays
- С помощью команды `dbic_invoke_pcycle.sh` в консоли
- С помощью отправки команды через MQTT
mosquitto_pub -h <ip-адрес МКА> -t "/devices/dbic-power-cycle/controls/power/on" -m "0" -q 2
Механизм конфигурирования
Конфигурация
Пакет wb-dbic устанавливает и хранит темплейты конфигурационных файлов в директории /etc/wb-dbic/templates/. Например темплейт для файла /etc/network/interfaces хранится в файле /etc/wb-dbic/templates/etc/network/interfaces.template.
Конфигурационные файлы генерируются посредством вызова скрипта dbic_gen_conf. Скрипт получает переменные для конфигурирования от SCU, после чего обрабатывает файлы из директории /etc/wb-dbic/templates. Обрабатываются только файлы с расширением .template.
Если для заданного файла становится невозможно получить все необходимые переменные для подстановки, то файл не обновляется.
Изменения в конфигурационных файлах не сохраняются. Изменения в темплейтах в директории /etc/wb-dbic/templates обрабатываются стандартным механизмом conffiles в dpkg: при установке обновлённого пакета и при наличии локальных правок пользователю будут предложены варианты дальнейших действий.
Настройка сети
Т.к. получение переменных для подстановки в темплейты происходит по сети, то отдельно предоставляется первоначальный файл с настройками сети - /etc/network/interfaces.
Добавление конфигурационных файлов в систему
Добавление других конфигурационных файлов в систему автоконфигурирования должно производиться через обновление пакета wb-dbic (с увеличением версии). При этом, если нужный файл предоставляется каким-либо пакетом, то необходимо пользоваться функционалом dpkg-divert или dpkg-divert в сочетании с ucf, чтобы предотвратить перезаписывание файла при обновлении исходного пакета.