Runlevel
Runlevel je v informatice označení režimu unixového systému, který implementuje styl System V init. Obvykle existuje sedm runlevelů číslovaných od nuly do šesti. Při spuštění systému je systém nastartován do vybraného runlevelu. Runlevely nejsou spouštěny sekvenčně, tzn. je vždy spuštěn buď runlevel 2 nebo 3 nebo 4, nikoliv 2 a poté 3 a následně 4.

„Runlevel“ definuje stav systému po startu. Jednotlivé runlevely jsou typicky přiřazeny jako:

 Single User Mode
 Multi User Mode bez síťových služeb
 Multi User Mode se síťovými službami
 vypnutí systému
 restart systému

Přesné nastavení těchto konfigurací se liší mezi jednotlivými operačními systémy a distribucemi Linuxu. Například runlevel 4 může být Multi User Mode, GUI, no-server na jedné distribuci a bez funkce na jiné. Nicméně, „runlevely“ běžně dodržují vzory popsané v tomto článku. Je dobré využít dokumentaci konkrétní distribuce.

V běžné praxi když počítač vejde do runlevelu nula, ukončí se a v runlevelu šest se restartuje. Ostatní runlevely (1–5) se liší podle připojených disků a spuštěných síťových služeb. Standardní runlevely jsou typicky 3, 4 nebo 5. Nižší runlevely jsou užitečné pro údržbu nebo opravy, protože obvykle neposkytují žádné síťové služby. Přesné detaily konfigurace runlevelů se liší mezi operačními systémy, ale také mezi administrátory systému.

Systém runlevelů nahradil tradiční /etc/rc skript používaný v systému Unixu verze 7.

Standardní runlevely

Linux 
Operační systém Linux může využít runlevely pomocí programů projektu sysvinit.  Po spuštění jádra Linuxu program init čte soubor /etc/inittab, kde je definováno chování pro každý runlevel.

Standardní specifikace Linuxu 
Konkrétní implementace nevyžadují poskytnutí těchto specifických runlevelů ani využití zde popsaných významů a mohou mapovat kterýkoli zde popsaný runlevel na jiný runlevel, který poskytuje ekvivalentní funkčnost.

Debian GNU/Linux 
Debian, stejně jako většina distribucí od něho odvozených, nerozlišuje mezi runlevely 2 až 5.

Ubuntu 
Ubuntu 6.10 (Edgy Eft) a novější obsahuje Upstart jako náhradu za tradiční init proces, ale stále používá tradiční init skripty a SysV-rc nástroje Upstartu pro spuštění většiny služeb a emulaci runlevelů.

Red Hat Linux a Fedora 
Red Hat Enterprise Linux a většina jeho odvozenin (např. CentOS) používá runlevely takto:

SUSE Linux 
SUSE používá podobné nastavení jako Red Hat Enterprise Linux:

Správci systému mohou modifikovat služby, které běží pod specifickým runlevelem použitím YaST | System Services (runlevel), insserv nebo chkconfig – jako na distribucích založených na Red Hat Enterprise Linuxu.

Slackware Linux 
Slackware Linux používá runlevel 1 pro údržbu jako na ostatních distribucích Linuxu. Runlevely 2, 3 a 5 identicky nastavené pro konzoli (se všemi službami aktivními), runlevel 4 přidává X Window System.

Gentoo Linux

Unix

System V Release 3 a 4

Solaris 
V systému Solaris verze 10, je SMF (Service Management Facility) je použit místo SVR4 runlevelů.
Ty jsou emulovány pro zachování kompatibility s původními startovacími skripty.

HP-UX

FreeBSD, OpenBSD a NetBSD 
Varianty BSD nevyužívají koncept runlevelů, ale v některých verzích init(8) poskytuje emulaci některých běžných runlevelů.

AIX 
Systém AIX nevyužívá System V R4 (SVR4) runlevel specifikaci s dostupnými runlevely od 0 do 9 a zároveň a až c. 0 a 1 jsou rezervované, 2 je standardní běžný Multi User Mode a runlevely 3 až 9 jsou definovatelné správcem systému. Runlevely od a do c dovolují vykonávání procesů v tomto runlevelu bez ukončení procesů spuštěných v jiném.

Reference

Související články 
Init
Upstart
Killall5
systemd

Externí odkazy 
Runlevel Definition – by The Linux Information Project (LINFO)
What are run levels? – LinuxQuestions.org

Unix