Inode
Author
Albert Floresinode, 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).
Popis
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. +more 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. +more 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
Struktura i-uzlu je popsána standardem [url=://kernel.org * SINGLE INDIRECT - 1 odkaz na datový blok, který obsahuje místo dat seznam přímých odkazů na datové bloky obsahující vlastní data uložená v souboru (první nepřímá úroveň) * DOUBLE INDIRECT - 1 odkaz druhé nepřímé úrovně (viz obrázek vpravo) * TRIPLE INDIRECT - 1 odkaz třetí nepřímé úrovně
V souborových systémech [[Extended file system|ext][POSIX]].
* MODE - typ souboru a přístupová práva (vlastník, skupina, ostatní) * REFERENCE COUNT - počet odkazů na tento objekt (viz pevný odkaz) * OWNER - vlastník (ID vlastníka) * GROUP - skupina (ID skupiny) * SIZE - velikost objektu * TIME STAMPS - časové informace ** atime: čas posledního přístupu (čtení ze souboru, výpis adresáře) ** mtime: čas poslední změny datové části (souboru, adresáře) ** ctime: čas poslední změny I-uzlu (metadat) * DIRECT BLOCKS - 12 přímých odkazů na datové bloky obsahující data uložená v souboruviz soubor ext3_fs. h ve zdrojových kódech linuxového jádra, makro EXT3_NDIR_BLOCKS[url=http://git. +morekernel. org/. p=linux/kernel/git/stable/linux-2. 6. 39. y. git;a=blob_plain;f=include/linux/ext3_fs. h;hb=HEAD]soubor ext3_fs. h[/url] pro jádro 2. 6. 39. 1 na[/url]] (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ě).
Odkazy
Literatura
Reference
Související články
UFS - tradiční unixový systém souborů využívající i-uzly * ext, ext2, ext3, ext4 - Extended file system (inspirován UFS, používá i-uzly) * Systém souborů v Unixu
Externí odkazy
[url=http://www. ucw. +morecz/~hubicka/skolicky/skolicka23. txt]Popis ext2[/url] - [url=http://www. ucw. cz/~hubicka/]Hubičkova[/url] školička (česky) * [url=http://www. abclinuxu. cz/slovnik/inode]I-uzel[/url] - Výkladový slovník [url=http://www. abclinuxu. cz]abclinuxu. cz[/url] * [url=http://www. csie. ntu. edu. tw/~pangfeng/System%20Programming/Lecture_Note_2. htm]File Systems[/url] (anglicky) * [url=https://web. archive. org/web/20070313093717/http://www. ictp. trieste. it/~radionet/1999_school/LABORATORY/NETWORKING/LINUX-INTRO/html/file-system. html]File systems 2[/url] (anglicky) * [url=https://web. archive. org/web/20080207080004/http://www. cse. unsw. edu. au/~neilb/oss/linux-commentary/vfs-7. html]The Linux Virtual File-system Layer: Inodes and Operations[/url] (anglicky).