Inodes

Un inode (index node) és l’estructura de dades fonamental que un sistema de fitxers Unix utilitza per descriure un fitxer o directori. Cada fitxer té exactament un inode, i és aquí on el sistema desa tota la metainformació.

1. Què conté un inode?

Camp Descripció
Tipus de fitxer Regular, directori, enllaç simbòlic, dispositiu…
Permisos rwx per propietari, grup i altres
UID / GID Propietari i grup
Mida En bytes
Timestamps atime (accés), mtime (modificació), ctime (canvi d’inode)
Nombre de hard links Quants noms apunten a aquest inode
Punters a blocs On es troben físicament les dades al disc
📌
Important

L’inode no conté el nom del fitxer. El nom viu al directori, que és simplement una taula que associa noms → números d’inode.

2. Estructura dels punters a blocs (ext2/ext3 clàssic)

Inode
 ├── 12 blocs directes        → apunten directament a dades
 ├──  1 bloc indirecte simple → apunta a un bloc de punters
 ├──  1 bloc indirecte doble  → apunta a punters de punters
 └──  1 bloc indirecte triple → tres nivells de punters

Els sistemes de fitxers moderns (ext4, XFS, btrfs) usen extents en comptes de punters individuals, molt més eficients per fitxers grans.

3. Conceptes clau

Hard links (enllaços durs) — dos noms de fitxer que apunten al mateix inode. El fitxer no s’esborra fins que el comptador d’enllaços arriba a zero i no hi ha cap procés que el tingui obert.

Soft links (enllaços simbòlics) — un fitxer especial que conté el camí a un altre fitxer. Té el seu propi inode diferent.

Exhauriment d’inodes — un disc pot quedar-se sense inodes abans que sense espai. Passa quan hi ha milions de fitxers petits. Es comprova amb df -i.

4. Ordres útils

ls -i fitxer.txt          # mostra el número d'inode
stat fitxer.txt           # tots els camps de l'inode
df -i                     # inodes usats/disponibles per partició
find / -inum 12345        # troba fitxers per número d'inode

5. Entendre els inodes és clau per comprendre per què

Versions d’aquest document

Domini Públic (CC0)