Домашня » як » Що таке «Рівні виконання» у Linux?

    Що таке «Рівні виконання» у Linux?

    Коли система Linux завантажується, вона вводить свій рівень за замовчуванням і запускає сценарії запуску, пов'язані з цим рівнем запуску. Ви також можете перемикатися між рівнями виконання - наприклад, є рівень, призначений для операцій відновлення та технічного обслуговування.

    Традиційно Linux використовував сценарії init у стилі V - у той час як нові системи init в кінцевому підсумку застаріли традиційними рівнями виконання. Наприклад, система Ubuntu Upstart все ще використовує традиційні сценарії System V.

    Що таке Runlevel?

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

    Однак, не виконується тільки один набір скриптів запуску. Існує декілька рівнів запуску з власними сценаріями запуску - наприклад, один рівень запуску може викликати мережу та запустити графічний робочий стіл, а інший рівень запуску може вимкнути мережу та пропустити графічний робочий стіл. Це означає, що ви можете перейти з "графічного режиму робочого столу" до "текстового консольного режиму без мереж" за допомогою однієї команди, без ручного запуску та зупинки різних служб.

    Більш конкретно, init запускає скрипти, розташовані в певному каталозі, що відповідає рівню виконання. Наприклад, коли ви вводите рівень 3 на Ubuntu, init запускає скрипти, розташовані в каталозі /etc/rc3.d.

    Принаймні, таким чином він працює з традиційною системою Init System V - дистрибутиви Linux починають замінювати стару систему Init System V. Хоча Upstart Ubuntu в даний час підтримує сумісність з init скриптами SysV, це може змінитися в майбутньому.

    Рівні виконання

    Деякі рівні запуску є стандартними для дистрибутивів Linux, в той час як деякі рівні виконання варіюються від розподілу до дистрибутиву.

    Наступні рівні запуску стандартні:

    • 0 - Припинення (Вимикає систему.)
    • 1 - Режим одного користувача (Система завантажується в режим суперкористувача без запуску демонів або мереж. Ідеально підходить для завантаження в середовище відновлення або діагностики.)
    • 6 - Перезавантаження

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

    Перехід на інший рівень

    Щоб перейти до іншого рівня запуску, коли система вже запущена, виконайте таку команду:

    sudo telinit #

    Замініть # на номер рівня виконання, на який потрібно перейти. Зніміть sudo і запустіть команду як root, якщо ви працюєте з дистрибутивом, який не використовує sudo.

    Завантаження безпосередньо на певний рівень

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

    Можна додати одномісний до кінця linux рядок для введення одного користувальницького рівня виконання (рівень 1). (Натисніть Ctrl + x для завантаження після.) Це те ж саме, що і режим відновлення в Grub.

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


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