Inode

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 22. ledna 2022; kontroly vyžadují 2 úpravy .

V informatice inode (vyslovováno ainod nebo inode), inode  je datová struktura v tradičních unixových souborových systémech (FS), jako je UFS , ext4 . V této struktuře jsou kromě samotných dat a názvu uloženy metainformace o standardních souborech , adresářích nebo jiných objektech souborového systému.

Podrobnosti

Při vytvoření souborového systému se také vytvoří datové struktury obsahující informace o souborech. Každý soubor má svůj vlastní inode, identifikovaný jedinečným číslem (často nazývaným „i-číslo“ nebo „inode“) v systému souborů, kde se nachází samotný soubor.

Inody ukládají informace o souborech, jako je vlastnictví (uživatel a skupina), režim přístupu (čtení, zápis, spouštění) a typ souboru. Existuje určitý počet inodů, který určuje maximální počet souborů povolených určitým systémem souborů. Při vytváření souborového systému je obvykle přibližně 1 % jeho objemu přiděleno inodům.

Termín inode obvykle označuje inody blokového zařízení , které spravují trvalé soubory, adresáře a, je-li to možné, symbolické odkazy . Tento koncept hraje důležitou roli při obnově poškozených souborových systémů.

Názvy souborů a obsah adresáře:

Reprezentace těchto dat v paměti jádra se nazývá struct inode(strukturální inode) (v OS Linux ). Systémy BSD používají termín , kde vnodepísmeno v označuje virtuální souborový systém na úrovni jádra .

Popis inodu v POSIX

Standardy POSIX popisují chování souborového systému jako potomka tradičních souborových systémů UNIX, UFS. Běžné soubory musí mít následující atributy:

Systémové volání statpřečte číslo inodu souboru a některé informace z něj.

Etymologie inodu

Co v názvu „i-nod“ znamená „a“, není známo. V odpovědi na otázku týkající se tohoto, spolutvůrce Unixu Dennis Ritchie odpověděl:

Abych byl upřímný, ani já nevím. Byl to jen termín, který jsme začali používat. Vzhledem k mírně neobvyklé struktuře souborového systému, ve kterém jsou informace o přístupu k souborům uloženy jako ploché pole na disku, oddělené od všech informací o hierarchii adresářů, mohu nejlépe odhadnout (pro „a“) ​​„index“. Tedy i-číslo bylo indexem v tomto poli a i-uzel byl volitelným prvkem pole. (Předpona „a-“ byla použita v první verzi návodu, postupem času se pomlčka přestala používat).

Původní text  (anglicky)[ zobrazitskrýt] Po pravdě ani já nevím. Byl to jen termín, který jsme začali používat. "Index" je můj nejlepší odhad kvůli mírně neobvyklé struktuře systému souborů, která ukládala přístupové informace k souborům jako ploché pole na disku, přičemž všechny hierarchické informace o adresářích žijí stranou. I-číslo je tedy index v tomto poli, i-uzel je vybraný prvek

pole. (Zápis "i-" byl použit v manuálu 1. vydání, jeho pomlčka se postupně vypouštěla).

Co znamená "i" v inode ? Ani Dennis Ritchie to neví. (nedostupný odkaz) . Získáno 3. srpna 2010. Archivováno z originálu dne 23. srpna 2011. 

Tedy indexový uzel (indexový uzel, prvek) → index-uzel → i-uzel → inode  - postupné zkracování a slučování slovního spojení index uzel . Podle jiných verzí může počáteční písmeno i v i -uzlu také pocházet ze slov informace (informace), incore, indirection.

Význam

Souborové systémy, které používají inody, mají několik jemných funkcí:

Praktická aplikace

Mnoho programů používaných správci systému v operačním systému UNIX (OS) často používá k odkazování na soubory čísla inodů. Jako příklad zde může posloužit oblíbený vestavěný nástroj na kontrolu pevného disku fsck nebo příkaz , který potřebuje přirozeně převádět čísla inodů do a ze souborových cest . To lze rozšířit pomocí vyhledávače souborů s klíčem , nebo příkazem s příslušným klíčem (což na většině platforem je ). pfiles find-inumls-i

Dynamická alokace inodů

Jedním z problémů je, že inody mohou „docházet“. V takovém případě nebudete moci v zařízení vytvořit nový soubor nebo adresář, i když je dostatek volného místa. V tomto případě lze existující soubory plně upravit.

Souborové systémy lze tedy rozdělit do dvou skupin

Problém Y2038

Některé souborové systémy založené na inodech jsou imunní vůči problému Y2038 (známému jako Unixový čas ), aby zabránily přetečení data, ale ne všechny. Při nastavování serveru se stává důležitější vyhnout se používání takových systémů souborů , které nejsou kompatibilní s POSIX . Nejnovější verze POSIX podporuje volání systémového času a data, která jsou odolná vůči problému Y2038 .

Viz také

Literatura