Co jsou to "Runlevels" na Linuxu?

Obsah:

Video: Co jsou to "Runlevels" na Linuxu?

Video: Co jsou to "Runlevels" na Linuxu?
Video: Jak správně nastavit monitor nebo notebook? | Ergonomie | 3.díl | Hlavně Prakticky 2024, Březen
Co jsou to "Runlevels" na Linuxu?
Co jsou to "Runlevels" na Linuxu?
Anonim
Když systém Linux spustí, přejde do výchozí úrovně runlevel a spustí spouštěcí skripty spojené s touto úrovní runlevel. Můžete také přepínat mezi provozními úrovněmi - například je zde provozní úroveň určená pro obnovu a údržbu.
Když systém Linux spustí, přejde do výchozí úrovně runlevel a spustí spouštěcí skripty spojené s touto úrovní runlevel. Můžete také přepínat mezi provozními úrovněmi - například je zde provozní úroveň určená pro obnovu a údržbu.

Tradičně Linux používal init skripty ve stylu systému V - zatímco nové initové systémy nakonec zastarávají tradiční runlevely, dosud nebyly. Například systém Ubuntu Upstart stále používá tradiční skripty ve stylu System 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, jádro spustí init a init spustí spouštěcí skripty pro inicializaci hardwaru, otevření sítě a 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 jeden runlevel může vyvolat vytváření sítí a spustit grafickou plochu, zatímco jiný runlevel může nechat síť zakázán a přeskočit grafickou plochu. To znamená, že můžete přenést z "grafického desktopu" na "textový konzolový režim bez síťování" jediným příkazem, aniž byste ručně spustili a zastavili různé služby.

Přesněji řečeno, init spouští skripty umístěné v konkrétní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.

Alespoň 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í.
Alespoň 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é runlevely 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

Úrovně chodu 2-5 se liší v závislosti na distribuci. Například na Ubuntu a Debianu, runlevels 2-5 jsou stejné a poskytují plný multi-uživatelský režim se sítí a grafickým přihlášením. Na platformách Fedora a Red Hat poskytuje runlevel 2 režim 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 při přihlašování do konzoly), runlevel 4 je nepoužívaný a runlevel 5 poskytuje režim pro více uživatelů vytváření sítí a grafické přihlašování.

Přepnutí 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 číslo # číslem úrovně, kterou chcete přepnout. Omit sudo a spusťte příkaz jako root, pokud používáte distribuci, která nepoužívá sudo.

Image
Image

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.

Image
Image

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.

Image
Image

Tradičně můžete zadat číslo jako parametr jádra a spustit ho na danou úroveň - 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, když nastane událost (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.

Doporučuje: