Sobes.tech
Middle

Ce informații stochează i-node-ul?

sobes.tech AI

Răspuns de la AI

Inode (inode) stochează metainformații despre un fișier sau director în sistemul de fișiere. Nu conține datele efective ale fișierului.

Informații cheie stocate în inode:

  • Tipul fișierului (fișier obișnuit, director, link simbolic etc.).
  • Permisiuni de acces (proprietar, grup, alții; permisiuni de citire, scriere, executare).
  • Numărul de legături dure către acest inode.
  • Identificatorul utilizatorului proprietar (UID).
  • Identificatorul grupului proprietar (GID).
  • Dimensiunea fișierului în bytes.
  • Marcaje temporale:
    • Timpul ultimei accesări (atime).
    • Timpul ultimei modificări (mtime).
    • Timpul ultimei modificări a inode-ului/metadatelor (ctime).
  • Numerele blocurilor de pe disc unde sunt stocate datele fișierului.
  • Dimensiunea blocului de date.

Exemplu de structură (condițională):

// Reprezentare condițională a structurii inode
struct inode {
    // Metadate fișier
    unsigned int    i_mode;      // Tipul fișierului și permisiuni
    unsigned int    i_uid;       // UID-ul proprietarului
    unsigned int    i_gid;       // GID-ul proprietarului
    unsigned int    i_nlink;     // Numărul de legături dure
    __time_t        i_atime;     // Timpul ultimei accesări
    __time_t        i_mtime;     // Timpul ultimei modificări
    __time_t        i_ctime;     // Timpul creării/modificării
    unsigned long   i_size;      // Dimensiunea fișierului
    unsigned long   i_blocks;    // Numărul de blocuri ocupate de fișier
    unsigned int    i_blksize;   // Dimensiunea blocului sistemului de fișiere
    // Adresele blocurilor de date (directe, indirecte. Depinde de FS)
    unsigned int    i_block[N_BLOCKS]; 
    // + informații suplimentare specifice FS
};

Tabel cu exemple de permisiuni în sistem octal:

Valoare (Octal) Descriere
777 Toate permisiunile pentru proprietar, grup, alții
755 rwx pentru proprietar, r-x pentru grup și alții
644 rw- pentru proprietar, r-- pentru grup și alții