Scroll to navigation

FSCK(8) Administration Système FSCK(8)

NOM

fsck - Vérifier et réparer un système de fichiers Linux

SYNOPSIS

fsck [-lsAVRTMNP] [-r [fd]] [-C [fd]] [-t fstype] [filesystem...] [--] [fs-specific-options]

DESCRIPTION

fsck is used to check and optionally repair one or more Linux filesystems. filesystem can be a device name (e.g., /dev/hdc1, /dev/sdb2), a mount point (e.g., /, /usr, /home), or a filesystem label or UUID specifier (e.g., UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd or LABEL=root). Normally, the fsck program will try to handle filesystems on different physical disk drives in parallel to reduce the total amount of time needed to check all of them.

Si aucun système de fichiers n’est précisé sur la ligne de commande et que l’option -A n’est pas indiquée, par défaut fsck vérifiera séquentiellement les systèmes de fichiers présents dans /etc/fstab. C’est équivalent à préciser les options -As.

Le code de retour de fsck est la somme des conditions suivantes :

0

Pas d’erreur.

1

Erreurs de système de fichiers corrigées.

2

Le système devrait être redémarré.

4

Il reste des erreurs non corrigées sur le système de fichiers.

8

Erreur lors de l’opération.

16

Erreur d’utilisation ou de syntaxe.

32

Vérification annulée par l’utilisateur.

128

Erreur de bibliothèque partagée.

Le code de retour renvoyé lorsque tous les systèmes de fichiers sont vérifiés est le résultat de l’opération OU bit à bit sur les codes de retour de chacun des systèmes de fichiers vérifiés.

En fait, fsck n’est simplement qu’une interface pour les différents vérificateurs de systèmes de fichiers (fsck.type_sf) disponibles sous Linux. Le vérificateur spécifique à un système est recherché successivement dans la variable d’environnement PATH. Si celle-ci n’est pas définie, /sbin est utilisé.

Veuillez consulter les pages de manuel des vérificateurs spécifiques à un système de fichiers pour de plus amples précisions.

OPTIONS

-l

Créer un ficher verrou flock(2) exclusif (/run/fsck/<nom_disque>.lock) pour tout le périphérique. Cette option peut être utilisée avec un seul périphérique (cela signifie que -A et -l sont mutuellement exclusives). Cette option est recommandée quand plusieurs instances de fsck sont exécutées en même temps. L’option est ignorée quand elle est utilisée avec plusieurs périphériques ou avec des disques non tournants. fsck ne verrouille pas les périphériques sous-jacents quand elle est exécutée pour vérifier des périphériques empilés (MD ou DM par exemple) — cette fonctionnalité n’est pas encore implémentée.

-r [descripteur]

Rendre compte de statistiques pour toutes les vérifications terminées. Ces statistiques comprennent le code de retour, la taille de mémoire résidente maximale utilisée (en kilooctet), le temps total écoulé ainsi que les temps utilisateur et processeur utilisés par la vérification. Par exemple :

/dev/sda1: status 0, rss 92828, real 4.002804, user 2.677592, sys 0.86186

Les frontaux graphiques peuvent indiquer un descripteur de fichier, auquel cas l’information de barre de progression est envoyée à ce descripteur de fichier dans un format analysable par une machine. Par exemple :

/dev/sda1 0 92828 4.002804 2.677592 0.86186

-s

Sérialiser les opérations de fsck. Cette option est conseillée si vous êtes en train de vérifier plusieurs systèmes de fichiers en mode interactif. Remarque : e2fsck(8) fonctionne par défaut en mode interactif. Pour que e2fsck(8) fonctionne en mode non interactif, vous devez indiquer l’option -p ou -a si vous désirez que les erreurs soient corrigées automatiquement, ou l’option -n si vous ne le souhaitez pas.

-t liste_sf

Indiquer le ou les types de systèmes de fichiers qui seront vérifiés. Quand l’attribut -A est indiqué, seuls les systèmes de fichiers qui ont une correspondance dans liste_sf sont vérifiés. Le paramètre liste_sf est une liste de systèmes de fichiers et d’options séparés par des virgules. Tous les systèmes de fichiers de cette liste peuvent être préfixés par l’opérateur de négation « no » ou « ! », qui indique que seuls les systèmes de fichiers qui ne sont pas mentionnés dans liste_sf seront vérifiés. Si aucun système de fichiers dans liste_sf n’est préfixé par l’opérateur de négation, seuls les systèmes de fichiers mentionnés seront vérifiés.

Des options, séparées par des virgules, peuvent être incluses dans liste_sf. Elles doivent avoir le format opts=option_sf. Si une option est présente, alors seuls les systèmes de fichiers ayant une option_sf dans le champ d’options de montage de /etc/fstab seront vérifiés. Si l’option est préfixée par l’opérateur de négation, alors seuls les systèmes de fichiers n’ayant pas option_sf dans leur champ d’options de montage de /etc/fstab seront vérifiés.

Par exemple, si opts=ro se trouve dans liste_sf, alors seuls les systèmes de fichiers de /etc/fstab qui ont l’option ro seront vérifiés.

Pour la compatibilité avec les distributions Mandrake dont les scripts de démarrage dépendent d’un changement non autorisé d’UI dans le programme fsck, si le type de système de fichiers loop est présent dans liste_sf, il est traité comme si opts=loop était indiqué en tant que paramètre de l’option -t.

Normalement, le type de système de fichiers est déduit en recherchant système_de_fichiers dans le fichier /etc/fstab et en utilisant l’entrée correspondante. Si le type ne peut être déduit et qu’il n’y a qu’un seul système de fichiers en argument de l’option -t, fsck utilisera le système de fichiers indiqué. Si ce type n’est pas disponible, alors le système de fichiers par défaut (actuellement ext2) est utilisé.

-A

Parcourir le fichier /etc/fstab et essayer de vérifier tous les systèmes de fichiers en une seule fois. Cette option est généralement utilisée dans le fichier d’initialisation système /etc/rc, plutôt que d’avoir des commandes multiples pour vérifier un par un chaque système de fichiers.

Le système de fichiers racine sera vérifié en premier à moins que l’option -P ne soit indiquée (voir ci-dessous). Après quoi, les systèmes de fichiers seront vérifiés dans l’ordre indiqué par le (sixième) champ fs_passno du fichier /etc/fstab. Les systèmes de fichiers avec une valeur fs_passno de 0 sont ignorés. Ceux avec une valeur supérieure à 0 seront vérifiés dans l’ordre croissant des fs_passno. S’il y a égalité entre plusieurs systèmes de fichiers, fsck tentera de les vérifier en parallèle, tout en évitant toutefois les vérifications simultanées sur le même disque physique.

fsck does not check stacked devices (RAIDs, dm-crypt, ...) in parallel with any other device. See below for FSCK_FORCE_ALL_PARALLEL setting. The /sys filesystem is used to determine dependencies between devices.

De ce fait, une configuration très commune pour le fichier /etc/fstab est d’avoir un système racine avec une valeur fs_passno de 1 et pour tous les autres systèmes de fichiers d’avoir cette valeur à 2. Cela autorise fsck à lancer automatiquement en parallèle les vérifications si c’est avantageux. Les administrateurs système peuvent choisir de ne pas utiliser cette configuration ; par exemple, si la machine dispose de peu de mémoire et qu’une pagination excessive est à éviter.

fsck normally does not check whether the device actually exists before calling a filesystem specific checker. Therefore non-existing devices may cause the system to enter filesystem repair mode during boot if the filesystem specific checker returns a fatal error. The /etc/fstab mount option nofail may be used to have fsck skip non-existing devices. fsck also skips non-existing devices that have the special filesystem type auto.

-C [descripteur]

Afficher une barre de progression pour les vérificateurs qui le permettent (actuellement uniquement disponible pour ext[234]). fsck gérera les vérificateurs de telle sorte qu’un seul d’entre eux affichera une barre de progression à un instant donné. Les interfaces graphiques peuvent fournir un descripteur de fichier, dans lequel les informations d’avancement seront envoyées.

-M

Ne pas vérifier les systèmes de fichiers montés et renvoyer le code de retour 0 pour les systèmes de fichiers montés

-N

Ne pas exécuter, montrer uniquement ce qui devrait être accompli.

-P

Quand l’attribut -A est utilisé, vérifier le système de fichiers racine en parallèle des autres systèmes de fichiers. Ce n’est pas la chose la plus sûre au monde, puisque si le système de fichiers est potentiellement défectueux, e2fsck(8) pourrait être corrompu ! Cette option est principalement fournie aux administrateurs système qui n’ont pas une partition racine petite et compacte (ce qui est vraiment la bonne solution).

-R

Lors de la vérification de tous les systèmes de fichiers (avec l’attribut -A), ignorer le système de fichiers racine (c’est pratique si le système de fichiers racine a déjà été monté en lecture/écriture).

-T

Ne pas afficher le titre au démarrage.

-V

Produire une sortie bavarde, en affichant toutes les commandes spécifiques au système de fichiers qui sont exécutées.

-?, --help

Afficher l’aide-mémoire puis quitter.

--version

Afficher le nom et la version du logiciel et quitter.

OPTIONS SPÉCIFIQUES DE SYSTÈMES DE FICHIERS

Options which are not understood by fsck are passed to the filesystem-specific checker!

Ces options ne doivent pas prendre de paramètre puisqu’il n’y a aucun moyen pour fsck de différencier correctement les options qui prennent des paramètres de celles qui n’en prennent pas.

Les options et paramètres qui suivent -- sont traités comme des options spécifiques au système de fichiers et sont transmis au vérificateur correspondant.

Veuillez remarquer que fsck n’est pas conçu pour transmettre arbitrairement des options complexes aux vérificateurs de systèmes de fichiers. Si vous êtes en train de faire quelque chose de complexe, exécutez directement le vérificateur spécifique du système de fichiers. Si vous passez à fsck des options et paramètres horriblement compliqués et que ça ne fonctionne pas, il ne faut pas le signaler comme un bogue. Vous êtes certainement en train de faire quelque chose que vous ne devriez pas accomplir avec fsck. Les options des différents vérificateurs spécifiques à un système de fichiers ne sont pas normalisées.

ENVIRONNEMENT

Le comportement de fsck peut être modifié par les variables d’environnement suivantes :

FSCK_FORCE_ALL_PARALLEL

Si cette variable d’environnement est positionnée, fsck cherchera à vérifier tous les systèmes de fichiers en parallèle, sans se soucier du fait qu’ils soient sur le même périphérique. (C’est utile pour les systèmes RAID ou les systèmes de stockage de haut niveau tels que ceux vendus par IBM ou EMC). Remarquez que la valeur fs_passno est toujours utilisée.

FSCK_MAX_INST

Cette variable d’environnement limitera le nombre maximal de vérifications lancées en parallèle. Cela permet aux systèmes avec un nombre important de disques d’éviter à fsck de démarrer un trop grand nombre de vérifications de systèmes de fichiers en même temps, ce qui pourrait surcharger les ressources processeur et mémoire du système. Si elle vaut 0, alors le nombre de vérifications n’est pas limité. C’est la valeur par défaut, mais des versions futures de fsck pourraient déterminer ce nombre en fonction de données obtenues du système d’exploitation.

PATH

La variable d’environnement PATH est utilisée pour trouver les vérificateurs de système de fichiers.

FSTAB_FILE

Cette variable d’environnement permet à l’administrateur système de contourner l’emplacement standard du fichier /etc/fstab. C’est aussi utile pour les développeurs de fsck.

LIBBLKID_DEBUG=all

Activer la sortie de débogage de libblkid.

LIBMOUNT_DEBUG=all

Activer la sortie de débogage de libmount.

FICHIERS

/etc/fstab

NOTES

During boot, systemd does not invoke fsck -A. Instead, it schedules the activation of mounts individually, taking into account dependencies on backing devices, networking, and other factors. Consequently, fsck is called individually for each device.

AUTEURS

Theodore Ts’o <tytso@mit.edu>>, Karel Zak <kzak@redhat.com>

VOIR AUSSI

fstab(5), mkfs(8), fsck.ext2(8) or fsck.ext3(8) or e2fsck(8), fsck.cramfs(8), fsck.jfs(8), fsck.nfs(8), fsck.minix(8), fsck.msdos(8), fsck.vfat(8), fsck.xfs(8), reiserfsck(8)

SIGNALER DES BOGUES

Pour signaler un bogue, utilisez le gestionnaire de bogues sur <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITÉ

La commande fsck fait partie du paquet util-linux, elle est disponible sur l’archive du noyau Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-05-14 util-linux 2.40.1