Vous êtes sur la page 1sur 44

Les systèmes de fichiers

brevet technicien supérieur (BTS) 1


Introduction :
Fichier ?
Désigne un ensemble d'informations stockées sur le disque

Système de fichiers ?
C’est la partie du système d'exploitation qui se charge
de gérer les fichiers.

La gestion consiste en : la création (identification,


allocation d'espace sur disque), la suppression, les accès
en lecture et en écriture, le partage de fichiers et leur
protection en contrôlant les accès, etc.

brevet technicien supérieur (BTS) 2


Système de fichier

 En Unix/Linux, tout est fichier :


• les fichiers normaux
• fichiers textes (caractères lisibles)
• fichiers éxécutables (suite de caractères binaires, compréhensibles
uniquement par l'ordinateur, en général il s'agit des programmes)
• les répertoires (peuvent contenir d'autres fichiers ou d'autres
répertoires)
• les fichiers de périphériques
 Chaque fichier possède un "i-node" : moyen pour Unix
de stocker les caractéristiques du fichier
(emplacement, nom du propriétaire, droits, taille, date de création
et de dernière modification)
Introduction :
 Exemple de système de fichiers

Linux : ext2, ext3, ext4 …

Windows : FAT16, FAT 32, NTFS

brevet technicien supérieur (BTS) 4


Fichiers physiques :

Les fichiers sur les disques se répartissent dans des blocs de taille fixe
Un bloc est constitué d’un nombre de secteur
(secteur ≈ 512 octets)

brevet technicien supérieur (BTS) 5


Méthodes d’allocation des fichiers :
Pour allouer des blocs pour un fichier il y a deux
méthodes de base :

Allocation chaînée : c’est la méthode d’allocation de base


dans les systèmes de fichiers Windows

Allocation indexée : la méthode utilisé dans les systèmes de


fichiers linux

brevet technicien supérieur (BTS) 6


Méthodes d’allocation des fichiers :
Allocation chaînée :
Avantage - désavantage :

·   Pas de fragmentation externe - allocation de mémoire simple, on n’a pas besoin de


compression.
· Facilité de mise à jour de fichier.
·   L’accès à l’intérieur d’un fichier ne peut être que séquentiel.
·   L’intégrité des pointeurs est essentielle.

brevet technicien supérieur (BTS) 7


Méthodes d’allocation des fichiers :
Allocation indexée :

L'accès direct est difficile avec la technique précédente (allocation


chaînée) parce que les pointeurs sont éparpillés ( un par bloc):

L'idée de base est de regrouper tous les pointeurs ensemble dans un 'bloc
index’, le but visé par cette technique est :
•d'éliminer la fragmentation externe,
•de permettre aussi bien l'accès séquentiel que direct(accés indexé).

brevet technicien supérieur (BTS) 8


Structure du système de fichiers
ext2
inode (index node) :

Chaque fichier possède son unique inode (index node).L'inode


contient la totalité des informations sur le fichier, sauf le nom.
Les inodes sont tous de même taille.

brevet technicien supérieur (BTS) 9


Structure du système de fichiers
ext2
inode (index node) :
Les informations que contient l’inode :
Type de fichier : -,d, l, c, p, b.
Droits d'accès : par exemple : rwxr-x---
Nombre de liens (physiques) : correspond au nombre de références c'est à dire au
nombre de noms.
UID  : effectif du processus créateur ou affecté par chown.
GID  : effectif du processus créateur, affecté par chgrp ou hérité du répertoire.
Taille du fichier.
atime :date de la dernière lecture.
mtime :date de la dernière modification de contenu.
Ctime : date de la dernière modification de contenu ou de propriété (permission,
liens, UID,…)
Adresses des blocs.

brevet technicien supérieur (BTS) 10


Structure du système de fichiers
ext2

Blocs de données

Blocs de données

Un inode pour
chaque fichier Bloc contenant des adresses des autres 11
blocs
Structure du système de fichiers
ext2
 Les premiers blocs d’un fichier sont accessibles directement
 Si le fichier contient des blocs additionnels, les premiers sont
accessibles à travers un niveau d’indices
 Les suivants sont accessibles à travers 2 niveaux d’indices, etc.
 Donc le plus loin du début un enregistrement se trouve, le plus indirect
est son accès
 Permet accès rapide à petits fichiers, et au début de tous les fich.
 Permet l’accès à des grands fichier avec un petit répertoire en mémoire
 La capacité d’un tel système dépend de la
• taille des blocs ainsi que du
• nombre de bits dans les pointeurs

Chap 11 12
Structure du système de fichiers
ext2
le répertoire :
Comme tout fichier, un répertoire possède son  inode.
Le contenu du répertoire représente la correspondance entre les noms
de fichiers et les inodes. Les noms " . " et " .. "figurent dans tout
répertoire. " . " correspond au répertoire courant et " .. " au répertoire
supérieur (ou répertoire parent).

brevet technicien supérieur (BTS) 13


Structure générale d’une
partition ext2

brevet technicien supérieur (BTS) 14


Structure générale d’une
partition ext2

BootBlock : Le bloc de boot n'est rempli que si la partition est une partition
de démarrage (partition qui contient une copie du noyau). Il contient un petit
programme chargeant le noyau en mémoire et lui donnant le contrôle.

brevet technicien supérieur (BTS) 15


Structure générale d’une
partition ext2

SuperBlock Le super-bloc contient des informations générale sur la partition : la


taille de la zone des blocs de données, le nombre de blocs libres dans cette zone,
une table servant de tête de liste des blocs libres, la taille de la table des inodes,
le nombre d'inodes libres, une table contenant des numéros d'inodes libres et
enfin l'état du super-bloc.
brevet technicien supérieur (BTS) 16
Structure générale d’une
partition ext2

Group Descriptors : contient une description de chaque groupe de blocs.


Comme le superbloc, tous les descripteurs des groupes de blocs sont dupliqués
dans chaque groupe de blocs pour prévenir une corruption du système de fichiers.

brevet technicien supérieur (BTS) 17


Structure générale d’une
partition ext2

Data block Bitmap : contient les adresses des blocs alloués et non alloués

brevet technicien supérieur (BTS) 18


Structure générale d’une
partition ext2

inode Bitmap : contient les adresses des inodes alloués et non alloués

brevet technicien supérieur (BTS) 19


Structure générale d’une
partition ext2

Inode Table : la table des inodes du groupe de bloc

brevet technicien supérieur (BTS) 20


Structure générale d’une
partition ext2

Data blocks : les blocks de données

brevet technicien supérieur (BTS) 21


ext3

Le système de fichiers ext3 est une extension de ext2. Il ajoute une fonctionnalité
de journalisation qui augmente sa fiabilité, sans changer la structure fondamentale
héritée de ext2.
On peut toujours monter un système de fichiers ext3 comme étant un système de
fichier ext2 en désactivant la fonctionnalité de journalisation.
Il est possible de convertir un système de fichiers ext2 en un système de fichiers
ext3 avec l’option –j de la commande « tune2fs »

brevet technicien supérieur (BTS) 22


ext3
la journalisation :

Le système de fichiers ext3 réserve une zone du disque pour le fichier journal. Quand une

opération sur le système de fichiers se produit (écritue, modification suppression …)

les modifications nécessaires sont d'abord écrites dans le fichier journal. Ensuite le système

de fichiers est modifié.

Si une coupure de courant ou une panne système survient pendant la mise à jour, on peut se

référer au fichier journal pour reconstruire un système de fichiers cohérent.

23
ext4

ext4 ajoute la possibilité de travailler avec des disques très volumineux (plus de 32
téraoctets) ou de très gros fichiers (ceux de plus de 2 To), ainsi que des
extensions destinées à améliorer les performances et à la défragmentation en
ligne.

24
25
26
Créer et configurer un système
de fichier

 Créer un système de fichier


Commande mkfs
La commande mkfs permet de construire un système de fichiers sur une partition du
disque. Elle fait appel à d'autres programmes en fonction du type de système de fichiers
sélectionné. Linux prend en charge différents types de systèmes de fichiers, y compris
plusieurs systèmes de fichiers journalisés et les systèmes de fichiers Windows.
Exemple :
mkfs –t ext3 /dev/sdb1
Crée un système de fichier de type ext3 sur la partition : sdb1

27
Créer et configurer un système
de fichier
 Afficher les informations sur le système de fichier
La commande dumpe2fs
La commande dumpe2fs permet d'afficher les informations sur le superbloc et les groupes
de blocs et de localiser les adresses des copies du superbloc sur une partition du disque. 1

28
La commande dumpe2fs
Exemple :

29
La commande dumpe2fs
Exemple (suite) :

30
Créer et configurer un système
de fichier
 Montage d’un système de fichiers
La commande mount :

Permet de monter un système de fichiers sur un répertoire.

Options de commande:

-t : Type de système de fichiers

-options : Options de montage (ro ou rw, ...)

Exemple: mount -t ext3 /dev/sda1 /data

Monte la partition /dev/sda1 sur le répertoire /data

31
Les options de la commande mount :

32
Configuration des systèmes de
fichiers

 Configuration des systèmes de fichiers montés à


l'amorçage du système.
 Systèmes de fichiers à monter à l'amorçage du
système décrits dans le fichier /etc/fstab.

33
Créer et configurer un système
de fichier
 Ajustement des paramètres des systèmes de
fichiers
La commande tune2fs
La commande tune2fs permet de modifier les paramètres ajustables d'un système de
fichiers ext2, ext3 ou ext4.

34
Maintenir un système de fichier
 Vérification et réparation de système de
fichiers
La commande fsck
La commande fsck analyse les systèmes de fichiers et corrige les erreurs détectées, telles
que :
•blocs de données non utilisés et non enregistrés ;
•blocs de données marqués comme libres mais également utilisés dans un fichier ;
•inodes non référencés ;
•Répertoires non reliés au système de fichiers ;
•informations incorrectes dans le superbloc.

35
Maintenir un système de fichier
 Vérification et réparation de système de
fichiers
La commande fsck
Exemple

fsck -p /dev/sda5

analyser le système de fichiers de : /dev/sda5

36
Réparer un système de fichiers
 En supposant que vous avez installé Linux Ubuntu sur votre PC et sur la

partition /dev/sdaX.

 Si jamais il arrivait que le système de fichier soit endommagé ou détérioré, il

est possible de le réparer:

 démarrer avec le CD d’installation d’Ubuntu :

 choisir l’option tester Ubuntu

 lancer en ligne de commande :

$ sudo fsck.ext3 -f /dev/sdaX

 Si des erreurs subsistent et peuvent être réparées, elles le seront.

37
Réparer un système de fichiers
Connaître la liste des partitions
 Pour connaître les partitions montées :
df
 Pour connaître la liste complète des
partitions du disque « /dev/sda » :
fdisk -l /dev/sda

38
Connaître la liste des partitions
 Vous pouvez également demander au
système de vérifier le système de fichier
au prochain redémarrage en tapant:
sudo touch /forcefsck

39
Passer le système de fichiers en
lecture seule

 Avant de pouvoir corriger un système de fichiers, il est


nécessaire de le passer en lecture seule.

1. il est préférable de booter sur un cd de réparation ou sur


un live cd pour avoir un système de fichiers en lecture
seule

2. Dans certains cas, cette opération est possible en


utilisant les commandes suivantes:

40
Passer le système de fichiers en
lecture seule
 La commande suivante permet de passer en mode mono-utilisateur:

 init 1

 La commande suivante démonte et remonte en lecture seule la

partition racine « / » :

 mount -n -o remount,ro /

 La commande suivante permet de remonter la partition racine « / »

en lecture écriture lorsque celle-ci est réparée :

 mount -n -o remount,rw /
41
Corriger le système de fichiers
 La commande « e2fsck » permet de réparer les systèmes de

fichiers « ext2 » ou « ext3 ».

 La commande suivante permet de vérifier si la partition « /dev/sda1

» comporte des fichiers défectueux :

 e2fsck -f -n /dev/sda1

-f : Force la vérification même si le système de fichiers semble

propre.

-n : Ouvre en lecture-seule le système de fichiers, et répond « non »

à toutes les questions.


42
Corriger le système de fichiers
 La commande suivante permet de corriger la partition « /dev/sda1 ».

 e2fsck -f -p /dev/sda1

 ATTENTION : Il est impératif que le système de fichiers soit en

lecture seule et qu’il soit bien de type ext2 ou ext3 :

-p : Répare automatiquement le système de fichiers sans poser la

moindre question.

43
Marquer les secteurs
défectueux
 La commande suivante permet de marquer les secteurs défectueux de la

partition « /dev/sda1 » pour empêcher l’enregistrement sur ceux-ci :

 e2fsck -c /dev/sda1

 Autres commandes

 La commande « debugfs » permet aussi de réparer le système de

fichier. A utiliser uniquement si la commande « e2fsck » a échouée.

 La commande « fsck » permet de réparer tous les systèmes de fichiers

(man fsck pour plus d’infos)

44

Vous aimerez peut-être aussi