Difference entre un inode et un bloc disque

Résolu/Fermé
mimolinf Messages postés 9 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 4 janvier 2010 - 31 déc. 2009 à 17:39
mamiemando Messages postés 33558 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 10 mars 2025 - 1 janv. 2014 à 15:32
Bonjour,
je souhaiterais savoir quelle est la difference entre une inode et un bloc disque dans la structure interne des fichiers.
Merci d'avance pour votre réponse.
A voir également:

2 réponses

mamiemando Messages postés 33558 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 10 mars 2025 7 833
2 janv. 2010 à 00:13
Pré-requis :

1) un média (clé USB, disque CD ROM, disque dur) peut-être stocké de différentes manières. Cette manière de stocker de l'information est décrite par le système de fichiers (ext4, reiserfs, ntfs, fat32...), qui est au média ce que la langue pourrait être à un bouquin.

2) un média est manipulé par un OS (linux, windows...) par le biais d'un VFS (virtual file system) qui permet notamment d'améliorer les performances avec le média. Le VFS permet de manipuler un contenu en mémoire plutôt que sur le média (qui peut être très lent, en particulier quand il s'agit d'une disquette ou d'une clé USB).

3) La création du VFS est faite au moment de monté le média (par exemple à l'aide de la commande mount, éventuellement en se basant sur le fichier /etc/fstab)

4) La synchronisation entre le VFS et le média est faite au moment de la commande "sync" ou "umount" (ce qui revient à "retirer son périphérique en toute sécurité").

Passons à ta question !

Un bloc disque est une "unité de mesure". La commande ls renvoie par défaut les tailles en bloc plutôt qu'en octets à moins de passer l'option "-h". Un bloc fait 4Kio sur un système de fichiers ext4. Un fichier occupe un certain nombre de blocs (par exemple 1 bloc => 4Kio, 2 blocs => 8Kio etc...).

Un inode est une structure manipulée par le système de fichiers (ext4, fat32, ntfs, xfs, reiserfs...) qui permet de décrire un fichier (taille, date de modification, nom du fichier etc...), typiquement toutes les informations renvoyées par un "ls -l".

Selon le système de fichiers, certains attributs sont stockés ou non dans l'inode (droits...). Par exemple pour de la fat32, la notion de droits n'est pas stockée au niveau de l'inode contrairement à de l'ext4. Pourtant, la notion de droits peut "exister" sous linux sur de la fat32, mais ces droits sont (ré)initialisés au moment de faire un mount. Toutes les modifications de droits que tu pourrais apportés n'affecterait que le VFS et seraient perdues lors du prochain umount/mount.

C'est typiquement ce genre de considération qui différencient deux systèmes de fichiers, en plus des considérations sur les performances, les tailles maximum de fichiers, les notions de journalisation, les aspects libres/propriétaires etc...

Pour plus de détails :
https://fr.wikipedia.org/wiki/Inode
https://fr.wikipedia.org/wiki/Ext3
https://fr.wikipedia.org/wiki/Virtual_File_System
https://fr.wikipedia.org/wiki/Bloc_%28disque_dur%29

Bonne chance
7
mimolinf Messages postés 9 Date d'inscription lundi 6 octobre 2008 Statut Membre Dernière intervention 4 janvier 2010
3 janv. 2010 à 01:09
Merci mamiemando pour ton explication, j'y vois plus clair !

Bonne continuation
0
une remarque important:
inode ne contient pas les noms des fichier
mais seulement les autrs information
par exemple:
Le type de fichier ( fichier standard, lien symbolique, repertoire, ...)
Les droits d'acces
le proprietaire (UID)
le groupe proprietaire (GID)
le nombre de references
la taille
la date de dernier acces en ecriture
la date de dernier acces en lecture
l'adresse disque du premier bloc de donnees
0
mamiemando Messages postés 33558 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 10 mars 2025 7 833
1 janv. 2014 à 15:32
Merci pour cette précision, effectivement, d'après :
https://en.wikipedia.org/wiki/Inode

File names and directory implications:

- inodes do not contain file names, only other file metadata.
- Unix directories are lists of association structures, each of which contains one filename and one inode number.
- The file system driver must search a directory looking for a particular filename and then convert the filename to the correct corresponding inode number.
0
mamiemando Messages postés 33558 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 10 mars 2025 7 833
3 janv. 2010 à 23:59
De même, bonne continuation !
0