Les fichiers sous Linux

Objectif : Comprendre la notion de fichier, les métadonnées et les liens symboliques.

Les fichiers

Qu’est-ce qu’un fichier ?

  • Une suite d’octets stockés sur un périphérique.
  • Peut contenir :
    • Du texte
    • Du code
    • Des images
    • Des programmes exécutables
    • Et bien plus... sous Linux, tout est un fichier!
Les fichiers

Qu’est-ce qu’un inode ?

  • Structure de données qui décrit un fichier. (contraction de index et node)
  • Contient les métadonnées, sauf le nom.
  • Informations stockées :
    • Taille du fichier
    • Propriétaire (utilisateur, groupe)
    • Permissions (lecture - écriture - exécution)
    • Dates (création, modification, accès)
    • Emplacement des blocs de données sur le disque
Les fichiers

Inode vs nom de fichier

  • Chaque fichier = 1 inode unique.
  • La commande stat fichier.txt permet de consulter les métadonnées de l'inode.
  • Le nom du fichier est géré séparément, dans le répertoire.
  • On peut avoir plusieurs noms (liens) pointant vers le même inode (lien matériel ou hard link).
Les fichiers

Qu’est-ce qu’un lien symbolique ?

  • Aussi appelé symlink.
  • C’est un fichier spécial qui pointe vers un autre fichier ou répertoire.
  • Similaire à un raccourci sous Windows.

Caractéristiques

  • Possède son propre inode.
  • Contient le chemin du fichier cible.
  • Si le fichier cible est supprimé → le lien symbolique est "cassé".
Les fichiers

Comparaison : Lien matériel vs Lien symbolique

Caractéristique Lien matériel (ln) Lien symbolique (ln -s)
Type Nouveau nom pour le même inode Fichier spécial contenant un chemin vers la cible
Inode Identique à celui du fichier d’origine Différent, possède son propre inode
Dépendance Indépendant du chemin du fichier original Dépend du chemin (si la cible disparaît → lien cassé)
Contenu Pointeur direct vers les données Contient le chemin du fichier cible
Système de fichiers Doit être sur le même système de fichiers Peut pointer vers un fichier sur un autre système
Exemple ln fichier.txt copie.txt ln -s fichier.txt raccourci.txt
Les fichiers
Les fichiers

Résumé

  • Fichier : suite d’octets, tout est fichier sous Linux.
  • Métadonnées : infos sur le fichier (taille, permissions, dates).
  • Inode : structure qui stocke les métadonnées et les adresses des blocs.
  • Lien symbolique : fichier spécial qui pointe vers un autre fichier.
  • ln : permet de créer des liens matériels ou symboliques.
Les fichiers