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

У меня есть некоторые службы в моей папке init.d, например, hdfs, zookeeper ,asticsearch, hbase и т. д.

Теперь я добавил все эти службы для запуска, выполнив команду update-rc.d 'service' defaults. Как мы знаем, hbase не может работать, если hdfs и zookeeper не запущены. Поэтому я хочу сначала запустить hdf, затем zookeeper и, наконец, hbase.

Как мне это сделать?

2
задан 5 April 2016 в 09:38

2 ответа

обновление-rc.d (8) включает или отключает сервисы, в то время как упорядочивание сервисов обрабатывается insserv (8) и может быть настроено путем редактирования заголовка LSB обслуживания и установки/добавления:

Required-Start: $all

В самых старых версиях, я могу сделать что-то вроде этого для определения порядка:

update-rc.d myservice start 95 2 3 4 5 . stop 70 0 1 6 .

, Но после Ubuntu 14, я попробовал эту (4.4.0-31-универсальную) Ubuntu 16.04:

update-rc.d myservice defaults 95 70

И не работает, всегда создает порядок, определенный в заголовке:

 sudo find /etc/ -name ???myservice | sort
/etc/rc0.d/K01myservice
/etc/rc1.d/K01myservice
/etc/rc2.d/S03myservice
/etc/rc3.d/S03myservice
/etc/rc4.d/S03myservice
/etc/rc5.d/S03myservice
/etc/rc6.d/K01myservice

Also al try:

update-rc.d myservice defaults any_text_wath_you_want lalala

Ands походит, игнорирует весь текст после "значений по умолчанию". Я donВґt знают то, что это делает, когда мой порядок установки, я не думаю, что заказывает ранее установленные службы.

0
ответ дан 5 April 2016 в 19:38
  • 1
    Это сосет... Я предполагаю, что должен ожидать 16.04.3 поддержки материала, который я использую. – Seitrox 14 August 2017 в 03:44

Можно сделать это update-rc.d 'service' defaults number, где число является целым числом и чем меньший порядковый номер, тем выше сервис в очереди т.е. это будет выполняться перед другими сервисами с большим порядковым номером.

вышеупомянутая команда уделит тому же первостепенное значение для запуска, а также уничтожения сервиса. Можно точно настроить его далее.

Поэтому, если у Вас есть сервис, который имеет много зависимостей, можно дать ему большой порядковый номер, чтобы гарантировать, что все его dependiencies загрузились, прежде чем это запустит себя.

0
ответ дан 5 April 2016 в 19:38
  • 1
    Я должен был установить DRI на true, в других отношениях определенные приложения с помощью OpenGL не будут работать. Вероятно, вызванный DRI, включаемым во время компиляции. Я все еще получаю прокрутку без слезы и воспроизведение видео, когда это включено с этими другими опциями, также включенными, все же. Сомнительный, почему это предлагается отключенное в ответе. – Lars Haugseth 26 July 2018 в 04:42

Другие вопросы по тегам:

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