E2fsck

Un article de WindowsLinux.Net - Astuces pour Windows et Linux.

Sommaire

Définition

e2fsck permet de vérifier l'intégrité des fichiers présents sur le disque dur d'un ordinateur utilisant le système de fichier ext.

Exécutables

"fsck" (abréviation de file system check) permet de vérifier les fichiers. Ce n'est pas un "scandisk" à proprement parler. Deux utilitaires sont utilisés pour vérifier les fichiers :

  • e2fsck qui vérfie les partitions ext des distributions Linux.
  • tune2fs qui configure la fréquence des contrôles d'intégrité, et d'autres éléments configurables.

e2fsck

Il ne faut jamais exécuter e2fsck sur un disque dur utilisé par votre système !

C'est pour cela qu'il est recommandé d'exécuter e2fsck au redémarrage du poste, ou à partir d'un boot cd.

Il faut donc configurer e2fsck avec l'utilitaire : tune2fs.

tune2fs

Avant toutes choses, il faut faire un man tune2fs.

Il faut démonter vos volumes qui ne sont pas ceux de /root avant de lancer tune2fs. Sans faire cette opération vos modifications ne seront pas enregistrées - et donc perdues - au prochain démarrage.


Vous pouvez définir le déclenchement de fsck comme spécifié ci-dessous :

  • en nombre de démarrages maximums sans vérification : "maximum mount ount" ( -c <nombre> )
  • en unité de temps ( -i + <jours>d <semaines>w <mois>m)
  • en utilisant une combinaison de ces deux types de réglages.


Exemple :

  • Une vérification tous les 5 jours, avec 20 montages du disque dur :
# tune2fs -c 20  -i 5d /dev/hda1
  • Remettre le réglage par défaut du système (une vérification tous les 30 montages) :
# tune2fs -c 30 -i 0d /dev/hda1


  • Lire les caractéristiques de la partition hda1 :
# tune2fs -l /dev/hda1
tune2fs 1.40-WIP (14-Nov-2006)
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          00000a00-a0a0-0aa0-a0a0-a00000a0a0aa
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal resize_inode dir_index filetype sparse_super
Filesystem flags:         signed directory hash
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              62248
Block count:              248976
Reserved block count:     12448
Free blocks:              227857
Free inodes:              62220
First block:              1
Block size:               1024
Fragment size:            1024
Reserved GDT blocks:      256
Blocks per group:         8192
Fragments per group:      8192
Inodes per group:         2008
Inode blocks per group:   251
Filesystem created:       Mon Oct 29 23:39:01 2007
Last mount time:          n/a
Last write time:          Thu Jan 31 21:14:54 2008
Mount count:              0
Maximum mount count:      28
Last checked:             Thu Jan 31 21:14:54 2008
Check interval:           15552000 (6 months)
Next check after:         Tue Jul 29 22:14:54 2008
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               128
Journal inode:            8
Default directory hash:   tea
Directory Hash Seed:      00000a00-a0a0-0aa0-a0a0-a00000a0a0aa
Journal backup:           inode blocks


Vérification au redémarrage

Taper ceci :

# touch /forcefsck

Ceci crée un fichier vierge nommé forcefsck à la racine. Ceci est un signal unique lors de la lecture des scripts de démarrage (/etc/rc) et spécialement à ceux-ci :

  • /etc/rcS.d/S10checkroot.sh pour la partition racine et
  • /etc/rcS.d/S30checkfs.sh pour les autres partitions ext3

Le script de démarrage va identifier ce signal en temps utile et lancera fsck.


Il vous reste à redémarrer l'ordinateur :

# reboot

Une autre méthode est de modifier le fichier :

/etc/default/rcS

Où il faut déclarer l'option "FSCKFIX" à "yes". Ainsi les vérifications se font automatiquement, en réparant les erreurs.

# Set FSCKFIX to "yes" if you want to add "-y" to the fsck at startup.
FSCKFIX=no

Vérification à l'extinction

Possible sous Ubuntu, non testé sous Debian :

https://wiki.ubuntu.com/AutoFsck


Interface graphique :

http://doc.ubuntu-fr.org/bonager



Voici cependant un résumé des commandes possibles :