Linux:Рецепты/Управление уровнями запуска с помощью systemd: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
 
(не показана 1 промежуточная версия этого же участника)
Строка 16: Строка 16:
</syntaxhighlight>
</syntaxhighlight>


{{Примечание1
{{Примечание1|
|1=Команда systemctl is-system-running сообщает текущее состояние системы, которое может быть одним из следующих:
Команда '''systemctl is-system-running''' сообщает текущее состояние системы, которое может быть одним из следующих:
* '''initializing''' — система еще не завершила запуск;
* '''initializing''' — система еще не завершила запуск;
* '''starting''' — система на заключительном этапе запуска;
* '''starting''' — система на заключительном этапе запуска;
* '''running''' — система полностью работоспособна и все процессы запущены;
* '''running''' — система полностью работоспособна и все процессы запущены;
* '''degraded''' — система работоспособна, но один или несколько модулей systemd потерпели неудачу. Выполните '''systemctl &#124; grep failed''', чтобы увидеть, какие это модули;
* '''degraded''' — система работоспособна, но один или несколько модулей [[systemd]] потерпели неудачу. Выполните '''systemctl &#124; grep failed''', чтобы увидеть, какие это модули;
* '''maintenance''' — система загружена в аварийном (emergency) или восстановительном (rescue) режиме;
* '''maintenance''' — система загружена в аварийном (emergency) или восстановительном (rescue) режиме;
* '''stopping''' — systemd останавливается;
* '''stopping''' — systemd останавливается;
* '''offline''' — systemd не запущена;
* '''offline''' — systemd не запущена;
* '''unknown''' — существует проблема, не позволяющая systemd определить текущее состояние.
* '''unknown''' — существует проблема, не позволяющая [[systemd]] определить текущее состояние.
}}
}}



Текущая версия от 00:29, 11 сентября 2023

Проверка/Оформление/Редактирование: Мякишев Е.А.


Управление уровнями запуска с помощью systemd

Проблема

Выполнить перезагрузку системы с состоянием по выбору.

Решение

Проверим, работает ли система, и узнаем её состояние:

systemctl is-system-running
Примечание

Команда systemctl is-system-running сообщает текущее состояние системы, которое может быть одним из следующих:

  • initializing — система еще не завершила запуск;
  • starting — система на заключительном этапе запуска;
  • running — система полностью работоспособна и все процессы запущены;
  • degraded — система работоспособна, но один или несколько модулей systemd потерпели неудачу. Выполните systemctl | grep failed, чтобы увидеть, какие это модули;
  • maintenance — система загружена в аварийном (emergency) или восстановительном (rescue) режиме;
  • stopping — systemd останавливается;
  • offline — systemd не запущена;
  • unknown — существует проблема, не позволяющая systemd определить текущее состояние.

Текущую цель по умолчанию:

systemctl get-default

Текущий уровень запуска:

runlevel

Перезагрузить систему в режиме восстановления:

sudo systemctl rescue

Перезагрузить систему в аварийном режиме:

sudo systemctl emergency
Примечание

Команда systemctl emergency — это особая аварийная цель, более ограниченная,чем режим восстановления rescue: в этом режиме не запускаются службы, не монтируются файловые системы, кроме корневой, нет сети и вход может выполнить только пользователь root. Это самая минимальная работающая конфигурация системы, предназначенная для устранения проблем. Варианты загрузки в аварийном и восстановительном режимах доступны в меню загрузчика GRUB2.

Перезагрузить систему в режиме по умолчанию:

sudo systemctl reboot

Перезагрузить в другом режиме без изменения режима по умолчанию:

sudo systemctl isolate multi-user.target

Установить уровень запуска по умолчанию:

sudo systemctl set-default multi-user.target

Список имеющихся файлов, определяющих уровни запуска:

ls -l /lib/systemd/system/runlevel*

Список зависимостей для выбранного уровня запуска:

systemctl list-dependencies graphical.target

См.также

Внешние ссылки