Существуют ли какие-нибудь заготовки для создания кроссдистрибутивного init-скрипта?
Хотелось бы сделать нормальную инициализацию своего демона под *nix так, чтобы реализация не зависела от типа системы запуска, используемой в дистрибутиве. Есть ли заготовки/наборы для такого?
А этим не мейнтейнеры дистрибутивов должны заниматься? systemd и upstart, конечно, покроют подавляющее число дистрибутивов, но не все. Как-то не правильно универсализовать такие вещи, имхо. Особенно, если есть сложные зависимости от других демонов.
плюсую именно этот вариант + upstart-unit для совместимости с Ubuntu. Это решение покроет 90% линуксовых дистрибутивов (убунту, федора, магея, опенсусь, арч и прочая-прочая), а слакварщики сами всё себе напишут, думаю.
Гайды смотрел, в гугле тоже не забанили. Дело в том, что хочется init-скрипт, корректно работающий и в Debian и в RedHat и в OpenSUSE.
Начав писать свою реализацию (на sh), понял, что в принципе такая вещь реализуема, но объём работ больше, чем хотелось бы. Подумал, что может быть где-то уже лежит готовый шаблон скрипта.
Ничего конкретного посоветовать не могу, но если здесь ничего не ответят, я бы взял пакеты одного и того же софта для разных дистров и сравнил скрипты (так же поискал бы в исходниках этих пакетов эти скрипты). Думаю можно будет понять как они их делали.
Начал именно с этого. В результате в коде появился блок switch-case с определением вида init-системы. Только я один вряд-ли смогу покрыть их все и есть риск неумеренного роста списка таких систем.