Napomena: Ovaj članak izvorno je objavljen na portalu Sistemac dana 29. prosinca 2011.
Kada govorimo o podjeli Linux distribucija, a vezano uz runlevele, možemo ih podijeliti na one koje koriste BSD-style ili SysV-style shemu za definiranje pojedinog runlevela. Razlike postoje i u daemonu koji se koristi za rad s runlevelima. Veliki broj distribucija koristi init daemon, no to nije jedini način za inicijalizaciju sustava. Tako primjerice Ubuntu koristi upstart, dok Fedora koristi systemd kao zadani način inicijalizacije sustava. Mi se u ovom članku nećemo baviti usporedbama različitih inicijalizacijskih sustava već ćemo pobliže opisati neke od karakteristika init daemona.
Samu inicijalizaciju operacijskog sustava definira daemon pod nazivom init koji se “podiže” nakon učitavanja jezgre (kernel) pa stoga najčešće ima PID (process id) 1. Pozivanje init daemona je zadnji korak kernel boot sekvence.

U ovom je slučaju vidljivo (init [3]) da se sustav nalazi u runlevelu 3 nakon što je podizanje sustava završilo.
Standardni runleveli
Kod većine Linux distribucija može se susresti sljedećih sedam runlevela:
| Runlevel | Opis |
|---|---|
| 0 | Halt the system |
| 1 | Single-user mode (for special administration) |
| 2 | Local Multiuser with Networking but without network service (like NFS) |
| 3 | Full Multiuser with Networking |
| 4 | Not Used |
| 5 | Full Multiuser with Networking and X Windows (GUI) |
| 6 | Reboot |
Runleveli od 7 do 9 također mogu postojati, ali nisu dokumentirani jer se ne koriste kod tradicionalnih Unix operacijskih sustava. Postoje još i dva dodatna runlevela — S i s — koji su prvenstveno namijenjeni upotrebi unutar skripti koje se izvršavaju po ulasku u runlevel 1.
Bitno je napomenuti da između različitih Linux distribucija može doći do odstupanja u pojedinom runlevelu u odnosu na gore navedeno. Ono što bi kod svih distribucija trebalo biti jednako jesu runlevel 0, 1 i 6.
Konfiguracijska datoteka /etc/inittab
Konfiguracijska datoteka koja određuje što se događa u kojem runlevelu je /etc/inittab. Između ostalog tu se određuje koji je zadani runlevel. Linux distribucija Slackware ima pretpostavljene (default) postavke kao što je prikazano na sljedećoj slici. Iz te je slike vidljivo je da je pretpostavljeni runlevel 3.

Da kojim slučajem unutar datoteke inittab nije navedena vrijednost varijable initdefault, prilikom podizanja sustava bilo bi potrebno ručno upisati u sistemsku konzolu koji runlevel želimo.
Vezano uz Slackware, bitno je napomenuti da se za razliku od nekih drugih Linux distribucija koje datoteke vezane uz init proces drže pohranjene u direktoriju /etc/init.d, kod Slackware distribucije one nalaze u mapi /etc/rc.d.
Inicijalizacijske skripte
Nakon što se prilikom podizanja sustava inicira pokretanje init daemona, on pokreće skriptu /etc/rc.d/rc.S. Ta skripta je zadužena za omogućavanje virtualne memorije, inicijalizaciju uređaja, učitavanje modula u kernel i sl. Nakon te početne inicijalizacije sustav ide u neki od runlevela (ovisno o konfiguraciji). Svaki od runlevela prilikom svoje inicijalizacije pokreće određene skripte.


Prebacivanje između runlevela
Pomoću init daemona možemo se prebaciti u pojedini runlevel. Da bismo se prebacili u pojedini runlevel, potrebno je zadati naredbu init iza koje se navede broj runlevela:
init 1

Prikaz sadašnjeg i prethodnog runlevela mogu se dobiti pomoću dvije naredbe:
runlevel
who -r

Kod naredbe runlevel prva brojka označava prethodni, dok druga označava trenutni runlevel.