11.2. Informations spécifiques aux systèmes de fichiers pour fsck

11.2.1. ext2, ext3, et ext4

Tous ces systèmes de fichiers utilisent le binaire e2fsck pour effectuer leurs vérifications et réparations de système de fichiers. Les noms de fichiers fsck.ext2, fsck.ext3, et fsck.ext4 sont des liens vers ce même binaire. Ces binaires sont exécutés automatiquement lors du démarrage et leur comportement diffère basé sur le fait que le système de fichiers est en cours de vérification, et selon l'état du système de fichiers.
Une vérification et réparation du système de fichiers complet est invoquée pour ext2, qui n'est pas un système de fichiers journalisant les métadonnées, et pour les systèmes de fichiers ext4 sans journal.
Pour les systèmes de fichiers ext3 et ext4 avec journalisation des métadonnées, le journal est répété dans l'espace utilisateur et le sorti du binaire. Ceci est l'action par défaut car la répétition du journal assure un système de fichiers cohérent après une panne.
Si ces systèmes de fichiers rencontrent des incohérences de métadonnées alors qu'ils sont montés, ils enregistreront ce fait dans le super bloc du système de fichiers. Si e2fsck découvre qu'un système de fichiers est marqué d'une telle erreur, e2fsck effectuera une vérification complète après avoir répété le journal (s'il est présent).
e2fsck peut demander une entrée à l'utilisateur pendant l'exécution si l'option -p n'est pas spécifiée. L'option -p indique à e2fsck d'effectuer automatiquement toutes les réparations pouvant être faites sans risque. Si une intervention de l'utilisateur est requise, e2fsck indiquera le problème non corrigé dans sa sortie et reflétera ce statut dans le code de sortie.
Les options du runtime e2fsck habituellement utilisées incluent :
-n
Mode sans modifications. Opération de vérification seule.
superbloc -b
Spécifie le numéro de bloc d'un super bloc alternatif si le bloc principal est endommagé.
-f
Force une vérification complète même si le superbloc n'a aucune erreur enregistrée.
-j journal-dev
Spécifie le périphérique journal externe, s'il y en a un.
-p
Répare automatiquement ou « nettoie » le système de fichiers sans saisie de la part de l'utilisateur.
-y
Répondre « oui » à toutes les questions.
Toutes les options de e2fsck sont spécifiées dans la page man de e2fsck(8).
Les cinq phases de base suivantes sont appliquées par e2fsck pendant l'exécution des :
  1. vérifications des inodes, des blocs et des tailles.
  2. vérifications des structures des répertoires.
  3. vérifications de la connectivité des répertoires.
  4. vérifications des comptes des références.
  5. vérifications des informations des résumés de groupes.
L'utilitaire e2image(8) peut être utilisé pour créer une image de métadonnées avant d'effectuer les réparations dans le but de fournir un diagnostique ou pour faire des tests. L'option -r doit être utilisée pour effectuer des tests afin de créer une fichier partiellement alloué de la même taille que le système de fichiers. e2fsck peut ensuite opérer directement sur le fichier résultant. L'option -Q doit être spécifiée si l'image va ensuite être archivée ou utilisée pour fournir un diagnostique. Ceci crée un format de fichier plus compact, qui convient mieux aux transferts.

11.2.2. XFS

Aucune réparation n'est effectuée automatiquement au moment du démarrage. Pour initier une vérification ou réparation du système de fichiers, l'outil xfs_repair est utilisé.

Note

Même si un binaire fsck.xfs se trouve dans le paquet xfsprogs, il n'est présent que pour satisfaire les initscripts qui recherchent un binaire fsck.filesystem au moment du démarrage. fsck.xfs se ferme immédiatement avec un code de sortie 0.
Une autre chose à prendre en considération est que les anciens paquets xfsprogs contiennent un outil xfs_check. Cet outil est très lent et s'adapte mal aux systèmes de fichiers de grande taille. Ainsi, il a été déconseillé en faveur de xfs_repair -n.
Un journal correct est requis sur le système de fichiers pour permettre à xfs_repair d'opérer. Si le système de fichiers n'a pas été démonté correctement, il doit être monté, puis démonté avant d'utiliser xfs_repair. Si le journal est corrompu et ne peut être relu, l'option -L peut être utilisée pour remettre le journal à zéro.

Important

L'option -L doit uniquement être utilisée si le journal ne peut pas être relu. L'option ignore toutes les mises à jour de métadonnées dans le journal et provoquera des incohérences supplémentaires.
Il est possible d'exécuter xfs_repair lors de tests à vide, en mode de vérification seule, en utilisant l'option -n. Aucune modification ne se produira sur le système de fichiers lorsque cette option est indiquée.
xfs_repair ne peut prendre qu'un petit nombre d'options. Les options communément utilisées incluent :
-n
Mode sans modifications. Opération de vérification seule.
-L
Journal sans métadonnées. Utiliser uniquement si le journal ne peut pas être relu en étant monté.
-m maxmem
Limite la mémoire utilisée pendant l'exécution à un maxmem de MB. 0 peut être spécifié pour obtenir une estimation approximative de la quantité minimum de mémoire requise.
-l logdev
Spécifie le périphérique de journalisation externe, si présent.
Toutes les options de xfs_repair sont indiquées dans la page man xfs_repair(8).
Les huit phases de base suivantes sont appliquées par xfs_repair pendant l'exécution des :
  1. vérifications des inodes et des mappages (addressage) de blocs d'inodes.
  2. vérifications des cartes d'allocation d'inodes.
  3. vérifications de la taille des inodes.
  4. vérifications des répertoires.
  5. vérifications des noms de chemins d'accès.
  6. vérification du nombre de liens.
  7. Vérifications Freemap.
  8. Vérifications de super blocs.
Ces phases, ainsi que les messages imprimés pendant l'opération, sont documentés en détails sur la page man de xfs_repair(8).
xfs_repair n'est pas interactif. Toutes les opérations sont effectuées automatiquement sans saisie de la part de l'utilisateur.
S'il est nécessaire de créer une image des métadonnées avant d'effectuer les réparations, pour faire un diagnostique ou des tests, les utilitaires xfs_metadump(8) et xfs_mdrestore(8) peuvent être utilisés.

11.2.3. Btrfs

L'outil btrfsck est utilisé pour vérifier et réparer les systèmes de fichiers btrfs. Cet outil est toujours en cours de développement et pourrait ne pas détecter ou réparer tous les types de corruption de système de fichiers.
Par défaut, btrfsck n'effectue pas de modification sur le système de fichiers ; autrement dit, il exécute le mode vérification-seule par défaut. Si des réparations sont souhaitées, l'option --repair doit être spécifiée.
Les trois phases de base suivantes sont appliquées par btrfsck pendant l'exécution des :
  1. vérifications des extensions.
  2. vérifications de la racine du système de fichiers.
  3. vérifications des comptes des références root.
L'utilitaire btrfs-image(8) peut être utilisé pour créer une image des métadonnées avant les réparations afin d'effectuer des diagnostiques ou de faire des tests.