Принудительно запускать сервис перед другим на Solaris smf

Я пытаюсь настроить другие службы так, чтобы они зависели от моих (чтобы заставить мой запускаться первым) с использованием системы Solaris SMF.

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

По этой ссылке в разделе "Зависимости" заявлено, что это возможно, но я не мог понять, как это сделать.

Спасибо

1 ответ

Решение

Вы делаете это в манифесте с dependent XML-элемент в отличие от dependency элемент.

Предположим, вы хотите, чтобы "serviceA" зависел от вашего нового необычного сервиса, называемого "serviceMine", но вы не можете изменить манифест для "serviceA".

Тогда в манифесте для "serviceMine" вы бы сделали что-то вроде

<dependent  name='serviceMine_dependency'
             grouping='require_all'
             type='service'
             restart_on='restart'>
  <service_fmri value='svc:/application/foo/serviceA' />
</dependent>

Документация

Когда дела идут жестко, я иногда прибегаю к документации, которая есть в DTD для манифестов SMF. Вы можете прочитать это по адресу: /usr/share/lib/xml/dtd/service_bundle.dtd.1 в вашей локальной системе. Это довольно полезно в качестве ссылки.

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