1

Я не считаю, что systemctl isolate очень простой набор команд для запоминания.

Какова причина использования слова isolate для переключения между старшими, но что я нашел гораздо более удобными для пользователя, run levels?

1 ответ1

1

Я думал о том же самом. Из справочной страницы systemctl:

изолировать блок

Запустите модуль, указанный в командной строке, и его зависимости и остановите все остальные, если они не имеют IgnoreOnIsolate = yes (см. Systemd.unit (5)). Если дано имя устройства без расширения, предполагается расширение «.target».

Это похоже на изменение уровня выполнения в традиционной системе инициализации. Команда isolate немедленно остановит процессы, которые не включены в новом модуле, возможно, включая графическую среду или терминал, который вы используете в данный момент.

Обратите внимание, что это разрешено только на блоках, где AllowIsolate = включен. Смотрите systemd.unit (5) для подробностей.

Таким образом, слово "изолировать" означает запустить запрошенный модуль и убедиться, что больше ничего не работает (с несколькими исключениями, упомянутыми выше).

Поскольку уровни выполнения были заменены целями (которые представляют собой набор служб, которые вы хотите запустить в определенной ситуации, например, для multi-user или graphical использования), вы можете переключиться на "уровень запуска", запустив эквивалентная цель и остановка всего, что не является частью новой цели - используя isolate .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .