Domovská » jak » Co jsou to Runlevels na Linuxu?

    Co jsou to Runlevels na Linuxu?

    Když systém Linux spustí, vstupuje do výchozí úrovně runlevel a spouští spouštěcí skripty spojené s danou úrovní runlevel. Můžete také přepínat mezi provozními úrovněmi - například je to úroveň řízení určená pro operace obnovy a údržby.

    Tradičně Linux používal init skripty ve stylu systému V - zatímco nové initové systémy nakonec zastarávají tradiční runlevels, dosud nebyly. Například systém Upstart Ubuntu stále používá tradiční skripty typu V.

    Co je to Runlevel?

    Když systém Linux spustí, spustí init procesů. Init je zodpovědný za spuštění dalších procesů v systému. Pokud například spustíte počítač s operačním systémem Linux, spustí jádro init a init spustí spouštěcí skripty pro inicializaci hardwaru, otevření sítě, spuštění grafické plochy.

    Neexistuje však pouze jedna sada spustitelných skriptů. Existuje několik úrovní spouštění s vlastními spouštěcími skripty - například jedna úroveň může vyvolat vytváření sítí a spouštět grafickou plochu, zatímco jiný runlevel může opustit síťování a vynechat grafickou plochu. To znamená, že můžete z "grafického desktopu" do "režimu textové konzoly bez síťování" s jediným příkazem bez ručního spuštění a zastavení různých služeb.

    Přesněji řečeno, init spouští skripty umístěné v určitém adresáři, které odpovídají úrovně běhu. Například při zadání úrovně 3 na Ubuntu, init spustí skripty umístěné v adresáři /etc/rc3.d.

    Přinejmenším to funguje s tradičním systémem System V init - distribuce Linuxu začínají nahradit starý systém System V init. Zatímco Ubuntu's Upstart v současné době udržuje kompatibilitu se skripty SysV init, pravděpodobně se to v budoucnu změní.

    Runlevels

    Některé runlevely jsou standardní mezi distribucemi Linuxu, zatímco některé runlevels se liší od distribuce k distribuci.

    Následující úrovně běhu jsou standardní:

    • 0 - Stůj (Vypne systém.)
    • 1 - Režim jednoho uživatele (Systém se spustí do režimu superuser bez začátku démonů nebo sítí. Ideální pro zavádění do prostředí pro obnovu nebo diagnostiku.)
    • 6 - Restartujte počítač

    Úrovně chodu 2-5 se liší v závislosti na distribuci. Například na Ubuntu a Debianu jsou runlevels 2-5 stejné a poskytují plný multiuživatelský režim se sítí a grafickým přihlášením. Na platformách Fedora a Red Hat je runlevel 2 režimem pro více uživatelů bez síťového připojení (jen při přihlašování do konzoly), runlevel 3 poskytuje režim pro více uživatelů se sítí (pouze pro přihlášení do konzoly), runlevel 4 není použit a runlevel 5 poskytuje režim pro více uživatelů vytváření sítí a grafické přihlašování.

    Přechod na jinou úroveň chodu

    Chcete-li přepnout na jinou úroveň, zatímco systém již běží, použijte následující příkaz:

    sudo telinit #

    Nahraďte # číslem úrovně, kterou chcete přepnout. Vynechat sudo a spustit příkaz jako root, pokud používáte distribuci, která nepoužívá sudo.

    Zavedení přímo do konkrétní úrovně běhu

    Ze spouštěcího zavaděče - např. Grub, můžete vybrat spouštěcí úroveň. Na začátku bootovacího procesu stisknutím klávesy otevřete Grub, vyberte spouštěcí položku a stisknutím tlačítka e jej upravte.

    Můžeš přidat singl do konce roku linux line pro vstup do úrovně běhu pro jednoho uživatele (úroveň 1). (Stiskněte klávesu Ctrl + x pro zavedení.) Stejně jako možnost obnovení v Grub.

    Tradičně byste mohli zadat číslo jako parametr jádra a zavést do této úrovně - například pomocí 3 namísto singl boot to runlevel 3. Zdá se však, že to nefunguje na nejnovějších verzích Ubuntu - zdá se, že to není možné. Podobně změna výchozí úrovně běhu závisí na vaší distribuci.


    Zatímco démon Upstart Ubuntu stále emuluje systém SystemV init, hodně z těchto informací se v budoucnu změní. Například Upstart je založen na událostech - může se zastavit a spustit služby při událostech (například služba může začít, když je hardwarové zařízení připojeno k systému a zastaveno po odstranění zařízení.) Fedora má také vlastní nástupce k init, systemd.