Runlevels

Allikas: Kuutõrvaja

Sissejuhatus

OS Linux'i nagu vist igasuguse teise OS'i töö mõistmiseks on vaja kindlasti aru saada mida ja kuidas OS käivitamisel teeb või teha võiks. Järgneb jutustus sellest mis toimub, millised faile loetakse ja programme (sh. nn. scripte) täidetakse peale arvuti voolu alla lülitamist kuni selle ajani mil kasutajal on võimalik end nö. sisse logida. Kirjeldus eeldab, et üles bootimine toimub normaalselt; see eeldab, et viimati tehti korralikult 'shutdown'.

RunLevels

Linux võib peale voolu sisselülitamist jõuda välja erinevatesse seisudesse. Need 'erinevad seisud' erinevad üksteisest selle poolest

- millised programmid või daemonid ehk päkapikud-vaimud töötavad
- kas kasutajad saavad sisse logida
- millised failisüsteemid on külge monteeritud

Tavaliselt jõuab linux kokkuleppeliselt kolmandaks nimetatud runlevelisse ja kogu tegevus toimub selles.

Runlevelit on võimalik muuta: näiteks saab vajadusel kolmandast levelist minna esimesse ja sealt tagasi kolmandasse.

Nagu üteldud, iga RunLeveliga kaasneb teatud erinev tase süsteemi funktsionaalsust:

0: halt sellele tasemele minek teostab süsteemi töö peatamise (halt) (ilmselt ei saa 0'ndas levelis olles käske anda - reset või power nupp aitavad)

1: single user mode sellel taemel saab nagu nimi ütleb root toimetada aga kasutajaid sisse logida ei lubata.

...

6: reboot Minnes kuulendale runlevelile reeb süsteem reboodi.


Nagu näha (või ega väga ei ole tegelikult) on lugu selline, et kui süsteem läheb nt. kolmandale tasemele, siis see ei tähenda, nagu ta peaks läbima enne 0, 1, 2 taseme.

Olemas on veel nö. level S (Startup) mis läbitakse alati arvuti käivitmisel.

Et süsteem saaks minna mingisse levelisse peab ta eelnevalt täitma (st. käivitama teatud programmid, midagi ära tegema) teatud scriptid.

Seda millised scriptid kunas täita on kirjas failis /etc/inittab

See on selline püha fail kust kõikide pragrammide isa init peale kerneli laabimist vaatab mis edasi teha. Arvuti tööd juhib/kontrollib programm init (muuseas tema PID on alati 1). Ja init ei võta sõna enne kuni ta pole juhtunud ühte järgnevast:

- mõni tema enda poolt vahetult käivitatud programm pole otsa lõppend (nt. getty) ja kui on siis käivitad selle uuesti (kui see sünnib üle 10 korra 2 minuti jooksul, siis ta vaatab selle kui veale ja ei pööra sellele tähelepanu 5 minutit) - on signaal toite kadumisest (normaalselt tuleb see UPS'ilt) - käsuga telinit soovitakse vahetada runlevelit