Intereting Posts
Нельзя использовать ключ OpenPGP, экспортированный из GnuPG с SSH Почему я должен избегать циклов в оболочках? Просмотр сообщений системной консоли в графическом интерфейсе Подключение к машине, которая находится за университетским шлюзом Есть ли способ подавать звуковой сигнал, когда tail -F перестает получать новые результаты? «Ваше соединение не является приватным» в linux, но нормально в окнах В чем разница между сценарием sh и sh <script ssh игнорирует ssh-agent В чем разница между тем, чтобы nohup не добавлял «nohup.out» и явно перенаправлял его в файл? Как работает процесс установки linux Как заставить команду NIC приступить к загрузке в RHEL 7 Почему перехват системных вызовов дает разные результаты каждый раз в Linux / Android 2.6.29? Разрешено ли назначать один диапазон подчиненных идентификаторов двум различным пользователям? Macbook Pro Retina 2015 Проблемы с Wi-Fi на Кали Как скопировать папки с неприятными именами, используя функцию оболочки

Возможно ли написать портативные служебные скрипты для управления демоном?

Я (или один из моих коллег) должен написать один или несколько сценариев оболочки для управления выполнением демона. Нам нужно запустить демона, сказать, что он изящно закрыт и принудительно выключит. В принципе, это то, что традиционно использует сценарий в /etc/init.d .

Мы будем работать в Ubuntu. Возможно, мы захотим развернуть RedHat / CentOS и, возможно, AIX. Я хотел бы иметь возможность развертывать любой unix, потому что мне нравится делать вещи переносимо.

Итак, можно ли писать портативные служебные скрипты?

Я предполагаю, что могу написать переносимый сценарий оболочки Bourne, который работает как обычный скрипт init.d и принимает команды «start» и «stop» в качестве команд. Это будет работать в любом месте и будет предлагать естественный интерфейс, по крайней мере, в системах стиля Debian и RedHat. Подойдет ли он в другом месте? Является ли init.d универсальным? Есть ли какие-то подводные камни, на которые нужно следить?

Существуют ли какие-либо инструменты для генерации служебных скриптов в разных формах? Что-то, где я могу писать фрагменты сценария для запуска и остановки, и иметь инструмент для создания сценариев для различных платформ.

Существуют ли какие-либо альтернативы условным сценариям сценариев для платформы? Я встретил daemontools и runit ; являются ли эти альтернативы сценариям init.d? Они хороши? Что еще такого?

Есть ли в этом смысл?

Ot можно записать их таким образом, чтобы он не зависел от особенностей дистрибутива, но не все * nix запускают службы таким же образом. Я не уверен в AIX, но Solaris, например, даже не использует sysvinit, вместо этого использует smf.

CentOS / RHEL обычно использует /etc/rc.d/functions, чтобы помочь с общими функциями для сценария инициализации, тогда как Debian использует двоичный файл, называемый start-stop-daemon. Вероятно, это является причиной того, что сценарии инициализации часто не встречаются в пакетах upstream.

Лично я написал сценарий init для каждой поддерживаемой ОС, чтобы быть включенным в пакет этой ОС.