6Jul

Co jsou to "Runlevels" na Linuxu?

click fraud protection

Když systém Linux spustí, přejde do výchozí úrovně runlevel a spustí spouštěcí skripty spojené s danou ú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ě používá Linux init skripty ve stylu systému V - zatímco nové initové systémy nakonec zastarávají tradiční runlevely, dosud nebyly. Například Ubuntu systém Upstart stále používá tradiční skripty ve stylu System V.

Co je to Runlevel?

Když systém Linux spustí, spustí procesy init .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.

Však není spuštěna pouze jedna sada spouštěcí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 z "grafického desktopu" do "režimu textové konzoly bez síťového připojení" s jediným příkazem bez ručního spuštění a zastavení různých služeb.

instagram viewer

Přesněji řečeno, init spustí skripty umístěné v konkrétním adresáři, které odpovídají úrovně běhu. Když například vstoupíte na úroveň 3 v 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í běžné úrovně jsou standardní:

  • 0 - zastavení
  • 1 -
  • Jednoduchý režim ( 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 - Restart

Roztečové stupně 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ň běhu

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

sudo telinit #

Nahradit # číslem úrovně, kterou chcete přepnout. Omit sudo a spusťte příkaz jako root, pokud používáte distribuci, která nepoužívá sudo.

Přímé spouštění na konkrétní úroveň

Můžete vybrat spouštěcí úroveň, která se má spustit z zaváděcího zařízení - např. Grub. 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ůžete přidat na konec linky linky pro zadání úrovně runlevel pro jednotlivého uživatele( úroveň 1).(Stiskněte klávesu Ctrl + x pro zavedení.) Stejně jako možnost obnovení v Grub.

Tradičně můžete zadat číslo jako parametr jádra a spustit na danou úroveň - například pomocí 3 namísto jediného zavést na úroveň runlevel 3. Zdá se však, že to nefunguje na nejnovějších verzíchUbuntu - Upstart to zřejmě neumožňuje. 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 zastavit a spouštět služby při událostech( například služba by se mohla spustit, když je hardwarové zařízení připojeno k systému a zastaveno po odstranění zařízení.) Fedora má také vlastní nástupcek init, systemd.