Inode

Z Wikipedie, otevřené encyklopedie

Skočit na: Navigace, Hledání

I-node (česky I-uzel) je datová struktura uchovávající metadata o souborech a adresářích (objektech) používaná v UNIXových souborových systémech (např. ext2, ext3, UFS). Z důvodu zachování kompatibility ostatní souborové systémy I-uzly emulují.

[editovat] Popis

I-uzel obsahuje metadata pro každý libovolně velký soubor i adresář, například čas poslední změny, přístupová práva, seznam datových bloků a podobně. V adresářích jsou pak dvojice název souboru a I-uzel, které definují soubory a adresáře.

I-uzel popisuje i některé systémové struktury, jako je kořenový adresář, nebo žurnál.

Počet I-uzlů je u klasických souborových systémů (ext2, ext3) určen při formátování systému souborů a později již nemůže být změněn. Jejich množství určuje maximální počet adresářů a souborů, které lze v souborovém systému vytvořit. I když může být na disku volné místo pro data, nemusí být možné z důvodu nedostatku volných i-uzlů vytvořit další soubory a adresáře.

Výpis obsazeného datového prostoru: df

Výpis počtu obsazených I-uzlů: df -i

Výpis názvů spolu s čísly I-uzlů v adresáři: ls -i

[editovat] Sruktura inodu

Struktura I-uzlu je popsána standardem POSIX.

Náčrt struktury I-uzlu
Náčrt struktury I-uzlu
  • MODE - druh souboru a přístupová práva
  • OWNER - vlastník (ID vlastníka)
  • GROUP - skupina (ID skupiny)
  • TIME STAMPS - časové informace
    • atime: čas posledního přístupu (čtení ze souboru, výpis adresáře)
    • mtime: čas poslední změny objektu
    • ctime: čas poslední změny informací o objektu
  • SIZE - velikost objektu
  • REFERENCE COUNT - počet odkazů mířicích na tento objekt
  • DIRECT BLOCKS - přímé odkazy mířící na objekt
  • SINGLE INDIRECT - odkazy na blok, který obsahuje odkaz na objekt
  • DOUBLE INDIRECT - …

[editovat] Související odkazy