Awọn imọ jinlẹ ti “Ubuntu Linux” Eto - Ṣe A Wo Eyi?


LINUX bi a ṣe mọ ni ekuro kii ṣe ẹrọ iṣiṣẹ, awọn ọkọ oju omi pẹlu ọpọlọpọ awọn pinpin bi: Debian, Fedora, Ubuntu ati bẹbẹ lọ ati ọpọlọpọ diẹ sii. Ubuntu OS ti dagbasoke nipasẹ Mark Shuttleworth jẹ olokiki olokiki ati lilo ni ibigbogbo nipasẹ ọpọlọpọ. Pẹlupẹlu, jijẹ ọfẹ ati Ṣiṣii Orisun ẹya tuntun rẹ jẹ idasilẹ lododun eyiti o jẹ idasi nipasẹ ẹgbẹẹgbẹrun awọn olupilẹṣẹ ti o ṣe alabapin si idagbasoke rẹ. Ṣugbọn, bawo ni o ṣe n ṣiṣẹ? Kini gbogbo awọn ilana, atokọ ti awọn iṣẹlẹ jẹ ki o ṣiṣẹ ati pe kini pataki ti awọn ilana wọnyi?

Nkan yii yoo mu ọ jin diẹ si inu ti Ubuntu OS ti o nifẹ pupọ ati pe yoo ṣe iranlọwọ fun alakobere ni oye pipe ti iṣiṣẹ rẹ.

Dubulẹ Eto naa

Linux ni ilana kan fun sisẹ rẹ, ọkọọkan ati gbogbo iṣẹ eto pẹlu iṣakoso agbara, bata bata, mimu jamba eto jẹ ilana eyiti o ni faili iṣeto ni\"/etc/init " ti o ṣe apejuwe iṣẹlẹ lori eyiti yoo ṣe ati iṣẹlẹ ti o baamu lori eyiti yoo da ipaniyan rẹ duro, pẹlu pẹlu pe o tun ṣetọju awọn faili iṣeto miiran rẹ ti o ṣe apejuwe ihuwasi akoko ṣiṣe rẹ ninu ilana\"/etc/ ṣiṣe eto iṣẹlẹ ti o ṣakoso ọkan.

Ti awọn iṣẹlẹ ba wa ti ipilẹṣẹ lẹhinna ẹnikan yẹ ki o wa nibẹ lati mu wọn ki o ṣiṣẹ wọn ?? O dara ni kedere, oludari ni ilana akọkọ wa ti o wa bi obi ti gbogbo awọn ilana pẹlu id ilana 1 ie init . Eyi ni ilana ti o bẹrẹ pẹlu eto bẹrẹ ati ko da. Ilana yii nikan ku ni kete ti eto ba ni agbara si isalẹ nitori ko si ilana ti o jẹ obi ti init.

Awọn ẹya ti tẹlẹ Ubuntu ṣaaju 6.10 pẹlu aṣa atijọ sysvinit eyiti o lo lati ṣiṣẹ awọn iwe afọwọkọ ni\" /etc/rcx.d ”itọsọna lori gbogbo ibẹrẹ ati tiipa eto. Ṣugbọn, lẹhin eyi eto upstart rọpo aṣa atijọ sysvinit eto, ṣugbọn tun pese ibamu sẹhin si rẹ.

Awọn ẹya Ubuntu tuntun ni eto ibẹrẹ yii, ṣugbọn lati igba itiranyan rẹ lati Ubuntu 6.10 o ti lọ ọpọlọpọ awọn atunyẹwo ẹya lọwọlọwọ ti o jẹ 1.13.2 bi ni Oṣu Kẹsan 4 Kẹsán 2014. Eto ibẹrẹ tuntun ni awọn ilana 2 init , ọkan fun awọn ilana eto ati omiiran ti o nṣakoso ibuwolu wọle lọwọlọwọ ni igba olumulo ati pe o wa titi di igba ti olumulo ba wọle, tun pe ni x-igba init .

Gbogbo eto ni a ti gbe kalẹ gẹgẹ bi ọkan ti iṣakoso, ti o ni ibatan ibatan baba-ọmọ jakejado agbara titi de agbara isalẹ eto naa.

Fun apẹẹrẹ : ibatan ibatan kekere laarin awọn ilana init mejeeji ni: init eto (1) -> oluṣakoso ifihan (aaye ekuro) -> oluṣakoso ifihan (aaye olumulo) -> init olumulo (tabi x- igba init).

Awọn faili iṣeto fun awọn ilana ti iṣakoso nipasẹ eto init ngbe ni\"/etc/init " ati fun awọn ti o ṣakoso nipasẹ igba init joko ni\"/usr/share/upstart (gẹgẹbi awọn ẹya ibẹrẹ lọwọlọwọ ti o wa loke 1.12 ) ati awọn faili iṣeto wọnyi jẹ bọtini si ọpọlọpọ awọn aṣiri ti a ko jade nipa awọn ilana bi a ti ṣalaye ninu nkan yii.

Gbigba diẹ sii jinlẹ si Igbimọ-ori

Ubuntu mọ awọn iru ilana meji:

  1. Awọn iṣẹ igba diẹ (tabi awọn iṣẹ iṣẹ-ati-ku).
  2. Awọn iṣẹ pipẹ ti pẹ (tabi awọn iṣẹ iduro-ati-ṣiṣẹ).

Awọn ipo-iṣe ti o ṣe lori eto jẹ nitori ibatan igbẹkẹle laarin awọn ilana eyiti a le loye nipa wiwo awọn faili iṣeto wọn. Jẹ ki a kọkọ bẹrẹ lati ibatan ipo iṣakoso ti o rọrun laarin awọn ilana ti o ṣe eto lati bata ati oye pataki ti ọkọọkan wọn.

Init ni ilana akọkọ lati bẹrẹ lori agbara lori eto naa ati pe o wa labẹ iṣẹ iṣẹ-ati-duro nitori ko ṣe pa rara ati pe akoko nikan ti a pa ohun ti o wa ni titan agbara ni isalẹ ie init nikan ku ati pe paapaa lẹẹkan fun igba kan ati pe eyi wa lori agbara isalẹ. Lori agbara soke, init ṣe ipilẹṣẹ iṣẹlẹ akọkọ lori eto ie iṣẹlẹ ibẹrẹ. Faili iṣeto kọọkan ni\"/etc/init " ni awọn ila meji ti o ṣalaye iṣẹlẹ ti o fa ki ilana bẹrẹ ati lati da. Awọn ila wọnyẹn jẹ bi a ti ṣe afihan ni nọmba ti o wa ni isalẹ:

Eyi jẹ faili iṣeto ti ilana kan failsafe-x ati pe awọn wọnyi bẹrẹ ati da lori awọn ipo ṣe apejuwe iṣẹlẹ eyiti ilana naa yoo bẹrẹ. Lori iran ti iṣẹlẹ ibẹrẹ nipasẹ ilana init awọn ilana wọnyẹn ti o ni ibẹrẹ bi ibẹrẹ wọn ni ipo ni a ṣe ni afiwe ati pe eyi nikan ṣalaye ipo-ọna, ati pe gbogbo awọn ilana ti o ṣiṣẹ lori ibẹrẹ jẹ awọn ọmọ init.

Awọn ilana ti o bẹrẹ lori ibẹrẹ ni a ṣe akojọ bi labẹ ati pe gbogbo wọn ni awọn iṣẹ ṣiṣe-ati-ku:

1 . orukọ igbalejo - Eyi jẹ ilana ti o kan sọ eto ti orukọ olupin rẹ ti a ṣalaye ninu/ati be be lo/faili orukọ ile-iṣẹ.

2 . kmod - Awọn ẹrù awọn modulu ekuro eyini ni gbogbo awọn awakọ lati/ati be be lo/faili awọn modulu.

3 . Mountall - Ilana yii n ṣẹda ọpọlọpọ awọn iṣẹlẹ ati pe o jẹ ojuse pataki fun sisọ gbogbo awọn eto faili lori bata pẹlu awọn eto faili agbegbe ati awọn eto faili latọna jijin.

Faili /proc tun jẹ igbesoke nipasẹ ilana yii pupọ ati lẹhin gbogbo iṣẹ iṣakojọpọ iṣẹlẹ ti o kẹhin ti ipilẹṣẹ nipasẹ rẹ jẹ iṣẹlẹ awọn faili eto eyiti o jẹ ki awọn ipo-ilọsiwaju tẹsiwaju siwaju.

4 . plymouth - Ilana yii n ṣiṣẹ ni ibẹrẹ Mountall ati pe o ni ẹri fun fifihan iboju dudu ti o rii lori ibẹrẹ eto ti o nfihan nkan bi isalẹ:

5 . plymouth-setan - Ṣe afihan pe plymouth ti wa ni oke.

Atẹle jẹ ilana akọkọ, awọn miiran ti o tun ṣiṣẹ lori ibẹrẹ pẹlu, bii udev-fallback-graphics , ati bẹbẹ lọ Pada si ipo-ori bata, ni ṣoki awọn iṣẹlẹ ati awọn ilana ti o tẹle wa ni atẹle ọkọọkan:

1 . init pẹlu iran ti iṣẹlẹ ibẹrẹ.

2 . Mountall iṣagbesori awọn eto-faili, plymouth (pẹlu ibẹrẹ Mountall) ti n ṣe ifihan iboju asesejade, ati awọn modulu ekuro ikojọpọ kmod.

3 . iṣẹlẹ agbegbe-faili iṣẹlẹ ti ipilẹṣẹ nipasẹ Mountall nfa dbus lati ṣiṣẹ. (Dbus ni ọkọ akero jakejado eto eyiti o ṣẹda iho ti o jẹ ki awọn ilana miiran ṣe ibasọrọ si ara wọn nipasẹ fifiranṣẹ awọn ifiranṣẹ si iho yii ati olugba ti ngbọ fun awọn ifiranṣẹ lori iho yii ati awọn awoṣe awọn ti a tumọ si).

4 . eto-faili agbegbe pẹlu dbus ti bẹrẹ ati iṣẹlẹ aimi-aimi ti o ṣẹlẹ nipasẹ nẹtiwọọki ilana ti o tun ṣiṣẹ lori iṣẹlẹ faili-faili ti agbegbe fa oluṣakoso nẹtiwọọki lati ṣiṣẹ.

5 . iṣẹlẹ foju-faili eto iṣẹlẹ ti ipilẹṣẹ nipasẹ Mountall fa ki udev ṣiṣẹ. (udev ni oluṣakoso ẹrọ fun linux ti n ṣakoso ifibọ-gbona ti awọn ẹrọ ati pe o ni ẹri fun ṣiṣẹda awọn faili inu/dev liana ati ṣiṣakoso wọn paapaa.) udev ṣẹda awọn faili fun àgbo, rom abbl. -filesystems ati pe o ti ṣe ipilẹṣẹ iṣẹlẹ-foju-faili siseto fifi sori ẹrọ ti/dev liana.

6 . udev n fa ibẹrẹ-udev-afara lati ṣiṣẹ ti o tọka pe nẹtiwọọki agbegbe wa ni oke. Lẹhinna lẹhin ti oke ti pari iṣagbesori eto faili ti o kẹhin ati ti ṣe ipilẹṣẹ iṣẹlẹ eto faili.

7 . iṣẹlẹ faili eto pẹlu iṣẹlẹ aimi-nẹtiwọọki ti n fa iṣẹ rc-sysinit lati ṣiṣẹ. Nibi, ibaramu sẹhin wa laarin sysvinit agbalagba ati ibẹrẹ…

9 . rc-sysinit n ṣiṣẹ aṣẹ telinit ti o sọ fun runlevel eto naa.

10 . Lẹhin ti o gba oju-iwe naa, init n ṣe awọn iwe afọwọkọ ti o bẹrẹ pẹlu 'S' tabi 'K' (awọn iṣẹ ibẹrẹ ti o ni 'S' ni ibẹrẹ orukọ wọn ati pipa awọn ti o ni 'K' ni ibẹrẹ orukọ wọn) ninu itọsọna naa/ati be be lo/rcX.d (ibiti 'X' jẹ ṣiṣan lọwọlọwọ).

Eto kekere ti awọn iṣẹlẹ fa eto lati bẹrẹ ni igbakọọkan ti o ba fi agbara le lori. Ati pe, iṣẹlẹ yii ti o fa awọn ilana jẹ ohun kan ti o ni ẹri fun ṣiṣẹda awọn ipo-ọna.

Bayi, afikun-si miiran si oke ni idi ti iṣẹlẹ. Ilana wo ni o fa iṣẹlẹ eyiti o tun ṣafihan ni faili iṣeto kanna kanna ti ilana bi a ṣe han ni isalẹ ninu awọn ila wọnyi:

Loke jẹ apakan ti faili iṣeto ti ilana Mountall ilana. Eyi fihan awọn iṣẹlẹ ti o njade. Orukọ iṣẹlẹ jẹ ọkan ti n ṣaṣeyọri ọrọ naa ' iṣẹlẹ '. Iṣẹlẹ le jẹ boya ọkan ti a ṣalaye ninu faili iṣeto bi o ti wa loke tabi o le jẹ orukọ ilana pẹlu prefix 'starting', 'Start', 'idekun' tabi 'duro'.

Nitorinaa, Nibi a ṣalaye awọn ofin meji:

  1. Generator Iṣẹlẹ : Ọkan ti o ni laini ‘emits xxx’ ninu faili iṣeto rẹ nibiti xxx jẹ orukọ iṣẹlẹ ti o ni tabi ti ipilẹṣẹ.
  2. Iṣẹlẹ apeja : Ọkan ti o ni ibẹrẹ rẹ tabi da ipo bii xxx tabi ti o bẹrẹ tabi da duro lori iṣẹlẹ ti o ṣẹda ọkan ninu awọn olupilẹṣẹ Iṣẹlẹ.

Nitorinaa, awọn ipo-atẹle tẹle ati nitorinaa igbẹkẹle laarin awọn ilana:

Event generator (parent) -> Event catcher (child)

Titi di isisiyi, o gbọdọ ti loye bawo ni awọn ipo-akoso ti obi-ọmọ igbẹkẹle laarin awọn ilana ṣe gbekalẹ nipasẹ iṣẹlẹ ti o nfa siseto nipasẹ ọna ẹrọ fifọ soke ti o rọrun.

Bayi, awọn ipo-iṣe yii kii ṣe ibatan kan-si-ọkan ti o ni obi kan ṣoṣo fun ọmọ kan. Ninu ipo-iṣe yii a le ni obi kan tabi diẹ sii fun ọmọ kan tabi awọn ilana kan ti o jẹ obi ti ọmọ ti o ju ọkan lọ. Bawo ni a ṣe pari eyi ?? Daradara idahun wa ni awọn faili iṣeto funrararẹ.

Awọn ila wọnyi ni a mu lati ilana - nẹtiwọọki ati nihin ni ibẹrẹ ipo ti o dabi ẹni pe o nira pupọ pupọ ti o ni ọpọlọpọ awọn iṣẹlẹ eyun - awọn ọna-faili agbegbe , udevtrigger , apoti , runlevel , nẹtiwọọki .

Awọn eto-faili agbegbe ti njade nipasẹ Mountall, udevtrigger ni orukọ iṣẹ, iṣẹlẹ eiyan ti njade nipasẹ wiwa-eiyan, iṣẹlẹ runlevel ti njade nipasẹ rc-sysinit, ati nẹtiwọọki jẹ iṣẹ lẹẹkansii.

Nitorinaa, ninu awọn ipo-ọna nẹtiwọọki ilana jẹ ọmọ ti Mountall, udevtrigger ati wiwa-eiyan nitori ko le tẹsiwaju iṣẹ rẹ (sisẹ ti ilana ni gbogbo awọn ila ti a ṣalaye labẹ iwe afọwọkọ tabi awọn apakan imisi ni faili iṣeto ti ilana) titi ti awọn ilana ti o wa loke ṣe n ṣe awọn iṣẹlẹ wọn.
Bakan naa, a le ni ilana kan ti o jẹ obi ti ọpọlọpọ ti iṣẹlẹ ti ipilẹṣẹ nipasẹ ilana kan ba ni ipamọ nipasẹ ọpọlọpọ.

Gẹgẹbi a ti ṣalaye tẹlẹ, a le ni boya igba diẹ (tabi iṣẹ-ati-ku awọn iṣẹ) tabi igba pipẹ (tabi duro-ati-iṣẹ ) awọn iṣẹ ṣugbọn bawo ni a ṣe le ṣe iyatọ laarin wọn ??

Awọn iṣẹ ti o ni awọn mejeeji ' bẹrẹ ' ati ' duro lori ' awọn ipo ti a ṣalaye ninu awọn faili iṣeto wọn ati pe o ni ọrọ kan ' iṣẹ-ṣiṣe ' ninu wọn faili iṣeto ni iṣẹ-ati-ku awọn iṣẹ ti o bẹrẹ lori iṣẹlẹ ti ipilẹṣẹ, ṣiṣẹ iwe afọwọkọ wọn tabi apakan exec (lakoko ṣiṣe, wọn dẹkun awọn iṣẹlẹ ti o fa wọn) ati ku leyin ti n ṣalaye awọn iṣẹlẹ wọnyẹn ti wọn dina .

Awọn iṣẹ wọnyẹn ti ko ni ipo ‘ duro lori ’ ninu faili iṣeto-ọrọ wọn ti pẹ tabi iṣẹ-ṣiṣe ati iṣẹ wọn ko ku. Bayi awọn iṣẹ iduro-ati-iṣẹ le ti wa ni classified siwaju bi:

  1. Awọn ti ko ni ipo atunṣe ati pe o le pa nipasẹ olumulo gbongbo.
  2. Awọn ti o ti tun ṣe atunṣe ipo ni faili iṣeto wọn ati nitorinaa wọn tun bẹrẹ lẹhin ti wọn pa ayafi ti iṣẹ wọn ba ti pari.

Ipari

Nitorinaa, ilana kọọkan ni LINUX gbarale diẹ ninu o ni diẹ ninu awọn ilana ti o gbẹkẹle rẹ ati pe ibatan yii jẹ pupọ lori ọpọlọpọ ati pe a ṣe apejuwe pẹlu eto ibẹrẹ pẹlu awọn alaye miiran ti ilana naa.