LinuxКак сделать

Что такое «уровни запуска» в Linux?

image

Когда система Linux загружается, она вводит уровень запуска по умолчанию и запускает сценарии запуска, связанные с этим уровнем запуска. Вы также можете переключаться между уровнями выполнения — например, есть уровень запуска, предназначенный для операций восстановления и обслуживания.

Традиционно в Linux использовались сценарии инициализации в стиле System V — в то время как новые системы инициализации в конечном итоге устареют на традиционных уровнях выполнения, их еще нет. Например, система Upstart в Ubuntu по-прежнему использует традиционные сценарии в стиле System V.

Что такое уровень запуска?

Когда система Linux загружается, она запускает процессы init . init отвечает за запуск других процессов в системе. Например, когда вы запускаете компьютер с Linux, ядро ​​запускает init, а init выполняет сценарии запуска, чтобы инициализировать ваше оборудование, запустить сеть, запустить графический рабочий стол.

Однако не существует только одного набора сценариев запуска, которые выполняет init. Существует несколько уровней запуска со своими собственными сценариями запуска — например, один уровень запуска может запустить сеть и запустить графический рабочий стол, в то время как другой уровень запуска может оставить сеть отключенной и пропустить графический рабочий стол. Это означает, что вы можете перейти из «режима графического рабочего стола» в «режим текстовой консоли без подключения к сети» с помощью одной команды без ручного запуска и остановки различных служб.

В частности, init запускает сценарии, расположенные в определенном каталоге, соответствующем уровню запуска. Например, когда вы вводите уровень запуска 3 в Ubuntu, init запускает сценарии, расположенные в каталоге /etc/rc3.d.

image

По крайней мере, так работает традиционная система инициализации System V — дистрибутивы Linux начинают заменять старую систему инициализации System V. В то время как Ubuntu Upstart в настоящее время поддерживает совместимость со сценариями инициализации SysV, в будущем это, вероятно, изменится.

Уровни запуска

Некоторые уровни выполнения являются стандартными между дистрибутивами Linux, в то время как некоторые уровни выполнения варьируются от распределения к распределению.

Следующие уровни выполнения являются стандартными:

  • 0 — остановка (выключение системы.)
  • 1 — однопользовательский режим (система загружается в режим суперпользователя без запуска демонов или работы в сети. Идеально подходит для загрузки в среду восстановления или диагностики.)
  • 6 — перезагрузка

Уровни запуска 2-5 варьируются в зависимости от распределения. Например, в Ubuntu и Debian уровни выполнения 2-5 одинаковы и предоставляют полный многопользовательский режим с сетевым подключением и графическим входом в систему. В Fedora и Red Hat уровень запуска 2 обеспечивает многопользовательский режим без подключения к сети (только для входа в консоль), уровень запуска 3 обеспечивает многопользовательский режим работы в сети (только для входа в консоль), уровень запуска 4 не используется, а уровень запуска 5 обеспечивает многопользовательский режим с сетевой и графический вход.

Переключение на другой уровень выполнения

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

sudo telinit #

Замените # на номер уровня запуска, на который вы хотите переключиться. Опустите sudo и выполните команду от имени пользователя root, если вы используете дистрибутив, который не использует sudo.

image

Загрузка непосредственно на определенный уровень запуска

Вы можете выбрать уровень запуска для загрузки из загрузчика — например, Grub. В начале процесса загрузки нажмите клавишу, чтобы получить доступ к Grub, выберите загрузочную запись и нажмите e, чтобы отредактировать ее.

sshot-1

Вы можете добавить single в конец строки linux, чтобы ввести однопользовательский уровень запуска (runlevel 1). (Нажмите Ctrl + x для загрузки после.) Это то же самое, что опция режима восстановления в Grub.

image

Традиционно, вы можете указать число в качестве параметра ядра и загрузиться с этим уровнем запуска — например, используя 3 вместо одиночного для загрузки до уровня запуска 3. Однако это не работает в последних версиях Ubuntu — Upstart, кажется, не позволяет этого. Точно так же, как вы измените уровень запуска по умолчанию, будет зависеть от вашего дистрибутива.


Хотя демон Upstart в Ubuntu по-прежнему эмулирует систему инициализации SystemV, большая часть этой информации изменится в будущем. Например, Upstart основан на событиях — он может останавливать и запускать службы при возникновении событий (например, служба может запускаться, когда к устройству подключено аппаратное устройство, и останавливаться при удалении устройства.) У Fedora также есть собственный преемник. инициировать, systemd.

Похожие посты
Как сделать

Как получить возмещение за покупки в iTunes или App Store

Как сделать

Поверхностное перо не работает? Вот как это исправить

Как сделать

Как настроить и использовать Fire TV Recast

Как сделать

Как изменить рингтон по умолчанию на вашем iPhone