CHKDSK veut dire Check Disk, vérification disque.
CHKDSK est une commande qui vérifie le système d'enregistrement
des fichiers sur le disque (le système de fichiers). La commande CHKDSK /R fait souvent des miracles car
elle détecte et élimine les clusters défectueux après en avoir, si possible,
déplacé les fichiers. Lancée depuis la Console de Récupération ou un BARTPE
cette simple commande peut rétablir un démarrage qui ne se faisait plus. Et
c'est bien sûr toujours valable avec Vista et W7.
Attention : la plupart du temps un chkdsk est sans conséquence et plutôt bénéfique. Mais si on soupçonne qu'un disque dur est en train de lacher, commencer par effectuer une sauvegarde des documents et faire une copie du disque avec Drive Image XML présent sur le BARTPE UBCD4WIN. Si c'est possible, activer et vérifier le SMART.
- Comparaison des trois modes principaux de CHKDSK
- Plus d'infos sur CHKDSK
- Aide de CHKDSK
- CHKDSK en 5 phases des volumes NTFS
- Particularité du GUI
- Les résultats d'un CHKDSK sont dans l'Observateur d'Évènements
Les résultats d'un chkdsk sont dans le SVI Nouveau- Bootex.log
- CHKDSK
- CHKDSK /F
- CHKDSK /R
- CHKDSK /B
- CHKDSK sur un volume FAT32
- Erreurs : Exemples de mauvais résultats
- Clusters défectueux
- CHKDSK a trouvé des clusters défectueux. Que faire ?
- CHKDSK continue de trouver des secteurs défectueux
- Faut-il formater ?
- Formatage complet avec conservation des données
- Formatage partiel avec conservation des données
- Il est impossible d'écrire sur le deuxième secteur d'amorçage NTFS
- Qu'est-ce qu'un formatage bas niveau ?
- Terminologie (Cluster, Secteur, MBR, Boot Sector)
- Plantage de CHKDSK
- Mode natif
- AUTOCHK
- CONVERT
- Liens
- ANNEXE
- Pour ceux qui ont acheté un ordinateur avec Windows préinstallé et qui n'ont pas le CD ou le DVD d'installation
Info : cette section est devenue une page indépendante ==> http://fspsa.free.fr/pour-ceux-qui-n-ont-pas-le-cd.htm
Voici, avant d''aller nous perdre dans
les détails, un petit
tuto
qui raconte l'essentiel de ce qu'il y a à savoir.
Quand on parle de vérification de l'intégrité du disque, il s'agit en fait de la
vérification du système de fichiers (système d'enregistrement
des fichiers). On vérifie donc si la qualité du support magnétique est
suffisante pour retrouver à coup sûr les octets qui lui sont confiés. Si des
erreurs sont détectées, les octets sont sont déplacés vers une zone saine, et la
partie douteuse n'est plus utilisée.
Essayons à présent d'en savoir plus sur la commande
CHKDSK :
- Sans commutateur
- Avec le commutateur /F (/P depuis la Console de Récupération de Windows XP)
- Avec le commutateur /R
- Avec le commutateur /B (Vista et Windows7)
Ces tests sont effectués dans une Console CMD sous Windows (Démarrer>Exécuter>cmd).
Sur Vista/7 il faut exécuter le raccourci en tant qu'administrateur avec un clic
droit. Pour trouver le raccourci : touche WIN et taper cmd dans la barre de
recherche.
Ou faire WIN+R pour ouvrir la boîte Exécuter, et entrer cmd en
utilisant la combinaison CTL+MAJ+Entrée.
Depuis la Console de Récupération de XP, CHKDSK présente de légères différences :
CHKDSK /P au lieu de CHKDSK /F
Avec la Console de récupération de XP il est impératif de respecter les espaces.
Pour info, avec XP, il est considéré comme plus efficace d'utiliser CHKDSK depuis la
Console de Récupération
ou depuis un
BARTPE.
Avec Vista et W7 la CDR est devenue
Options de récupération système. Pour lancer un CHKDSK il faut d'abord
ouvrir une Console en cliquant sur "Invite de commandes". Ensuite changer de
volume en entrant C: et vérifier avec une commande DIR si on est bien sur le
volume de Windows. Si ce n'est pas le cas essayer D: car la présence d'une
partition de boot décale les lettres.
Si le verrouillage du volume est nécessaire, le disque ne peut être utilisé pendant l'opération. Cela peut entrainer une demande de redémarrage par le système pour effectuer l'opération en dehors de Windows. C'est le cas en particulier pour la partition système, celle sur laquelle est installée Windows, dont de nombreux fichiers sont en cours d'utilisation.
Commande |
Nombre de Phases |
Verrouillage du volume |
CHKDSK |
3 |
Purement informatif. Aucune correction n'est effectuée, l'activité du disque pouvant tromper CHKDSK qui pourrait signaler des erreurs alors qu'il n'y en a pas (faux positifs). Lever le doute avec /F ou /R. CHKDSK en lecture seule peut ne pas détecter certaines erreurs. Par contre s'il y a beaucoup d'erreurs signalées, jouer la prudence et commencer par sauvegarder les fichiers ou la partition avant d'utiliser chkdsk + commutateur. |
CHKDSK |
3 |
Erreurs de fichiers et de MBR corrigées. Lorsqu'on utilise CHKDSK depuis la Console de Récupération, le commutateur /F n'existe pas. Utiliser /P à la place. |
CHKDSK |
5 |
Les clusters erronés sont marqués pour ne plus être utilisés. |
CHKDSK /B | 5 |
Oui, nécessite de verrouiller le volume La liste des clusters marqués comme défectueux est réinitialisée. La suite est comme chkdsk /R NTFS seulement ; ce commutateur n'est pas fonctionnel sur XP. |
Les commutateurs F, R, et B autorisent la réparation des erreurs.
CHKDSK sans commutateur ne verrouille pas le disque et n'effectue aucune
réparation. CHKDSK peut signaler la présence d'erreurs.
La commande
FSUTIL DIRTY QUERY c: permet de savoir si un disque a besoin d'être
vérifié.
CHKDSK sans commutateur sera donc utile à titre d'information.
Le disque n'étant
pas verrouillé, il est possible que le
NTFS fasse signaler de fausses erreurs à
CHKDSK.
Dans ce cas il faudra utiliser au moins le commutateur /F. C'est en
pratique ce que l'on fait au minimum.
Cela correspond à cocher "Réparer
automatiquement les erreurs du système de fichiers" dans le GUI.
Le NTFS pouvant entraîner de fausse détections d'erreurs, l'utilisation des
commutateurs /F ou /R (ou /B) verrouille le volume.
Si on demande un CHKDSK du disque système en utilisant ces commutateurs,
le verrouillage ne peut être effectué, et l'opération nécessite un
redémarrage du système. La vérification/réparation du volume sera alors
faite en mode natif lors du démarrage suivant. Chkdsk.exe
n'étant pas conçu pour fonctionner dans ce mode, c'est C:\WINDOWS\system32\autochk.exe
qui réalise l'opération. L'Observateur d'Évènements rend compte du
résultat : Exécuter>eventvwr et rechercher un événement de type "Information" et de source "Winlogon"
http://a.vouillon.online.fr/faq-winxp.htm#143
Les tests présentés plus loin sont effectués lors d'une session Windows sur
un disque de données. Ce volume étant indépendant du système d'exploitation,
l'opération ne nécessite pas de redémarrage. On peut alors suivre le déroulement
dans la
fenêtre de commandes (WIN+R,cmd
ou Démarrer, Exécuter, cmd).
Les résultats ont été copiés par sélection à la souris dans la Console CMD
(Démarrer>Exécuter>cmd), voir
Copier et coller avec la Console CMD
Quand on ne précise pas le disque, la vérification est faite sur le disque
actif.
Ce disque ne comportait que peu de données, les premières phases ont été
rapides.
La cinquième phase, qui vérifie les secteurs non-utilisés, a pris environ
90 minutes.
Dans la réalité, sur un disque usagé comportant de nombreux fichiers, un CHKDSK
/R peut prendre des heures, on a vu jusqu'à 24h.
En pratique on observe plutôt de 20 minutes à trois heures, dépendant de la
taille du disque, du nombre de fichiers, du nombre d'erreurs.
Description des outils Chkdsk, Autochk et Chkntfs améliorés dans Windows 2000
CHKDSK Windows XP et la commande fsutil dirty query c: en images
Technet : chkdsk [<Volume>[[<Path>]<FileName>]] [/f] [/v] [/r] [/x] [/i] [/c] [/l[:<Size>]] [/b]
Technet : Troubleshooting Disks and File Systems
Knowledge Base, KB314835 : Fonctionnement détaillé de CHKDSK, description des commutateurs /C et /I
Aide et Support (WIN+F1)
CHKDSK /? dans une
Console CMD est présenté ci-après.
Le
mystère B
Sur XP cette aide affiche l'existence d'un commutateur
/B sans le commenter.
Ce
commutateur est inutilisable sous XP, mais est utilisable sous Vista/Win7
:
Le mystère B résolu (Vista et plus)
/b : NTFS
only: Clears the list of bad clusters on the volume and rescans all
allocated and free clusters for errors. /b includes the functionality of /r.
Use this parameter after imaging a volume to a new hard disk drive.
Plus de liens en fin d'article
CHKDSK /? dans la Console CMD affiche l'aide de CHKDSK. Cet exemple est tiré de Windows XP :
CHKDSK /?
|
L'exemple suivant vient de Windows 7 : Rappel : avec ces nouveaux systèmes il est nécessaire d'élever les privilèges de la Console de commandes. Si on ne le fait pas on a droit à une insulte : "Accès refusé, vous n'avez pas de privilèges suffisants. Vous devez invoquer cet utilitaire dans un mode d'exécution élevé." Pour lancer la Console en tant qu'Administrateur faire un clic droit sur le raccourci. On peut obtenir une Console Administrateur directement depuis Exécuter (WIN+R) en entrant cmd suivi de CTL+MAJ+Entrée |
CHKDSK
[volume[[chemin]nom_de_fichier]]
|
Le mystère du commutateur /B est donc
résolu.
Il remet à zéro la liste des clusters enregistrés comme défectueux avant de
passer à chkdsk /R
Il semble méconnu, je ne l'ai pas vu utilisé. Si vous avez des exemples
intéressants ... merci d'avance.
Il y a trois phases principales, suivies de deux phases optionnelles.
Plusieurs exemples sont présentés plus loin.
Phase 1 : Vérification des fichiers
Vérification de chaque segment d'enregistrement de fichier (FRS = File Record
Segment) dans la
Master File Table.
Phase 2 : Vérification des index
Confirme que chaque fichier ou sous-répertoire référencé dans un répertoire
existe réellement en tant que segment d'enregistrement de fichier valide dans la
MFT (Master
File Table), CHKDSK confirme que les horodatages et informations de taille de fichier
pour les fichiers sont à jour dans les entrées de répertoires pour ces fichiers.
Un fichier orphelin est un fichier pour lequel un segment d'enregistrement de
fichier légitime existe mais qui n'est répertorié dans aucun répertoire.
Un fichier orphelin peut souvent être restauré vers le répertoire approprié si
ce répertoire existe encore.
Si le répertoire approprié n'existe plus, CHKDSK crée un répertoire dans le
répertoire racine et y place le fichier.
Phase 3 : Vérification des descripteurs de sécurité
Les descripteurs de sécurité contiennent des informations concernant la
propriété d'un fichier ou d'un répertoire ainsi que les autorisations
NTFS.
Phase 4 : Vérification des secteurs
Recherche de secteurs défectueux dans l'espace libre du volume. Si un secteur
est en défaut, il est verrouillé définitivement et ne pourra plus être utilisé.
Le formatage complet d'un disque réalise également cette opération. Si un
formatage rapide a été effectué, CHKDSK /R permettra de corriger. Préférer
opérer depuis la CDR.
Phase 5 : Vérification des secteurs non-utilisés.
Noter que le NTFS est très résistant et procède de lui-même à l'élimination des
secteurs douteux. En cas de non démarrage après une coupure électrique un CHKDSK
/R depuis la Console de Récupération
est souvent la solution.
GUI veut dire Graphical User Interface. On a vu la commande CHKDSK en lignes de commandes Windows, voici son équivalent depuis le mode graphique de Windows, celui qu'on connait le mieux. CHKDSK peut être effectué à la souris depuis les Propriétés d'un disque (faire un clic droit). Le Bouton "Vérifier maintenant" de l'onglet Outils affiche la boite "Vérification du disque".
L'outil comporte deux choix :
Réparer automatiquement les erreurs du système de fichiers
Rechercher et tenter une récupération des secteurs défectueux
Si on ne coche aucune des deux cases, un CHKDSK simple est effectué.
Si on coche la première case on effectue un CHKDSK /F et le report au prochain démarrage est demandé s'il s'agit de la partition système. Appuyer sur F1 pour afficher l'aide intégrée :
Si on coche les deux lignes, c'est un CHKDSK /R complet qui est effectué et la question du redémarrage est également posée.
Surprise toutefois quand on ne coche que la seconde ligne "Rechercher et tenter une récupération des secteurs défectueux". Contrairement à ce que raconte l'Aide dans la vue ci-dessus, même avec la partition système en cours d'utilisation, le redémarrage n'est pas demandé, et la vérification/réparation des secteurs libres s'effectue immédiatement, voir vue suivante.
On peut même défragmenter en même temps le disque (à éviter) ce qui confirme si besoin était le non-verrouillage du volume, et on peut continuer à utiliser Windows pendant que l'espace libre du disque est vérifié.
L'indicateur affiche le déroulement de 4 phases.
Aucun commutateur ne semble correspondre à cette possibilité puisque /R inclue
/F et effectue systématiquement une vérification des fichiers, soit 5 phases.
Je n'ai pas trouvé d'explication, malgré l'excellent article
Troubleshooting Disks and File Systems. Voici ce qui est dit à propos de
l'utilisation de l'outil en mode graphique :
Running Chkdsk from My Computer or Windows Explorer
In addition to using the command-line version of Chkdsk, you can run Chkdsk from My Computer or Windows Explorer.
The graphical version of Chkdsk offers the equivalent of read-only mode, the /f parameter, and the /r parameter.If Chkdsk cannot lock the volume, you can schedule Autochk to run the next time you restart the computer.
You cannot choose to dismount the volume like you can when you use the command-line version of Chkdsk, nor can you use other Chkdsk parameters, such as /c or /i. To take advantage of all the Chkdsk parameters, use the command-line version of Chkdsk.To run Chkdsk from My Computer or Windows Explorer
In My Computer or Windows Explorer, right-click the volume you want to check, and then click Properties.
On the Tools tab, click Check Now.
Do one of the following:
To run Chkdsk in read-only mode, click Start.
To run Chkdsk by using the /f parameter, select the Automatically fix file system errors check box and then click Start.
To run Chkdsk by using the /r parameter, select the Scan for and attempt recovery of bad sectors check box and then click Start.
Vérification des secteurs libres d'un volume système en 4 phases sous Windows
quand
seule la seconde case est cochée
Pas trouvé
d'explication à ces contradictions. Dans le doute il vaut mieux cocher les deux
cases, comme
ceci.
Addendum : ces observations avaient été faites sur xppro.
Avec
xphome une erreur "Windows n'a pas pu terminer la vérification du disque"
est constatée en sortie de l'étape 2.
Merci à Almadagar pour sa remarque.
Ce qui suit est aussi valable pour un CHKDSK effectué depuis la Console de Récupération, mais seulement si des erreurs ont été trouvées.
Lorsqu'un redémarrage est nécessaire, on se demande quel a été
le résultat de l'opération.
Ça se trouve dans l'Observateur d'événements,
journal des Applications :
Exécuter>eventvwr
Événements de type Informations et de source
Winlogon avec XP,
Wininit avec Vista :
Cliquer sur l'événement pour afficher le contenu :
En cliquant sur le Bouton indiqué ci-dessus, tout est copié dans le
Presse-Papier.
On peut ainsi coller ces infos dans un éditeur de texte ou un
message.
Pour afficher l'Observateur d'évènements faire
Démarrer>Exécuter>eventvwr
Avec Vista c'est Wininit et non Winlogon qu'il faut rechercher dans la colonne
Source
Précision : constaté dans Windows7 ; ce n'est pas vrai pour Windows XP.
System Volume
Information (SVI) est un dossier
système et caché situé sur la racine des volumes. Outre les
points de
restauration il enregistre les chkdsk, semble-t-il depuis Vista. Comme
on l'a vu pour l'observateur
d'événements, les vérifications du système de fichiers demandées via les
propriétés des disques sont enregistrés dans le SVI, et ceci même si un
redémarrage est nécessaire. Le petit plus c'est que les chkdsk exécutés en
lignes de commandes sont également enregistrés, qu'il y ait redémarrage ou
pas. Il était somme toute assez logique que ce dossier "information système
du volume" stocke les résultats des vérifications du disque.
Exemple :
Un disque SATA issu d'un PC portable
qui ne démarre plus a été connecté à un PC de Bureau pour examen. La
connexion utilisée est un adaptateur USB. Un chkdsk /R a été effectué dans
une Console CMD. Comme l'explorateur de fichiers de Windows ne donne pas
l'accès au SVI du fait qu'il n'est autorisé qu'à SYSTEM, j'utilise tout
simplement l'explorateur de fichiers
Q-DIR qui accède
sans poser de question au contenu du SVI (si nécessaire, clic droit et
"Exécuter
en tant qu'administrateur"). Les enregistrements sont regroupés
sous le dossier Chkdsk. Les noms des fichiers sont de la forme Chkdsk+année+mois+jour+heure+minute+seconde. Comme ceci :
I
:\System Volume Information\Chkdsk\Chkdsk20100824215847.log
Ce chkdsk
ayant provoqué des remplacements de clusters endommagés, je l'ai conservé
dans les exemples de mauvais résultats.
On en profite pour
comparer le contenu de la Console avec celui du log.
KB218461 : Si Autochk est exécuté au démarrage de l'ordinateur, ses résultats sont enregistrés dans un fichier appelé Bootex.log qui se trouve dans la racine du volume étant vérifié. Ensuite, le service Winlogon migre le contenu de chaque fichier Bootex.log vers le journal des événements de l'application.
Remarque : Si le service "Journal des événements" est désactivé, bootex.log n'est pas supprimé.
Sans indiquer de volume, c'est le lecteur en cours qui est vérifié
Aucun commutateur utilisé, le volume n'est pas verrouillé.
Détection seulement, pas de réparation : les fausses erreurs dues au fonctionnement du NTFS
sur le volume non verrouillé n'auront pas de conséquences.
L'opération se fait en 3 phases : fichiers, index, descripteurs de sécurité.
Le type du système de fichiers est NTFS.
Le nom de volume est BILLOUTE.
Avertissement ! Le paramètre F n'a pas été spécifié.
Exécution de CHKDSK en mode lecture seule.
CHKDSK est en train de vérifier les fichiers (étape 1 de 3)...
La vérification des fichiers est terminée.
CHKDSK est en train de vérifier les index (étape 2 de 3)...
La vérification des index est terminée.
CHKDSK est en train de vérifier les descripteurs de sécurité (étape 3 de 3)...
La vérification des descripteurs de sécurité est terminée.
223777417 Ko d'espace disque au total.
399796 Ko dans 293 fichiers.
80 Ko dans 63 index.(index NTFS)
0 Ko dans des secteurs défectueux.
73173 Ko utilisés par le système.(La table MFT et
autres métafichiers NTFS)
65536 Ko occupés par le fichier journal.
223304368 Ko disponibles sur le disque.
4096 octets dans chaque unité d'allocation.
(Taille de cluster)
55944354 unités d'allocation au total sur le disque.
(Total des clusters sur le disque)
55826092 unités d'allocation disponibles sur le disque.
(Clusters libres disponibles)
Le commutateur F autorise la réparation des erreurs.
Le volume doit être verrouillé pour éviter toute fausses détections d'erreur (NTFS).
L'opération se fait en 3 phases également.
Le type du système de fichiers est NTFS.
Impossible de verrouiller le lecteur en cours.
Chkdsk n'a pas pu s'exécuter car le volume est utilisé par un autre
processus. Chkdsk pourra s'exécuter après que ce volume soit démonté.
TOUS LES DESCRIPTEURS OUVERTS SUR CE VOLUME NE SERONT PLUS VALIDES.
Voulez-vous forcer le démontage de ce volume ? (O/N) o
Le volume est démonté. Tous les descripteurs ouverts dans ce volume ne sont plus
valides.
Le nom de volume est BILLOUTE.
CHKDSK est en train de vérifier les fichiers (étape 1 de 3)...
La vérification des fichiers est terminée.
CHKDSK est en train de vérifier les index (étape 2 de 3)...
La vérification des index est terminée.
CHKDSK est en train de vérifier les descripteurs de sécurité (étape 3 de 3)...
La vérification des descripteurs de sécurité est terminée.
223777417 Ko d'espace disque au total.
399796 Ko dans 293 fichiers.
80 Ko dans 63 index.
0 Ko dans des secteurs défectueux.
73173 Ko utilisés par le système.
65536 Ko occupés par le fichier journal.
223304368 Ko disponibles sur le disque.
4096 octets dans chaque unité d'allocation.
55944354 unités d'allocation au total sur le disque.
55826092 unités d'allocation disponibles sur le disque.