inode (pronunțat inode sau inode), inode este o structură de date în sistemele de fișiere tradiționale bazate pe UNIX (FS), cum ar fi UFS. Această structură stochează metainformația despre fișiere standard, directoare sau alte obiecte ale sistemului de fișiere, cu excepția datelor în sine și a numelui. Fiecare fișier este asociat cu un inode, deși poate avea mai multe nume în sistem, fiecare dintre ele indicând același inode [1].
Esența inodului
Descrierea unui inod în POSIX
Standardele POSIX descriu comportamentul sistemului de fișiere ca descendent al sistemelor tradiționale de fișiere UNIX - UFS. Fișierele obișnuite trebuie să aibă următoarele atribute:
- lungimea fișierului în octeți;
- ID-ul dispozitivului (acesta identifică dispozitivul care conține fișierul);
- ID-ul utilizatorului care deține fișierul;
- ID-ul grupului de fișiere;
- Modul fișier care determină utilizatorii care pot citi, scrie și rula fișierul;
- Marcajul de timp indică data ultimei modificări a inodei (ctime, timpul de schimbare), ultima modificare a conținutului fișierului (mtime, timpul de modificare) și ultimul acces (atime, timp de acces);
- numărul de referință indică numărul de legături dure care indică inodul;
- pointeri la blocurile de discuri care stochează conținutul fișierului (mai mult.).
- Apelul de sistem stat citește numărul indexului descriptorului de fișiere și unele informații din acesta.
Descriptorul indexului nu conține:
- Numele fișierului care este conținut în unitățile de stocare a datelor din catalog;
- Conținutul fișierului, care se află în unitățile de stocare a datelor.
Aplicare practică
O mulțime de programe utilizate de administratorii de sistem în sistemul de operare UNIX (OS) utilizează adesea numere descriptorilor de index pentru a desemna fișiere. În acest caz, poate fi folosit ca exemplu exemplarul popular fsck sau comanda pfiles, deoarece acestea trebuie să convertească numerele inode în calea fișierului și invers. Acest lucru poate fi completat folosind programul de căutare cu opțiunea -inum sau comanda ls cu cheia corespunzătoare (care pe majoritatea platformelor este -i). Inodurile se pot "termina". În acest caz, nu puteți scrie informații dispozitivului, chiar dacă există suficient spațiu liber.
Structura discului inode
Tipul fișierului, atributele de execuție suplimentare și drepturile de acces
Câmpul di_mode stochează mai multe atribute ale fișierului: tipul de fișier (IFREG pentru fișiere obișnuite, IFDIR pentru directoare, IFBLK sau IFCHR pentru fișierele speciale ale dispozitivelor bloc și caracter); drepturi de acces la fișier pentru trei clase de utilizatori și atribute suplimentare de execuție (SUID, SGID și bit adeziv). Rețineți că în descriptorul indexului nu există informații despre timpul creării fișierului. În schimb, inode stochează trei valori de timp: ultimul acces (di_atime), timpul ultimei modificări a conținutului fișierului (di_mtime) și timpul ultimei modificări a metadatelor fișierului (di_ctime). În acest din urmă caz, modificările câmpurilor di_atime și di_mtinie nu sunt luate în considerare. Astfel, di_ctime se modifică atunci când dimensiunea fișierului, proprietarul, grupul sau numărul de link-uri se modifică.