Max Nikulin <maniku...@gmail.com> wrote:
> On 24/09/2023 01:52, Andrey Jr. Melnikov wrote:
> > Вот и смотри - есть демон, который мониторит сосотяние UPS'a - пропало
> > питание - посылает сигнал, появилось - посылает сигнал (ну тут всё
> > стандартно, так уже лет 40 делают). Просто удобнее, когда у тебя есть
> > понимание - init дернул power-loss скриптик, в котором уже можно оценить
> > масштаб проблемы, остановить нужное и принять решение - ждём восстановления
> > или отключаемся. Или init дернул power-restored - когда поднимаем
> > остановленное или в зависимости от - тупо перезагружаемся.
> > Нет, через один SIGPWR это тоже всё решалось и решается, только вот скриптик
> > будет разляпистее.

> Я все еще сомневаюсь, нужно ли здесь завязываться на init.

> Почему обычный демон не может сам запускать, в зависимости от ситуации, 
> либо power-loss, либо power-restored скрипты? В чем польза того, что в 
> промежутке между ними init и сигналы?
Поздравляю, ты придумал init в софтине для UPS. Теперь все остальные должны
знать про неё - а она должна знать про всё остальное.

> Единственное преимущество от SIGPWR, которое я вижу, - это 
Приемущество - то, что интерфейс сискола signal(..) известен всем и каждому,
сигнал можно отослать без знания, что там у нас за init и в какой сокет ему
надо что нашептать (и пустят ли туда этого демона).

> зафиксированный API. Недостаток - API очень ограниченный. 
Недостаток тут только один - невозможно выборочно остановить/запустить
демоны, которые жрут электричество/обрабатывают данные.. Лишний target эту
проблему слегка облегчает. 

> Даже если добавить еще сигналов, то становится не очевидно, какому сигналу 
> соответствует событие. /etc/inittab как известная точка конфигурации для
т.е. прочитать в man'e про конфигурацию используемого init'a - это не модно?

> меня не убедительное достоинство, не SysV init может использовать другой 
> файл, чтобы назначать обработчики.

> Если скрипты запускаются напрямую демоном, который слушает SNMP, то 
> событий может быть несколько и со вполне нормальными именами. Главная 
> проблема - договориться о именах скриптов и их параметрах. Иначе будет 
> головная боль с тем, что у каждого производителя UPS они будут свои и не 
> очень совместимые между собой. Да, договариваться сложно, уходящий 
> корнями в прошлое SIGPWR, выглядит более знакомым и поэтому привлекательным.
Опять-же - ты придумал init.

Ответить