Comment utiliser ‘fsck’ pour réparer les erreurs du système de fichiers Linux

Les systèmes de fichiers Linux sont responsables de l’organisation de la manière dont les données sont stockées et récupérées. D’une manière ou d’une autre, avec le temps, le système de fichiers peut devenir corrompu et certaines de ses parties peuvent devenir inaccessibles. Si votre système de fichiers développe une telle incohérence, il est recommandé de vérifier son intégrité.

Cela peut être réalisé via un utilitaire système appelé fsck (vérification de la cohérence du système de fichiers), qui vérifie automatiquement le système de fichiers racine lors du démarrage ou exécuté manuellement.

Dans cet article, nous allons passer en revue la commande fsck et son utilisation pour vous aider à réparer les erreurs de disque Linux.

Quand utiliser la commande fsck sous Linux

Il existe différentes situations où vous voudrez exécuter fsck. Voici quelques exemples :

  • Le système refuse de démarrer.
  • Les fichiers sur le système deviennent corrompus (vous pouvez souvent voir des erreurs d’entrée/sortie).
  • Le lecteur attaché (y compris les clés USB/cartes SD) ne fonctionne pas comme prévu.

Options de la commande fsck

La commande fsck doit être exécutée avec les privilèges superutilisateur ou root. Vous pouvez l’utiliser avec différents arguments. Leur utilisation dépend de votre cas spécifique. Vous trouverez ci-dessous certaines des options les plus importantes :

  • -A – Utilisé pour vérifier tous les systèmes de fichiers. La liste est extraite de /etc/fstab.
  • -C – Afficher la barre de progression.
  • -l – Verrouille l’appareil pour garantir qu’aucun autre programme n’essaiera d’utiliser la partition pendant la vérification.
  • -M – Ne pas vérifier les systèmes de fichiers montés.
  • -N – Afficher uniquement ce qui serait fait – aucun changement réel n’est effectué.
  • -P – Si vous voulez vérifier les systèmes de fichiers en parallèle, y compris la racine.
  • -R – Ne pas vérifier le système de fichiers racine. Cela est utile uniquement avec ‘-A‘.
  • -r – Fournir des statistiques pour chaque appareil vérifié.
  • -T – Ne pas afficher le titre.
  • -t – Spécifie exclusivement les types de systèmes de fichiers Linux à vérifier. Les types peuvent être des listes séparées par des virgules.
  • -V – Fournir une description de ce qui est en train d’être fait.

Exécutez la commande fsck pour réparer les erreurs du système de fichiers Linux

Pour exécuter fsck, vous devrez vous assurer que la partition que vous allez vérifier n’est pas montée. Dans le cadre de cet article, je vais utiliser mon deuxième disque /dev/sdb monté dans /mnt.

Voici ce qui se passe si j’essaie d’exécuter fsck lorsque la partition est montée.

# fsck /dev/sdb
Run fsck on Mounted Partition

Pour éviter cela, démontez la partition en utilisant.

# umount /dev/sdb

Ensuite, fsck peut être exécuté en toute sécurité.

# fsck /dev/sdb
Run fsck on Linux Partition

Comprendre les codes de sortie fsck

Après l’exécution de fsck, il renverra un code de sortie. Ces codes peuvent être consultés dans le manuel de fsck en exécutant :

# man fsck

0      No errors
1      Filesystem errors corrected
2      System should be rebooted
4      Filesystem errors were left uncorrected
8      Operational error
16     Usage or syntax error
32     Checking canceled by user request
128    Shared-library error            

Réparer le système de fichiers Linux avec fsck

Parfois, plus d’une erreur peut être trouvée sur un système de fichiers. Dans de tels cas, vous pouvez vouloir que fsck tente automatiquement de corriger les erreurs. Cela peut être fait avec :

# fsck -y /dev/sdb

Le drapeau -y, répond automatiquement “oui” à toutes les invitations de fsck pour corriger une erreur.

De même, vous pouvez exécuter la même commande sur tous les systèmes de fichiers (sans root) :

$ fsck -AR -y 

Comment exécuter fsck sur la partition racine de Linux

Dans certains cas, vous devrez peut-être exécuter fsck sur la partition root de votre système. Comme vous ne pouvez pas exécuter fsck lorsque la partition est montée, vous pouvez essayer l’une de ces options :

  • Forcer fsck au démarrage du système
  • Exécuter fsck en mode de secours

Nous examinerons les deux situations.

Forcer fsck au démarrage du système

C’est relativement facile à accomplir, la seule chose que vous devez faire est de créer un fichier appelé forcefsck dans la partition racine de votre système. Utilisez la commande suivante :

# touch /forcefsck

Ensuite, vous pouvez simplement forcer ou planifier un redémarrage de votre système. Lors du prochain démarrage, le fsck sera effectué. Si le temps d’arrêt est critique, il est recommandé de planifier cela avec soin, car s’il y a de nombreux inodes utilisés sur votre système, le fsck peut prendre un certain temps supplémentaire.

Après le démarrage de votre système, vérifiez si le fichier existe toujours :

# ls /forcefsck

Si c’est le cas, vous voudrez peut-être le supprimer afin d’éviter un fsck à chaque démarrage du système.

Exécutez fsck en mode de secours

L’exécution de fsck en mode de secours nécessite quelques étapes supplémentaires. Tout d’abord, préparez votre système pour le redémarrage. Arrêtez tous les services critiques comme MySQL/MariaDB, etc., puis tapez.

# reboot

Pendant le démarrage, maintenez la touche shift enfoncée afin que le menu grub soit affiché. Sélectionnez « Options avancées« .

Grub Advanced Options

Ensuite, choisissez « Mode de récupération« .

Select Linux Recovery Mode

Dans le menu suivant, sélectionnez « fsck« .

Select fsck Utility

On vous demandera si vous souhaitez que votre système de fichiers / soit remonté. Sélectionnez "oui".

Confirm Root Filesystem

Vous devriez voir quelque chose de similaire à ceci.

Running fsck Filesystem Check

Vous pouvez ensuite reprendre le fonctionnement normal en sélectionnant « Reprendre ».

Select Normal Boot
Conclusion

Dans ce tutoriel, vous avez appris comment utiliser fsck et exécuter des vérifications de cohérence sur différents systèmes de fichiers Linux. Si vous avez des questions sur fsck, n’hésitez pas à les soumettre dans la section des commentaires ci-dessous.

Source:
https://www.tecmint.com/fsck-repair-file-system-errors-in-linux/