fsck (Français)
fsck signifie "file system check". Il est utilisé afin de vérifier et optionnellement réparer un (ou plusieurs) système(s) de fichiers Linux. Le programme fsck est apte à gérer les systèmes de fichiers sur différents disques durs physiques et, en parallèle, réduit le temps total requis pour vérifier tous les systèmes de fichiers (voir: fsck(8)).
Le processus de démarrage d'Arch Linux s'occupe de la procédure fsck pour vous et vérifiera toutes les partitions pertinentes sur votre (ou vos) disque(s), automatiquement, à chaque démarrage. Son usage depuis la ligne de commande devrait donc être rare.
Vérification du temps de démarrage
Mécanisme
Deux choses sont à prendre en compte:
- mkinitcpio vous offre la possibilité de vérifier votre racine avant de la monter via le hook fsck. Si vous faites cela, vous devez monter la «racine en lecture-écriture (root read-write) » via l'option
rw
de la ligne de commande du noyau.[1] -
Systemd vérifie tous les systèmes de fichiers dont le «numéro de passe fsck (fsck pass number)» est plus grand que 0 (soit depuis
/etc/fstab
soit depuis un fichier utilisateur). Pour la partition, celle-ci ne doit être montée en «lecture seule»ro
et ensuite remonté en «lecture-écriture» depuis Fstab (notez que l'option de montagedefaults
impliquerw
).
L'option 1 est recommandée par défaut et est ce que vous obtiendrez si vous suivez le guide d'installation. Si vous souhaitez plutôt bénéficier de l'option 2, vous devez supprimer le «hook» fsck
de mkinitcpio.conf
et utiliser ro
depuis la ligne de commande du noyau. Vous pouvez également choisir de désactiver fsck entièrement via la ligne de commande du noyau. fsck.mode=skip
, afin d'être certain de désactiver les deux options.
Forcer la vérification
Vous pouvez forcer la vérification fsck à chaque démarrage en ajoutant fsck.mode=force
aux paramètres du noyau. Cela vérifiera chaque système de fichiers présent sur la machine.
Comme alternative, systemd fournit systemd-fsck@.serviced(8), qui vérifie tous les systèmes de fichiers configurés n'ayant pas été vérifier par l'initramfs. Cependant, vérifier le système de fichier racine de cette façon peut provoquer un délai lors du processus de démarrage étant donné que le système doit être remonté.
forcefsck
à la racine d'une partition. Or, avec systemd, ceci ne fonctionne plus, et sous Archlinux, il faut appliquer uniquement ce qui est indiqué ci-dessus.Trucs & astuces
Tentative de réparation des blocs endommagés
Pour réparer automatiquement une portion endommagée, d'une partition ext2/ext3/ext4 ou FAT, lancez:
fsck -a
Réparer interactivement des blocs endommagés
Ceci est utile lorsque des fichiers sur la partition de boot ont été modifiés. Dans ce cas, démontez la partition de boot et utilisez ceci pour réparer les portions endommagées:
fsck -r disque
Modifier la fréquence de vérification
Par défaut, fsck vérifie le système de fichiers tous les trente démarrages (comptés individuellement pour chaque partition). Pour changer cette fréquence, lancez :
tune2fs -c 20 /dev/sda1
Dans cet exemple, 20
est le nombre de démarrages séparant deux vérifications.
Notez que 1
induirait une vérification à chaque démarrage alors que 0
reviendrait à ne jamais rien scanner.
Si vous souhaitez voir le nombre établi pour la fréquence et l'actuel compte relatif au montage pour une partition spécifique, utilisez:
dumpe2fs -h /dev/sda1 | grep -i 'mount count'
Options fstab
fstab est un fichier de configuration du système utilisé afin d'informer le noyau Linux de quelles partitions (systèmes de fichiers) il doit effectuer un montage et où sur l'arbre du système de fichiers.
Une entrée typique dans /etc/fstab
devrait ressembler à ceci :
/dev/sda1 / ext4 defaults 0 1 /dev/sda2 /other ext4 defaults 0 2 /dev/sda3 /win ntfs-3g defaults 0 0
La sixième colonne (en gras) est celle dédiée à fsck.
- 0 = Ne pas vérifier.
- 1 = Premier système de fichiers (partition) à vérifier ;
/
(La partition racine) devrait être déterminée sur 1. - 2 = Tous les autres systèmes de fichiers à vérifier.