Выбор ответа Middle systemd и журналы обновлено

Requires без After

Вопрос

В юните приложения есть Requires=postgresql.service, но нет After=. Что произойдёт при загрузке?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Юниты стартуют параллельно, база может опоздать. Requires/Wants задают, что запустить вместе, а порядок задают только After/Before.

Варианты ответа

  1. Приложение стартует строго после PostgreSQL
  2. PostgreSQL не будет запущен без Wants=
  3. Юниты стартуют параллельно, база может опоздатьправильный ответ
  4. systemd откажется загружать юнит без After=

Разбор

Requires/Wants задают, что запустить вместе, а порядок задают только After/Before. Без After=postgresql.service юниты стартуют параллельно. Нужны обе директивы. Юнит загрузится, а PostgreSQL будет запущен, потому что он требуется.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.