Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Fichiers, inodes et répertoires

Après cette leçon: Je peux expliquer comment le système trouve un fichier à partir de son chemin.

Leçon de 55 min6 commandesLab Linux du quotidien : la trentaine de commandes que les ingénieurs tapent de tête

Comment un chemin devient un fichier

Un système de fichiers range des fichiers sur un disque et retrouve chacun à partir de son chemin, comme /home/ana/notes.txt. Il le fait avec des inodes et des répertoires.

Comprendre cela explique pourquoi renommer un fichier est instantané, et pourquoi deux noms peuvent désigner un seul fichier.

À la fin de cette leçon

Remarque

Je peux expliquer comment le système trouve un fichier à partir de son chemin.

Mots-clés

MotCe que ça veut direExemple
Inodela fiche d’un fichier : taille, droits, emplacement des blocs
Répertoireun fichier spécial qui associe des noms à des numéros d’inode
Blocun petit morceau du disque qui garde des octets du fichier
Cheminla suite de noms de la racine jusqu’au fichier/home/ana/notes.txt
Lien physiqueun second nom pour un même inode
Racinele répertoire de départ de tout chemin, noté /

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Un inode décrit le fichier sans son nom

Chaque fichier a un inode. Cette fiche contient sa taille, son propriétaire, ses droits et la liste des blocs du disque qui gardent son contenu.

L’inode ne contient pas le nom du fichier. Le système désigne un fichier par son numéro d’inode, comme un employé par son matricule.

Un répertoire liste des noms et numéros

Un répertoire est lui-même un fichier. Son contenu est une liste de paires : un nom, un numéro d’inode. C’est là que vivent les noms.

Renommer un fichier change donc une ligne dans un répertoire. Aucun octet du fichier ne bouge.

Exemple travaillé : trouver /home/ana/notes.txt

ÉtapeOn litOn chercheOn trouve
1La racine, d’inode 1, connue d’avancehomeinode 3
2Le répertoire d’inode 3anainode 4
3Le répertoire d’inode 4notes.txtinode 11
4L’inode 11les blocsle contenu du fichier

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Créer un petit fichier de huit octets

Commande
printf 'bonjour\n' > essai.txt

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Lui donner un second nom

Commande
ln essai.txt essai2.txt

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Compter les noms de ce fichier

Commande
stat -c '%h' essai.txt

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Les deux noms désignent-ils le même inode ?

Commande
test essai.txt -ef essai2.txt && echo oui

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Deux noms, un seul fichier

Le premier Run n’affiche rien. Le deuxième non plus : ln ajoute une ligne à un répertoire, avec le même numéro d’inode.

Le troisième affiche 2 : l’inode a deux noms. Le quatrième affiche oui : -ef teste que les deux noms mènent au même inode. Le contenu n’existe qu’une fois.

Lire le type d’un chemin

Commande
stat -c '%F' /

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Supprimer les deux noms

Commande
rm essai.txt essai2.txt

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Erreur fréquente

Attention

Beaucoup de gens pensent que rm efface le fichier. Il retire seulement un nom. Le système libère l’inode et les blocs quand plus aucun nom ne reste et qu’aucun processus ne l’utilise.

À propos de ce labo et de sa source: Lab Linux du quotidien : la trentaine de commandes que les ingénieurs tapent de tête

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.