logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

fsck

Examen et réparation de partitions

La commande fsck (File System Check ou File System Consistency Check) permet le contrôle et la réparation des partitions.
Ne pas confondre avec la défragmentation, fsck fait un check, une vérification de l'état du système de fichier, savoir si y'a pas d'erreur, de fichier/dossier partiellement écrit, des inodes agonisants et tout l'toutim, etc.
Bref, il fait la révision, mais ne refait pas la carrosserie :-) (c'est du captfab pur jus ça !)

Pour utiliser fsck, il faut connaître la partition à traiter car nous devons la démonter pour l'examiner/réparer.

Dans un terminal tapotez un petit fdisk comme ceci :

fdisk -l

qui nous renseignera sur le nom de la partition à examiner. Si la partition est montée, on peut aussi utiliser la commande df qui donnera une sortie plus explicite :

df -hT

Avec cette information, la démonter toujours sous root :

umount /dev/VotrePartition

Et si la partition n'est pas montée, elle est donc parfaitement opérationnelle pour exécuter la commande fsck dessus.
Merci à Oursonobo pour son intervention sur le forum là :

et enfin :

fsck /dev/VotrePartition

Pour l'examen et la réparation…

Fsck peut déterminer seul le type de la partition que nous lui désignons. Trôôô fort le bestiau…
Perso, j'y colle quand même le type : ext3, ou vfat… ou autres… cela donne :

 fsck.ext4

par exemple… pour une partition ext4, oui benet… et avec un point entre la commande fsck et le type désigné. À noter que l'option -t donne le même résultat, tous les chemins mènent à Rome : fsck -t ext4. De même que la commande e2fsck est destinée aux systèmes de fichiers ext2/ext3/ext4.

Bref, nous nous retrouvons avec l'examen de cette partition en cours et une demande de confirmation pour chaque réparation proposée.

 y = accepter

Et tout se refait une beauté tranquillement.

En final, remonter la partition

mount /dev/VotrePartition

et toc tout est bon maintenant…

Simulation

On peut simuler la commande fsck avec l'option -N

man fsck
retour de la commande man
-N     Ne pas exécuter, montre uniquement ce qui devrait être accompli.

Au démarrage :

Bon, tout va très bien pour les partitions démontables, mais pour les partitions systèmes et en particulier la partition racine ? Si jamais on modifie le système de fichier alors qu'on est en train de “réparer”, on risque de carrément tout casser !

La solution : Le faire au démarrage.

Une première solution est bien sûr de démarrer sur un autre système, comme un liveCD. Mais c'est lourd, donc pour les cas désespérés.

Une solution bien plus simple est de redémarrer en demandant une vérification au démarrage. Toujours en root :

shutdown -rF now

Si on ne veut pas redémarrer immédiatement mais simplement faire un test au prochain démarrage : FIXME (méthode obsolète depuis l'utilisation de systemd dans Debian, c'est à dire Debian 8 Jessie )

touch /forcefsck

Erreur au démarrage

Partition Système (ou racine /)

Si le système de fichier est défectueux, il peut arriver que le système vous renvoie un gentil message qui va ressembler à celui là :

  # fsck failed. Please repair manually and reboot.
  # Please note that the root file system is currently mounted read-only, to remount 
  # it read-write # mount -n -o remount,rw /
  # ctrl - D will exit from this shell and reboot the system

Que se passe-t-il ?
Par sécurité, le système démarre en mode de récupération et monte la partition système en lecture seule pour être certain de ne pas faire de bêtise en écrivant sur un système de fichier incohérent.

Bon là c'est moi qui paraît incohérent ^_^; la partition est montée mais on va quand même faire un fsck.
Comme elle est montée en lecture seule, on ne risque pas de faire une bêtise en écrivant durant la réparation.
Comme on est en mode “single-user” et qu'il n'y a pas pleins de trucs en train de tourner, on va pouvoir travailler tranquillement.

Vous entrez le mot de passe root quand il est demandé pour accéder à la console, et comme ci-dessus vous lancez le fsck :
(Bien sûr, vous adaptez la commande à votre cas, je considère ici que la partition / que je dois réparer se trouve en /dev/sda6,)

fsck -f -y  /dev/sda6
Explication des options :
  1. -f pour forcer,
  2. -y pour yes,réparer automatiquement sans confirmer.

Partition de stockage de données (autre que racine / du système lancé)

S'il ne s'agit pas de la partition système, après le démarrage normal, il faut la démonter :

Démontage de la partition sda7 :

umount /dev/sda7

Tapoter (en considérant que cette partition est en format ext3 par exemple) :

fsck.ext3 /dev/sda7

La procédure démarre et se poursuit comme précédemment !

Vérification automatique

Par défaut sur Debian, le fsck est lancé tous les 30 démarrages. Si vous avez un pc fixe que vous démarrez 1 fois par jour, ça fera une fois par mois, mais si vous avez un portable que vous démarrez 5 fois ou plus par jour, vous risquez de trouver ça pénible d'attendre le fsck.

D'abord, il faut savoir que :

le fait de vérifier une partition ou pas se trouve dans le fichier /etc/fstab dans la colonne <pass>
#<file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0

Proc n'est jamais testé ce qui est normal, cela ne correspond pas à un disque physique, (chiffre 0).



/dev/sda6       /               ext3    relatime,user_xattr,errors=remount-ro 0       1

La racine doit être en chiffre 1.



/dev/sda7       /home           ext3    relatime,user_xattr 0       2

La partition home est testée automatiquement (chiffre 2).



/dev/hda        /media/cdrom0   udf,iso9660 user,noauto     0       0

Le DVD n'est jamais testé, ce n'est pas un système de fichier testable comme ça ni réparable (chiffre 0).



Gestion des fréquences des vérifications

La modification de la fréquence de vérification se fait, pour les partitions ext2/ext3, avec tune2fs. Pour les autres types de partitions, se reporter à l'outil correspondant.

Il y a 2 paramètres modifiables :

Option -c nn

-c nn règle la fréquence tous les nn démarrage. Il est très fortement recommandé de faire la vérification au minimum tous les 100 redémarrages.

Option -i d|m|w

-i d|m|w règle un intervalle de temps en jour ou mois ou semaine

Exemple pour un portable

Si vous avez un portable, vous allez redémarrer plusieurs fois par jour, 30 sera un peu trop fréquent à votre goût, par contre un portable est exposé, donc trop éloigner les vérifications n'est pas une bonne idée.

Réglons par exemple une vérification tous les 50 démarrage avec un intervalle de temps de 2 semaines de la partition hda1 :

tune2fs -c 50 -i 2w /dev/hda1

Liens vers le forum

Perte de données

Réparer le système fichier avec fsck, ça veut dire le remettre dans un état cohérent. Ça ne garantit pas la préservation des données. Parfois l'état de certains fichiers est tellement incohérent que la seule façon de réparer est de les supprimer.

https://debian-facile.org/viewtopic.php?pid=332975#p332975

Remerciements

Mes remerciements à M. /usr/bin/man ainsi qu'à tous les rejetons de /usr/share/doc/

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/systeme/fsck.txt · Dernière modification: 20/07/2020 17:23 par --gilles--

Pied de page des forums

Propulsé par FluxBB