Présentation
Le fsck (Vérification de la cohérence du système de fichiers) L'utilitaire Linux vérifie les systèmes de fichiers pour les erreurs ou les problèmes en suspens. L'outil est utilisé pour corriger les erreurs potentielles et générer des rapports.
Cet utilitaire est fourni par défaut avec les distributions Linux. Aucune étape spécifique ou procédure d'installation n'est requise pour utiliser fsck. Une fois le terminal chargé, vous êtes prêt à exploiter les fonctionnalités de l'outil.
Suivez ce guide pour apprendre comment utiliser fsck pour vérifier et réparer le système de fichiers sur une machine Linux . Le didacticiel répertorie des exemples d'utilisation de l'outil et pour quels cas d'utilisation.
Prérequis
- Système de type Linux ou UNIX
- Accès à un terminal ou à une ligne de commande
- Un utilisateur disposant des autorisations root pour exécuter l'outil
Quand utiliser fsck sous Linux
L'outil fsck peut être utilisé dans diverses situations :
- Utilisez fsck pour exécuter une vérification du système de fichiers en tant que maintenance préventive ou en cas de problème avec votre système.
- Un problème courant que fsck peut diagnostiquer est lorsque le système ne démarre pas .
- Une autre est lorsque vous obtenez une erreur d'entrée/sortie lorsque les fichiers de votre système sont corrompus.
- Vous pouvez également utiliser l'utilitaire fsck pour vérifier l'état des disques externes , comme les cartes SD ou clés USB .
Syntaxe fsck de base
La syntaxe de base de l'utilitaire fsck suit ce modèle :
fsck <options> <filesystem>
Dans l'exemple ci-dessus, filesystem
peut être un périphérique, une partition, un point de montage, etc. Vous pouvez également utiliser des options spécifiques au système de fichiers à la fin de la commande.
Comment vérifier et réparer le système de fichiers
Il y a quelques étapes à suivre avant de vérifier et de réparer votre système de fichiers. Vous devez localiser un appareil et le démonter.
Afficher les disques et partitions montés
Pour afficher tous les périphériques montés sur votre système et vérifier l'emplacement du disque, utilisez l'un des outils disponibles sous Linux.
Une méthode pour localiser le disque que vous souhaitez analyser consiste à répertorier les disques du système de fichiers avec le df
commande :
df -h
L'outil imprime l'utilisation des données sur votre système et vos systèmes de fichiers. Prenez note du disque que vous souhaitez vérifier avec le fsck
commande.
Pour afficher les partitions pour votre premier disque, par exemple, utilisez la commande suivante :
sudo parted /dev/sda 'print'
sda est la façon dont Linux fait référence à votre premier disque SCSI. Si vous en avez deux, le second serait sdb , et ainsi de suite.
Dans notre exemple, nous avons obtenu un résultat puisqu'il n'y avait qu'une seule partition sur cette machine virtuelle. Vous obtiendrez plus de résultats si vous avez plus de partitions.
Le nom du disque ici est /dev/sda
puis le nombre de partitions est affiché dans le Nombre colonne. Dans notre cas, c'est un :sda1 .
Démonter le disque
Avant de pouvoir exécuter une vérification de disque avec fsck
, vous devez démonter un disque ou une partition. Si vous essayez d'exécuter fsck
sur un disque ou une partition monté, vous recevrez un avertissement :
Assurez-vous d'exécuter le unmount
commande :
sudo umount /dev/sdb
Remplacez /dev/sdb
avec l'appareil que vous souhaitez démonter.
Notez que vous ne pouvez pas démonter les systèmes de fichiers racine. Par conséquent, maintenant fsck
ne peut pas être utilisé sur une machine en marche. Plus d'informations à ce sujet vers la fin du guide.
Exécutez fsck pour vérifier les erreurs
Maintenant que vous avez démonté le disque, vous pouvez exécuter fsck
. Pour vérifier le deuxième disque, entrez :
sudo fsck /dev/sdb
L'exemple ci-dessus montre la sortie d'un disque propre. S'il y a plusieurs problèmes sur votre disque, une invite apparaît pour chacun d'entre eux où vous devez confirmer l'action.
Le code de sortie renvoyé par l'utilitaire fsck est la somme de ces états :
Monter le disque
Lorsque vous avez terminé de vérifier et de réparer un appareil, montez le disque pour pouvoir l'utiliser à nouveau.
Dans notre cas, nous allons remonter la sdb disque :
mount /dev/sdb
Faire un essai avec fsck
Avant d'effectuer une vérification en direct, vous pouvez effectuer un test avec fsck. Passez le -N
l'option fsck
commande pour effectuer un test :
sudo fsck -N /dev/sdb
La sortie imprime ce qui se passerait mais n'exécute aucune action.
Corrigez automatiquement les erreurs détectées avec fsck
Pour essayer de résoudre les problèmes potentiels sans recevoir d'invite, transmettez le -y
option pour fsck
.
sudo fsck -y /dev/sdb
De cette façon, vous dites "oui, essayez de corriger toutes les erreurs détectées ” sans être invité à chaque fois.
Si aucune erreur n'est trouvée, la sortie est la même que sans le -y
option.
Ignorer la réparation mais imprimer les erreurs fsck dans la sortie
Utilisez le -n
option si vous souhaitez vérifier les erreurs potentielles sur un système de fichiers sans les réparer.
Nous avons un deuxième lecteur sdb avec quelques erreurs de journalisation. Le -n
flag imprime l'erreur sans la corriger :
sudo fsck -n /dev/sdb
Forcer fsck à effectuer une vérification du système de fichiers
Lorsque vous effectuez un fsck sur un périphérique propre, l'outil ignore la vérification du système de fichiers. Si vous voulez forcer la vérification du système de fichiers, utilisez le -f
option.
Par exemple :
sudo fsck -f /dev/sdb
L'analyse effectuera les cinq vérifications pour rechercher les corruptions même lorsqu'elle pense qu'il n'y a pas de problèmes.
Exécutez fsck sur tous les systèmes de fichiers à la fois
Si vous souhaitez effectuer une vérification sur tous les systèmes de fichiers avec fsck en une seule fois, passez le -A
drapeau. Cette option passera par etc/fstab
fichier en une seule fois.
Étant donné que les systèmes de fichiers racine ne peuvent pas être démontés sur une machine en cours d'exécution, ajoutez le -R
possibilité de les ignorer :
fsck -AR
Pour éviter les invites, ajoutez le -y
option dont nous avons parlé.
Ignorer fsck sur un système de fichiers spécifique
Si vous voulez que fsck ignore la vérification d'un système de fichiers, vous devez ajouter -t
et "non ” devant un système de fichiers.
Par exemple, pour ignorer ext3 système de fichiers, exécutez cette commande :
sudo fsck -AR -t noext3 -y
Nous avons ajouté -y
pour ignorer les invites.
Ignorer Fsck sur les systèmes de fichiers montés
Pour vous assurer que vous n'essayez pas d'exécuter fsck sur un système de fichiers monté, ajoutez le -M
option. Cet indicateur indique à l'outil fsck d'ignorer tous les systèmes de fichiers montés.
Pour vous montrer la différence, nous allons exécuter fsck sur sdb lorsqu'il est monté, puis lorsque nous le démontons.
sudo fsck -M /dev/sdb
Alors que sdb est monté, l'outil sort sans effectuer de contrôle. Ensuite, nous démontons sdb et exécutez à nouveau la même commande. Cette fois, fsck
vérifie le disque et le signale comme propre ou avec des erreurs.
Remarque : Pour supprimer la première ligne de titre de l'outil fsck "fsck de util-linux 2.31.1 ” utilisez le -T
option.
Exécutez fsck sur la partition racine Linux
Comme nous l'avons déjà mentionné, fsck ne peut pas vérifier les partitions racine sur une machine en cours d'exécution car elles sont montées et utilisées. Cependant, même les partitions racine Linux peuvent être vérifiées si vous démarrez en mode de récupération et exécutez la vérification fsck :
1. Pour ce faire, allumez ou redémarrez votre machine via l'interface graphique ou en utilisant le terminal :
sudo reboot
2. Appuyez et maintenez la touche shift clé lors du démarrage. Le menu GNU GRUB apparaît.
3. Sélectionnez Options avancées pour Ubuntu .
4. Ensuite, sélectionnez l'entrée avec (mode de récupération) à la fin. Laissez le système se charger dans le menu de récupération.
5. Sélectionnez fsck dans le menu.
6. Confirmez en sélectionnant
7. Une fois terminé, sélectionnez reprendre dans le menu de récupération pour démarrer la machine.
Et si fsck est interrompu ?
Vous ne devriez pas interrompre l'outil fsck pendant qu'il est en cours. Cependant, si le processus est interrompu, fsck terminera la vérification en cours puis s'arrêtera.
Si l'utilitaire a trouvé une erreur pendant le processus de vérification, il n'essaiera pas de réparer quoi que ce soit en cas d'interruption. Vous pouvez réexécuter la vérification la prochaine fois et la laisser se terminer.
Résumé des options de la commande Linux fsck
Pour conclure, voici la liste des options que vous pouvez utiliser avec l'utilitaire Linux fsck .
Option | Description |
---|---|
-a | Essayez de réparer automatiquement les erreurs du système de fichiers. Il n'y aura pas d'invite, alors utilisez-le avec prudence. |
-A | Vérifiez tous les systèmes de fichiers répertoriés dans /etc/fstab. |
-C | Afficher la progression pour les systèmes de fichiers ext2 et ext3. |
-f | Forcer fsck à vérifier un système de fichiers. L'outil vérifie même lorsque le système de fichiers semble être propre. |
-l | Verrouillez le périphérique pour empêcher d'autres programmes d'utiliser la partition pendant l'analyse et la réparation. |
-M | Ne pas vérifier les systèmes de fichiers montés. L'outil renvoie un code de sortie 0 lorsqu'un système de fichiers est monté. |
-N | Faites un essai. La sortie imprime ce que le fsck ferait sans exécuter aucune action. Les messages d'avertissement ou d'erreur sont également imprimés. |
-P | Utiliser pour exécuter une analyse sur plusieurs systèmes de fichiers en parallèle. Cela peut causer des problèmes, selon votre configuration. Utiliser avec précaution. |
-R | Dites à l'outil fsck de ne pas vérifier les systèmes de fichiers racine lorsque vous utilisez l'option -A. |
-r | Statistiques du périphérique d'impression. |
-t | Spécifiez le(s) type(s) de systèmes de fichiers à vérifier avec fsck. Consultez la page de manuel pour des informations détaillées. |
-T | Masquer le titre au démarrage de l'outil. |
-y | Essayez de réparer automatiquement les erreurs du système de fichiers lors de la vérification. |
-V | Sortie détaillée. |