debian 9 init.d и systemd

Расширение моего комментария до полного ответа.

Пакет salt-minionявляется частью программного обеспечения управления конфигурацией Salt. В документации по установке для Salt перечислены два способа получения пакетов, необходимых для Salt.

  1. Используйте официальный репозиторий SaltStack.
  2. Используйте поддерживаемый сообществом -репозиторий EPEL.

Официальный репозиторий содержит самые свежие пакеты с -по -, включая текущую версию Salt 2018.3. Репозиторий EPEL содержит гораздо более старую версию пакета — 2015.5.

Начиная с версии 2015.8, репозиторий EPEL больше не требуется для установки Salt в системах RHEL. Поэтому новые пакеты можно устанавливать исключительно из официального репозитория. Официальный репозиторий SaltStack для RHEL находится здесь .

Похоже, что репозиторий EPEL когда-то был заброшен из-за проблемы с зависимостями. -В установочном документе упоминается, что пакеты python-crypto-2.6.1и python-tornado-4.21не были доступны в EPEL. Эти пакеты теперь доступны как часть CentOS с версии 7.4.1708. python-crypto-2.6.1доступен как часть репозитория Extras, а python-tornado-4.21доступен как часть базового репозитория.

0
21.05.2019, 22:10
1 ответ

При запуске systemdили при запуске systemctl daemon-reloadsystemdзапускает программу systemd-sysv-generator, которая составит список /etc/init.dсценариев и сгенерирует для них соответствующие .serviceмодули, если только системный -собственный .serviceюнит для них уже существует.

Генератор будет интерпретировать любые блоки заголовков LSB в сценариях init.d. Они выглядят так:

### BEGIN INIT INFO
# Provides:          apache2
# Required-Start:    $local_fs $remote_fs $network $syslog $named
# Required-Stop:     $local_fs $remote_fs $network $syslog $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Apache2 web server
# Description:       Start the web server
#  This script will start the apache2 web server.
### END INIT INFO

Любые описанные зависимости (здесь$local_fs $remote_fs $network $syslog $named)будут переведены в соответствующие зависимости systemd. Поскольку не всегда существует простое сопоставление -и -между сценариями init.dи службами systemd, некоторые зависимости LSB, такие как $remote_fs, $network, $named, $portmapи $time, являются специально сопоставляется генератором с соответствующими модулями systemd .target.

Автоматически -генерируемые сервисы-оболочки просто запускают соответствующий init.dскрипт. Все скрипты-оболочки должны запускаться после systemd basic.target, как только это позволяют их зависимости. Это делает заголовки LSB довольно важными :, если вы полагаетесь на механизм генератора и ваш список зависимостей неполный, systemdвесьма вероятно, что ваш init.dскрипт попытается запустить слишком рано, прежде чем все, от чего он зависит готовы.

Также возможно, что некоторые упакованные службы имеют только один init.dскрипт, но два или более файлов системных служб (подумайте, например, о службах NFS ).В таких случаях пакет не будет полагаться на генератор, а вместо этого предоставит сценарий init.dи служебные файлы -с неперекрывающимися именами -. Пакет также предоставит символическую ссылку по адресу /lib/systemd/system/<name of init script>.service, указывающую на /dev/null. Это заставляет systemdрассматривать службу, автоматически сгенерированную из сценария инициализации, как постоянно замаскированную, и вместо этого собственные файлы модулей будут обрабатывать сервисный процесс (es ).

4
28.01.2020, 02:22

Теги

Похожие вопросы