Nghọta miri emi nke sistemụ “Ubuntu Linux” anyị na-ahụ nke a?


LINUX dị ka anyị si mara bụ kernel ọ bụghị sistemụ arụmọrụ, ụgbọ mmiri nwere ọtụtụ nkesa dị ka: Debian, Fedora, Ubuntu wdg na ọtụtụ ndị ọzọ. Ubuntu OS nke Mark Shuttleworth mebere bụ nke ọtụtụ ndị ama ama yana ọtụtụ ebe. Ọzọkwa, ịbụ free na Open Source a na-ewepụta ụdị ọhụrụ ya kwa afọ nke ọtụtụ puku ndị mmepe na-enye aka na mmepe ya. Ma, olee otú o si arụ ọrụ? Kedu usoro niile, ndepụta nke ihe omume na-eme ka ọ rụọ ọrụ na gịnị bụ uru nke usoro ndị a?

Edemede a ga-edoba gị ntakịrị n'ime internals nke Ubuntu OSnke na-atọ ụtọ nke ga-enyere onye novice aka ịghọta nke ọma ọrụ ya.

Debe sistemụ ahụ

Linux nwere usoro maka ịrụ ọrụ ya, nke ọ bụla na ọrụ sistemụ gụnyere njikwa ike, buut elu, njikwa okuku sistemu bụ usoro nwere faịlụ nhazi na \/etc/init nke na-akọwa ihe omume na nke ọ ga-eme na ihe omume kwekọrọ na nke ọ ga-akwụsị ogbugbu ya, yana nke ahụ ọ na-edobe faịlụ nhazi ya ndị ọzọ na-akọwa àgwà ya na-agba ọsọ na usoro \/etc/ ndekọ, si otú ahụ. na-eme ka usoro ahụ bụrụ ihe omume chụpụrụ.

Ọ bụrụ na enwere mmemme emepụtara mgbe ahụ onye kwesịrị ịnọ ebe ahụ ijide ha wee gbuo ha? N'ụzọ doro anya, onye njikwa bụ isi usoro anyị nke dị dị ka nne na nna nke usoro niile nwere id usoro 1 ya bụ init. Nke a bụ usoro na-amalite site na ịmalite usoro ahụ na-akwụsịghị. Usoro a na-anwụ naanị mgbe sistemụ ahụ kwụsịrị n'ihi na ọ nweghị usoro ọ bụla bụ nne na nna nke init.

Ụdị nke mbụ nke Ubuntu tupu 6.10 gụnyere ụdị ochie sysvinit nke a na-eji eme scripts na \/etc/rcx.d ndekọ na mmalite na nkwụsị nke sistemu ọ bụla. Ma, mgbe nke ahụ gasịrị, usoro upstart nọchiri usoro ochie sysvinit, mana ka na-enye ndakọrịta azụ na ya.

Ụdị Ubuntu kacha ọhụrụ nwere usoro mmalite a, ma ebe ọ bụ na evolushọn ya sitere na Ubuntu 6.10 ọ agafeela ọtụtụ ntụgharị ugbu a bụ 1.13.2 dị ka na 4th Septemba 2014. Sistemụ mgbago ọhụrụ kachasị ọhụrụ. nwere usoro 2 init, otu maka usoro sistemu na ndị ọzọ na-ejikwa oge a na-abanye na oge onye ọrụ ma dị naanị ruo mgbe onye ọrụ abanye, nke a na-akpọkwa x-session init. .

Edebere usoro a niile dị ka usoro nhazi, nke nwere mmekọrịta nna na ụmụaka n'oge niile ruo n'ike nke usoro ahụ.

Dịka ọmụmaatụ: Obere mmekọrịta dị n'etiti ma usoro init bụ: system init (1) -> njikwa ihe ngosi(oghere kernel) -> njikwa ngosi(ohere onye ọrụ) -> onye ọrụ init (ma ọ bụ x- nnọkọ init).

Faịlụ nhazi maka usoro nke sistemu init jikwaa bi na \/etc/init yana maka ndị a na-ejikwa session init bi na \/usr/share/upstart (dị ka ụdịdị upstart dị ugbu a n'elu 1.12) na faịlụ nhazi ndị a bụ isi maka ọtụtụ ihe nzuzo achọpụtara gbasara usoro dịka akọwara n'isiokwu a.

Ịnwetakwuo omimi na ọkwa ọkwa

Ubuntu na-amata ụdị usoro abụọ:

  1. Ọrụ dị mkpụmkpụ (ma ọ bụ ọrụ-na-anwụ anwụ).
  2. Ọrụ dị ogologo ndụ (ma ọ bụ ọrụ ọnụnọ na ọrụ).

Ndị isi nke emere na sistemụ bụ n'ihi mmekọrịta ndabere n'etiti usoro nke anyị nwere ike ịghọta site na ịlele faịlụ nhazi ha. Ka anyị buru ụzọ malite site na njikọ nhazi dị mfe n'etiti usoro ndị na-eme ka usoro ahụ buo ma ghọta ihe ọ bụla n'ime ha pụtara.

Init bụ usoro mbụ ga-amalite na ike na sistemu ahụ wee kewaa ya n'okpuru ọrụ ọrụ na-anọ ebe ọ bụ na a naghị egbu ya, naanị oge a ga-egbu init na-amalite. ikwado ike ya bụ init na-anwụ naanị otu ugboro n'otu oge na nke ahụ na-agbada. Na ịgbanye ọkụ, init na-ewepụta mmemme izizi na sistemụ ya bụ mmemme mmalite. Faịlụ nhazi ọ bụla dị na \/etc/init nwere ahịrị abụọ na-akọwa ihe omume na-eme ka usoro ahụ malite na ịkwụsị. E gosipụtara ahịrị ndị ahụ na foto dị n'okpuru:

Nke a bụ faịlụ nhazi nke usoro failsafe-x na ndị a na-amalite ma kwụsị na ọnọdụ na-akọwa ihe omume nke usoro a ga-amalite. N'ọgbọ nke mmalite ihe omume site na ntinye usoro usoro ndị ahụ nwere mmalite dị ka mmalite ha na ọnọdụ na-eme n'otu oge na nke a na-akọwa nanị ndị isi, na usoro niile na-eme na mmalite bụ ụmụaka nke init.

Edepụtara usoro ndị na-amalite na mmalite dị ka n'okpuru ma ndị a niile bụ ọrụ na-anwụ anwụ:

1. aha nnabata - Nke a bụ usoro na-agwa sistemụ aha nnabata ya akọwapụtara na /etc/hostname file.

2. kmod - Na-eburu modul kernel ya bụ ndị ọkwọ ụgbọ ala niile site na faịlụ /etc/modules.

3. Ugwu - Usoro a na-ebute ọtụtụ ihe omume yana ọ bụ isi maka ịkwanye sistemụ faịlụ niile na buut gụnyere sistemụ faịlụ mpaghara na sistemụ faịlụ dịpụrụ adịpụ.

A na-etinyekwa faịlụ /proc site na usoro a, ma mgbe ọrụ nrịgo niile gachara, mmemme ikpeazụ sitere na ya bụ mmemme faịlụ sistemụ na-eme ka ndị isi na-aga n'ihu.

4. plymouth - Usoro a na-arụ ọrụ na ịmalite mountall na ọ bụ ọrụ maka igosi na ihuenyo ojii nke a na-ahụ na mmalite usoro na-egosi ihe dị n'okpuru:

5. plymouth dị njikere - Na-egosi na plymouth dị elu.

Ndị na-esonụ bụ isi usoro, ndị ọzọ na-emezu na mmalite na-agụnye, dị ka udev-fallback-graphics, wdg. Na-alọghachi na buut hierarchy, na nkenke, omume na usoro na-eso bụ dị ka n'usoro:

1. init yana mmemme mmalite mmalite.

2. mountall sistemu faịlụ na-arị elu, plymouth (yana mmalite mountall) na-egosipụta ihuenyo splash, yana modul kernel nke kmod.

3. local-filesystem mmemme nke mountall mepụtara na-eme ka dbus na-agba ọsọ. (Dbus bụ ụgbọ ala ozi zuru oke nke sistemu nke na-emepụta oghere na-eme ka usoro ndị ọzọ na-ekwurịta okwu site na izipu ozi na oghere a na onye nnata na-ege ntị maka ozi dị na oghere a ma na-enyocha ndị a chọrọ maka ya).

4. local-filesystem yana malite dbus na ihe omume static-network nke sitere na netwọk usoro nke na-agbakwa na mmemme mpaghara faịlụ na-eme ka onye njikwa netwọk na-agba ọsọ.

5. virtual-filesystem ihe omume nke mountall mepụtara na-eme ka udev na-agba ọsọ. (udev bụ onye njikwa ngwaọrụ maka linux nke na-ahụ maka ngwa-plugging nke ngwaọrụ na ọ bụ ya na-ahụ maka imepụta faịlụ na/dev ndekọ na ijikwa ha.) -filesystems wee mepụta mmemme mebere-filesystem nke na-egosi ịrịgo/dev ndekọ.

6. udev na-eme ka upstart-udev-bridge na-agba ọsọ nke na-egosi na netwọkụ mpaghara emela. Mgbe mountall mechara rịgoro sistemụ faịlụ ikpeazụ wee mepụta mmemme sistemụ faịlụ.

7. filesystem mmemme yana ihe omume-network up na-eme ka ọrụ rc-sysnit na-agba ọsọ. Ebe a, ndakọrịta azụ n'etiti sysvinit ochie na mmalite…

9. rc-sysinit na-eme iwu telinit nke na-agwa sistemụ runlevel.

10. Mgbe ị nwetasịrị runlevel, init na-eme ihe odide nke na-amalite na 'S' ma ọ bụ 'K' (malite ọrụ ndị nwere 'S' na mmalite nke aha ha ma gbuo ndị nwere 'K' na mmalite aha ha) na ndekọ/wdg/rcX.d (ebe 'X' bụ runlevel ugbu a).

Obere ihe omume a na-eme ka sistemụ malite oge ọ bụla ị gbanye ya. Na, ihe omume a na-akpalite usoro bụ naanị ihe na-ahụ maka ịmepụta ndị isi.

Ugbu a, mgbakwunye ọzọ n'elu bụ ihe kpatara ihe omume. Kedu usoro na-ebute ihe omume nke akọwapụtara n'otu faịlụ nhazi ahụ dị ka egosiri n'okpuru na ahịrị ndị a:

N'elu bụ akụkụ nke nhazi faịlụ nke usoro mountall. Nke a na-egosi mmemme ọ na-ewepụta. Aha mmemme bụ nke na-anọchi okwu 'mmemme'. Ihe omume nwere ike ịbụ nke akọwapụtara na faịlụ nhazi dị n'elu ma ọ bụ nwere ike ịbụ aha usoro yana prefix 'mbido' , 'malitere', 'kwụsị' ma ọ bụ 'kwụsị'.

N'ebe a, anyị na-akọwa okwu abụọ:

  1. Event Generator: Nke nwere ahịrị ‘emits xxx’ na faịlụ nhazi ya ebe xxx bụ aha mmemme o nwere ma ọ bụ wepụta.
  2. Ihe njide ihe omume: Nke nwere mmalite ya ma ọ bụ kwụsị ọnọdụ dị ka xxx ma ọ bụ malite ma ọ bụ kwụsị na mmemme ahụ mepụtara otu n'ime ihe na-emepụta mmemme.

Ya mere, ndị isi na-esote ya mere dabere n'etiti usoro:

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

Ruo ugbu a, ọ ga-abụrịrị na ị ghọtara ka usoro nne na nna na nwa na-adabere n'usoro usoro site na omume na-akpali akpali site na usoro buut dị mfe.

Ugbu a, ndị isi a abụghị mmekọrịta otu na otu nwere naanị otu nne ma ọ bụ nna maka otu nwa. N'ọkwa a, anyị nwere ike inwe otu nne na nna ma ọ bụ karịa maka otu nwa ma ọ bụ otu usoro ịbụ nne na nna nke ihe karịrị otu nwa. Kedu ka esi mezuo nke a?? Ọfọn azịza dabeere na nhazi faịlụ n'onwe ya.

A na-ewepụta ahịrị ndị a site na usoro - ịkparịta ụka n'Ịntanet na ebe a mmalite na ọnọdụ yiri ka ọ dị mgbagwoju anya mejupụtara ọtụtụ ihe omume ya bụ - local-filesystems, udevtrigger, container., runlevel, netwọk.

Sistemu-faịlụ mpaghara na-ebupụ site na mountall, udevtrigger bụ aha ọrụ, ihe omume akpa na-ewepụta site na nchọpụta akpa, mmemme runlevel ewepụtara site na rc-ssinit, na ịkparịta ụka n'Ịntanet bụ ọrụ ọzọ.

N'ihi ya, na a hierarchy usoro ịkparịta ụka n'Ịntanet bụ nwa mountall, udevtrigger na akpa-achọpụta dị ka ọ na-apụghị ịnọgide na-arụ ọrụ ya (arụ ọrụ nke usoro bụ niile ahịrị na-akọwa n'okpuru script ma ọ bụ exec ngalaba na nhazi faịlụ nke usoro). ruo mgbe usoro ndị dị n'elu na-emepụta ihe omume ha.
N'otu aka ahụ, anyị nwere ike inwe otu usoro ịbụ nne na nna nke ọtụtụ ma ọ bụrụ na ọtụtụ ndị na-echekwa ihe omume nke otu usoro mere.

Dịka akọwara na mbụ, anyị nwere ike ịnwe ma ọ bụ obere ndụ (ma ọ bụ ọrụ-na-anwụ ọrụ) ma ọ bụ ogologo ndụ (ma ọ bụ nọrọ na-arụ ọrụ) mana otu esi amata ọdịiche dị n'etiti. ha??

Ọrụ ndị nwere ma 'bido na' na 'kwụsị ọnọdụ ndị akọwapụtara na faịlụ nhazi ha ma nwee okwu 'ọrụ' na ha. nhazi faịlụ bụ ọrụ-na-anwụ ọrụ na-amalite na ihe omume emepụtara, mebie script ma ọ bụ exec ngalaba (mgbe ha na-eme ihe, ha na-egbochi ihe ndị kpatara ya) wee nwụọ mgbe e mesịrị na-ahapụ ihe omume ndị ahụ ha gbochiri. .

Ọrụ ndị ahụ na-enweghị ọnọdụ 'kwụsị' na faịlụ nhazi ha dị ogologo ndụ ma ọ bụ stay-and-work ọrụ na ha anaghị anwụ anwụ. Ugbu a enwere ike kewaa ọrụ ọnụnọ na ọrụ dịka:

  1. Ndị na-enweghị ọnọdụ respawn na onye nwere ike igbu ya.
  2. Ndị nwere respawn ọnọdụ na faịlụ nhazi ha wee malitegharịa mgbe e gbuchara ha, ọ gwụla ma arụchara ọrụ ha.

Mmechi

Ya mere, usoro ọ bụla na LINUXdabere na ụfọdụ ma nwee usoro ụfọdụ dabere na ya na mmekọrịta a dị ọtụtụ na ọtụtụ ma akọwapụtara ya na usoro elu yana nkọwa ndị ọzọ nke usoro ahụ.