Tofauti kati ya bin, sbin, usr/bin, usr/sbin

Mnamo Novemba 30, 2010, David Collier aliandika:

Niligundua kuwa kwenye kisanduku chenye shughuli nyingi viungo vimegawanywa katika saraka hizi nne.
Kuna sheria rahisi ya kuamua ni saraka gani ya viungo inapaswa kulala ...
Kwa mfano, kill iko kwenye /bin, na killall iko kwenye /usr/bin... Sioni mantiki yoyote katika kitengo hiki.

Labda unajua kuwa Ken Thompson na Dennis Ritchie waliunda Unix kwenye PDP-7 mnamo 1969. Kwa hiyo, karibu 1971, waliboreshwa hadi PDP-11 na jozi ya diski za RK05 (megabytes 1,5 kila mmoja).

Wakati mfumo wa uendeshaji ulikua na haufai tena kwenye diski ya kwanza (ambayo mizizi ya FS ilikuwa iko), walihamia sehemu hadi ya pili, ambapo saraka za nyumbani zilipatikana (kwa hiyo, sehemu ya mlima iliitwa / usr - kutoka kwa neno. mtumiaji). Walinakili saraka zote muhimu za OS hapo (/bin, /sbin, /lib, /tmp ...) na kuweka faili kwenye diski mpya, kwa sababu ile ya zamani iliisha nafasi. Kisha walikuwa na diski ya tatu, waliiweka kwenye saraka ya nyumbani na kuhamisha saraka za nyumbani za watumiaji huko ili OS iweze kuchukua nafasi yote iliyobaki kwenye diski mbili, na hizi zilikuwa. megabytes tatu (wow!).

Kwa kweli, ilibidi watengeneze sheria kwamba "wakati mfumo wa uendeshaji unaanza, lazima uweze kuweka diski ya pili ndani /usr, kwa hivyo usiweke programu kama vile mount kwenye diski ya pili ndani /usr au utakuwa na tatizo la kuku na mayai." Ni rahisi hivyo. Na hiyo ilikuwa katika Unix V6 miaka 35 iliyopita.

Mgawanyiko wa /bin na /usr/bin (na saraka zote kama hizo) ni urithi wa matukio hayo, maelezo ya utekelezaji kutoka miaka ya 70 ambayo yamenakiliwa na warasimu kwa miongo kadhaa sasa. Hawakuwahi kuuliza swali kwa niniwalifanya tu. Mgawanyiko huu ulikoma kuwa na maana hata kabla ya Linux kuundwa, kwa sababu kadhaa:

  1. Wakati wa kuwasha, initrd au initramfs hutumiwa, ambayo hushughulikia matatizo kama vile "tunahitaji faili hii kabla ya hiyo." Hivyo, tuna tayari mfumo wa faili wa muda ambao hutumiwa kupakia kila kitu kingine.
  2. Maktaba zilizoshirikiwa (ambazo ziliongezwa kwa Unix na wavulana huko Berkley) hazikuruhusu kubadilisha yaliyomo kwenye /lib na /usr/lib kwa kujitegemea. Sehemu hizi mbili lazima zilingane la sivyo hazitafanya kazi. Hii haikufanyika mnamo 1974 kwa sababu walikuwa na uhuru fulani wakati huo kwa sababu ya kuunganisha tuli.
  3. Anatoa ngumu za bei nafuu zilivunja kizuizi cha megabyte 100 karibu na 1990, na karibu wakati huo huo, programu ya kurekebisha ukubwa ilionekana (kizigeu cha uchawi 3.0 kilitoka mwaka wa 1997).

Bila shaka, kwa kuwa kuna mgawanyiko, baadhi ya watu wamekuja na sheria zinazohalalisha. Kama, kizigeu cha mizizi kinahitajika kwa kila aina ya huduma za jumla za OS, na unahitaji kuweka faili zako za ndani ndani / usr. Au weka / kile ambacho AT&T inasambaza, na katika /usr usambazaji wako, IBM AIX, au Dec Ultrix, au SGI Irix imeongezwa, na /usr/local ina faili maalum kwa mfumo wako. Na kisha mtu aliamua /usr/local haikuwa mahali pazuri pa kusanikisha programu mpya, kwa hivyo wacha tuongeze /chagua! Sitashangaa ikiwa /opt/local pia itaonekana ...

Bila shaka, katika kipindi cha miaka 30, kwa sababu ya utengano huu, kila aina ya sheria za kuvutia za usambazaji zimekuja na kwenda. Kwa mfano, "/tmp inafutwa kwenye kuwasha upya, lakini /usr/tmp sivyo." (Na katika Ubuntu hakuna /usr/tmp kimsingi, na katika Gentoo /usr/tmp ni kiunga cha mfano kwa /var/tmp, ambayo sasa iko chini ya sheria hiyo, na haijafutwa wakati wa kuanza tena. Ndio, hii ilikuwa yote kabla Pia hutokea kwamba mzizi wa FS unasomwa tu, na kisha hauitaji kuandika chochote kwa / usr ama, lakini unahitaji kuandika kwa / var. zaidi haiwezi kuandikwa isipokuwa kwa / nk, ambayo wakati mwingine ilijaribiwa kuhamishwa hadi / var ...)

Warasimi kama vile Wakfu wa Linux (uliomeza Kundi la Viwango Bila Malipo wakati wa upanuzi wake miaka iliyopita) wana furaha kuweka kumbukumbu na kutatiza sheria hizi bila kujaribu kufahamu ni kwa nini walikuwepo hapo. Kile ambacho hawatambui ni kwamba Ken na Dennis wamehamisha tu sehemu ya Mfumo wa Uendeshaji kwenye orodha yao ya nyumbani kwa sababu diski ya RK05 kwenye PDP-11 ilikuwa ndogo sana.

Nina hakika kuwa kisanduku chenye shughuli nyingi huweka faili kwa njia ile ile kama ilivyokua kihistoria. Hakuna sababu ya kweli ya kufanya hivyo hadi sasa. Binafsi, mimi hutengeneza tu /bin, /sbin na /lib kiungo kwa saraka zinazofanana katika /usr. Baada ya yote, watu wanaofanya kazi na programu iliyoingia hujaribu kuelewa na kurahisisha ...

Chanzo: mapenzi.com

Kuongeza maoni