Rozdíl mezi bin, sbin, usr/bin, usr/sbin

Dne 30. listopadu 2010 David Collier napsal:

Všiml jsem si, že v busyboxu jsou odkazy rozděleny do těchto čtyř adresářů.
Existuje nějaké jednoduché pravidlo, jak určit, ve kterém adresáři by měl který z odkazů ležet ...
Například kill je v /bin a killall je v /usr/bin... Nevidím v tomto rozdělení žádnou logiku.

Pravděpodobně víte, že Ken Thompson a Dennis Ritchie vytvořili Unix na PDP-7 v roce 1969. Takže kolem roku 1971 upgradovali na PDP-11 s dvojicí disků RK05 (každý 1,5 MB).

Když se operační systém rozrostl a už se nevešel na první disk (na kterém byl umístěn kořenový FS), přesunuli část na druhý, kde byly domovské adresáře (proto se přípojný bod nazýval / usr - od slova uživatel). Zduplikovali tam všechny potřebné adresáře OS (/bin, /sbin, /lib, /tmp ...) a dali soubory na nový disk, protože na starém došel místo. Pak měli třetí disk, připojili ho do adresáře /home a tam přesunuli domovské adresáře uživatelů, aby OS mohl zabrat veškerý zbývající prostor na dvou discích, a to byly až tři megabajty (Páni!).

Samozřejmě museli zavést pravidlo, že „když se operační systém nabootuje, musí být schopen připojit druhý disk do /usr, takže nedávejte programy jako mount na druhý disk do /usr, jinak budete mít problém s kuřecím masem a vejci." Je to tak jednoduché. A to bylo v Unixu V6 před 35 lety.

Rozdělení /bin a /usr/bin (a všech takových adresářů) je dědictvím těchto událostí, implementačním detailem ze 70. let, který byrokraté kopírovali již desítky let. Nikdy nepoložili otázku pročprostě to udělali. Toto rozdělení přestalo dávat smysl ještě před vytvořením Linuxu, a to z několika důvodů:

  1. Při bootování se používá initrd nebo initramfs, který se stará o problémy typu "tento soubor potřebujeme dřív než ten." Takže máme již mají dočasný souborový systém, který se používá k načtení všeho ostatního.
  2. Sdílené knihovny (které do Unixu přidali kluci z Berkley) vám neumožňují měnit obsah /lib a /usr/lib nezávisle. Tyto dvě části se musí shodovat, jinak nebudou fungovat. To se v roce 1974 nestalo, protože tehdy měli určitou nezávislost kvůli statickému propojení.
  3. Levné pevné disky prolomily hranici 100 megabajtů kolem roku 1990 a zhruba ve stejné době se objevil software pro změnu velikosti oddílu (partition magic 3.0 vyšel v roce 1997).

Samozřejmě, od té doby, co existuje rozdělení, někteří lidé přišli s pravidly, která to ospravedlňují. Například kořenový oddíl je potřebný pro všechny druhy obecných funkcí operačního systému a své místní soubory musíte vložit do / usr. Nebo vložte / co AT&T distribuuje a do /usr to, co přidala vaše distribuce, IBM AIX nebo Dec Ultrix nebo SGI Irix a /usr/local obsahuje soubory specifické pro váš systém. A pak někdo usoudil, že /usr/local není to správné místo pro instalaci nového softwaru, tak pojďme přidat /opt! Nepřekvapí mě, když se objeví i /opt/local...

Samozřejmě, že během 30 let kvůli tomuto oddělení přicházela a odcházela nejrůznější zajímavá pravidla specifická pro distribuci. Například "/tmp je při restartu vymazán, ale /usr/tmp ne." (A v Ubuntu v zásadě neexistuje /usr/tmp a v Gentoo /usr/tmp je symbolický odkaz na /var/tmp, který nyní podléhá tomuto pravidlu a při restartu se nevymaže. Ano, toto was all before Stává se také, že kořenový FS je pouze pro čtení a pak nemusíte nic zapisovat ani do /usr, ale musíte zapisovat do /var. většinou nelze zapsat jinak než v /etc, které se někdy pokoušelo přesunout do /var ...)

Byrokraté jako Linux Foundation (která před lety pohltila Free Standards Group během jejího rozšiřování) rádi dokumentují a komplikují tato pravidla, aniž by se kdy snažili přijít na to, proč tam jsou. Neuvědomují si, že Ken a Dennis právě přesunuli část OS do svého domovského adresáře, protože disk RK05 na PDP-11 byl příliš malý.

Jsem si docela jistý, že busybox prostě ukládá soubory stejným způsobem jako historicky. Doposud k tomu není žádný skutečný důvod. Osobně dělám pouze odkazy /bin, /sbin a /lib na podobné adresáře v /usr. Koneckonců, lidé, kteří pracují s vestavěným softwarem, se snaží pochopit a zjednodušit ...

Zdroj: www.habr.com

Přidat komentář