inode, i-node, česky i-uzel je v informatice datová struktura uchovávající metadata o souborech a adresářích používaná v unixových souborových systémech, které vycházejí z tradičního UFS (například linuxová řada ext2, ext3, ext4). Z důvodu zachování zpětné kompatibility ostatní souborové systémy i-uzly emulují (např. NFS).
Příkaz | Popis |
---|---|
df |
Obsazený datový prostor |
df -i |
Obsazené i-uzly |
ls -i |
Obsah adresáře a čísla i-uzlů |
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 k němu příslušné číslo i-uzlu, které pomocí metadat popisuje vlastní uloženou datovou část souboru nebo adresáře. Vzhledem k tomu, že (téměř) vše je v unixových systémech soubor (vlastně i adresář je speciální soubor), je i-uzel univerzální datovou strukturou pro metadata.
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 (tj. volné datové bloky), nemusí být možné z důvodu nedostatku volných i-uzlů vytvořit další soubory a adresáře.
Struktura i-uzlu je popsána standardem POSIX.
V souborových systémech ext (Linux) následují ještě příznaky (FLAGS), počet aktuálně použitých datových bloků a rezervovaná část, která může obsahovat doplňující informace (odkaz na rodičovský adresář, ACL, rozšířené atributy a podobně).[3]
ext3_fs.h
ve zdrojových kódech linuxového jádra, makro EXT3_NDIR_BLOCKS
ext3_fs.h
[nedostupný zdroj] pro jádro 2.6.39.1 na http://kernel.org