Поиск по сайту:

Как изменить уровни запуска (цели) в SystemD


Systemd — это современная система инициализации для Linux: менеджер системы и служб, совместимый с популярной системой инициализации SysV и сценариями инициализации LSB. Он был предназначен для устранения недостатков инициализации SysV, описанных в следующей статье.

  1. История «init» и «systemd»: почему «init» нужно было заменить на «systemd» в Linux

В Unix-подобных системах, таких как Linux, текущее рабочее состояние операционной системы называется уровнем выполненияl; он определяет, какие системные службы запущены. В популярных системах инициализации, таких как SysV, уровни выполнения обозначаются числами. Однако в systemd уровни выполнения называются целями.

Рекомендуется к прочтению: Управление процессом запуска системы и службами (SysVinit, Systemd и Upstart)

В этой статье мы объясним, как изменить уровни запуска (цели) с помощью systemd. Прежде чем двигаться дальше, давайте кратко рассмотрим взаимосвязь между числами уровней выполнения и целями.

  • Уровень выполнения 0 соответствует poweroff.targetrunlevel0.target является символической ссылкой на poweroff.target) ).
  • Уровень выполнения 1 соответствует rescue.targetrunlevel1.target является символической ссылкой на rescue.target) ).
  • Уровень выполнения 3 эмулируется multi-user.targetrunlevel3.target является символической ссылкой на multi-user.target ).
  • Уровень выполнения 5 эмулируется graphical.targetrunlevel5.target является символической ссылкой на graphical.target) ).
  • Уровень выполнения 6 эмулируется с помощью reboot.targetrunlevel6.target является символической ссылкой на reboot.target) ).
  • Emergency соответствует emergency.target.

Как просмотреть текущую цель (уровень выполнения) в Systemd

Когда система загружается, systemd по умолчанию активирует модуль default.target. Его основная работа — активировать сервисы и другие модули, подтягивая их через зависимости.

Чтобы просмотреть цель по умолчанию, введите команду ниже.

#systemctl get-default 

graphical.target

Чтобы установить цель по умолчанию, выполните команду ниже.

systemctl set-default multi-user.target  

Как изменить цель (уровень запуска) в Systemd

Пока система работает, вы можете переключить цель (уровень запуска), что означает, что теперь в системе будут работать только службы, а также модули, определенные в этой цели.

Чтобы переключиться на уровень запуска 3, выполните следующую команду.

systemctl isolate multi-user.target 

Чтобы изменить систему на уровень запуска 5, введите команду ниже.

systemctl isolate graphical.target

Для получения дополнительной информации о systemd прочитайте эти полезные статьи:

  1. Как управлять службами и модулями Systemd с помощью Systemctl в Linux
  2. Как создать и запустить новые сервисные модули в Systemd с помощью сценария оболочки
  3. Управление процессом запуска системы и службами (SysVinit, Systemd и Upstart)
  4. Управление сообщениями журнала в Systemd с помощью Journalctl [Подробное руководство]

В этом руководстве мы показали, как изменить уровни запуска (цели) с помощью systemd. Используйте форму комментариев ниже, чтобы отправить нам любые вопросы или мысли по поводу этой статьи.