ПО МКА-3: различия между версиями
Fizikdaos (обсуждение | вклад) |
(Новая страница: «Основная статья: Wiren Board NETMON-1 === Перезагрузка SCU (задние реле) === За управление задними ре…») |
||
(не показаны 2 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
Основная статья: [[Wiren Board NETMON-1]] | Основная статья: [[Wiren Board NETMON-1]] | ||
=== Перезагрузка SCU (задние реле) === | === Перезагрузка SCU (задние реле) === | ||
За управление задними реле ответственен демон dbic-pcycle.py. | За управление задними реле ответственен демон dbic-pcycle.py. | ||
Запуск/остановка демона: | Запуск/остановка демона: | ||
<pre> | <pre> | ||
Строка 12: | Строка 9: | ||
</pre> | </pre> | ||
Демон слушает команды по шине MQTT. Есть три разных способа вызвать перезагрузку SCU, т.е. отправить MQTT-команду демону: | Демон слушает команды по шине MQTT. Есть три разных способа вызвать перезагрузку SCU, т.е. отправить MQTT-команду демону: | ||
* Через веб-интерфейс в разделе Back relays | * Через веб-интерфейс в разделе Back relays | ||
* С помощью команды `dbic_invoke_pcycle.sh` в консоли | * С помощью команды `dbic_invoke_pcycle.sh` в консоли | ||
Строка 23: | Строка 18: | ||
</pre> | </pre> | ||
=== Механизм конфигурирования === | |||
=== Механизм конфигурирования === | |||
==== Конфигурация ==== | ==== Конфигурация ==== | ||
Пакет wb-dbic устанавливает и хранит темплейты конфигурационных файлов в директории /etc/wb-dbic/templates/. | Пакет wb-dbic устанавливает и хранит темплейты конфигурационных файлов в директории /etc/wb-dbic/templates/. | ||
Например темплейт для файла /etc/network/interfaces хранится в файле /etc/wb-dbic/templates/etc/network/interfaces.template. | Например темплейт для файла /etc/network/interfaces хранится в файле /etc/wb-dbic/templates/etc/network/interfaces.template. | ||
Конфигурационные файлы генерируются посредством вызова скрипта dbic_gen_conf. | Конфигурационные файлы генерируются посредством вызова скрипта dbic_gen_conf. | ||
Скрипт получает переменные для конфигурирования от SCU, после чего обрабатывает файлы из директории /etc/wb-dbic/templates. | Скрипт получает переменные для конфигурирования от SCU, после чего обрабатывает файлы из директории /etc/wb-dbic/templates. | ||
Обрабатываются только файлы с расширением .template. | Обрабатываются только файлы с расширением .template. | ||
Если для заданного файла становится невозможно получить все необходимые переменные для подстановки, то файл не обновляется. | Если для заданного файла становится невозможно получить все необходимые переменные для подстановки, то файл не обновляется. | ||
Изменения в конфигурационных файлах не сохраняются. Изменения в темплейтах в директории /etc/wb-dbic/templates обрабатываются | Изменения в конфигурационных файлах не сохраняются. Изменения в темплейтах в директории /etc/wb-dbic/templates обрабатываются | ||
стандартным механизмом conffiles в dpkg: при установке обновлённого пакета | стандартным механизмом conffiles в dpkg: при установке обновлённого пакета | ||
и при наличии локальных правок пользователю будут предложены варианты дальнейших действий. | и при наличии локальных правок пользователю будут предложены варианты дальнейших действий. | ||
==== Настройка сети ==== | |||
==== Настройка сети ==== | |||
Т.к. получение переменных для подстановки в темплейты происходит по сети, | Т.к. получение переменных для подстановки в темплейты происходит по сети, | ||
то отдельно предоставляется первоначальный файл с настройками сети - /etc/network/interfaces. | то отдельно предоставляется первоначальный файл с настройками сети - /etc/network/interfaces. | ||
==== Добавление конфигурационных файлов в систему ==== | |||
Добавление других конфигурационных файлов в систему автоконфигурирования должно производиться | Добавление других конфигурационных файлов в систему автоконфигурирования должно производиться | ||
через обновление пакета wb-dbic (с увеличением версии). При этом, если нужный файл предоставляется каким-либо пакетом, то | через обновление пакета wb-dbic (с увеличением версии). При этом, если нужный файл предоставляется каким-либо пакетом, то | ||
необходимо пользоваться функционалом dpkg-divert или dpkg-divert в сочетании с ucf, чтобы предотвратить перезаписывание файла при обновлении | необходимо пользоваться функционалом dpkg-divert или dpkg-divert в сочетании с ucf, чтобы предотвратить перезаписывание файла при обновлении | ||
исходного пакета. | исходного пакета. | ||
Версия 05:31, 2 мая 2015
Основная статья: Wiren Board NETMON-1
Перезагрузка SCU (задние реле)
За управление задними реле ответственен демон dbic-pcycle.py.
Запуск/остановка демона:
/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, чтобы предотвратить перезаписывание файла при обновлении исходного пакета.