Nous avons déjà évoqué sur ce blog les nombreuses améliorations apportées au noyau du système d'exploitation, à la gestion du réseau et au système de fichiers. Sur la plupart des PC clients, l'utilitaire chkdsk, qui a largement fait ses preuves, n'est plus utilisé que dans des circonstances exceptionnelles. Aussi, Window 8 est pour nous l'occasion d'améliorer cet utilitaire. Nous souhaitons avant tout repenser la manière dont l'utilitaire fonctionne, afin d'accroître la disponibilité et de réduire les interruptions dues à l'exécution de chkdsk. En examinant les données d'utilisation réelles de chkdsk, nous avons remarqué que les endommagements sont encore moins fréquents que les exécutions de chkdsk. Nous avons travaillé d'arrache-pied pour réduire le nombre d'appels manuels des outils de disque (outil de défragmentation, par exemple), mais nous savons que bon nombre d'entre vous préfèrent les exécuter manuellement, « au cas où ». C'est ainsi que nous avons entrepris d'améliorer la vitesse d'exécution globale de chkdsk, car son exécution limite la disponibilité de l'ordinateur. À l'heure où la capacité des disques devient gigantesque et où les systèmes équipés de plusieurs disques deviennent monnaie courante, il nous semble indispensable d'améliorer cet utilitaire. Kiran Bangalore, chef de projet au sein de notre équipe Système principal, a rédigé ce billet. 
--Steven


Dans ce billet, je vais vous présenter le nouveau modèle d'intégrité du système de fichiers NTFS de Windows 8, ainsi que la version remaniée de notre outil de détection et de réparation des endommagements de disque, à savoir l'utilitaire chkdsk.

Vous redémarrez votre ordinateur personnel ou un serveur au sein de votre entreprise et soudain un message chkdsk imprévu s'affiche : nous avons tous connu cette situation et savons à quel point cela peut être frustrant. En plus de l'effet de surprise, vous subissez une interruption, pendant que le processus se termine et jusqu'à ce que Windows soit à nouveau disponible. Avec Windows 8, nous assurons une résolution rapide de ces problèmes, le cas échéant. L'utilisateur reste maître des opérations et les systèmes sont plus disponibles et plus évolutifs que jamais.

Lors de la conception de Windows 8, l'un de nos principaux objectifs était d'améliorer la disponibilité et de réduire les temps d'interruption des systèmes. Cette fonctionnalité, alliée à d'autres fonctions de stockage telles que les espaces de stockage et le nouveau système de fichiers ReFS, contribue à réduire la complexité liée à la réparation des endommagements et accroît la disponibilité globale des systèmes.

Version précédente de chkdsk et du modèle d'intégrité du système de fichiers NTFS

Si les cas d'endommagement des disques sont plutôt rares de nos jours, certaines causes bien spécifiques peuvent néanmoins conduire à une telle situation. Qu'ils soient dus à des erreurs de support liées au disque dur ou à des erreurs de mémoire temporaires, les endommagements peuvent toucher les métadonnées du système de fichiers (les informations utilisées pour associer des blocs physiques à vos dernières photos de vacances, par exemple). Pour que vous puissiez continuer à accéder à vos données, Windows doit isoler et corriger ces erreurs. Pour cela, il exécute l'utilitaire chkdsk.

Dans les versions précédentes, le système de fichiers NTFS mettait en œuvre un modèle d'intégrité plus simple : le système de fichiers était sain ou ne l'était pas. Dans ce modèle, le volume était placé en mode hors connexion aussi longtemps que nécessaire, de façon à réparer les endommagements du système de fichiers et à rétablir l'intégrité du volume. Le temps d'interruption dépendait directement du nombre de fichiers stockés sur le volume.

Les données télémétriques fiables collectées auprès de systèmes du monde entier nous montrent que malgré la relative rareté des endommagements, lorsque l'utilitaire chkdsk s'avère nécessaire, son exécution prend de quelques secondes à plusieurs heures, selon le nombre de fichiers présents sur le lecteur. Cette exécution est encore plus longue sur les gros serveurs de stockage.

Dans Windows Vista et Windows 7, nous avons optimisé de façon importante la vitesse de chkdsk. Cependant, alors que la capacité des disques durs a continué à doubler tous les 18 mois et que le nombre de fichiers par volume augmente tout autant, l'exécution de chkdsk prend de plus en plus de temps, malgré les améliorations apportées sur le plan de la vitesse.

Ainsi, dans Windows 8, nous avons modifié notre approche vis-à-vis du modèle d'intégrité de NTFS et modifié la manière dont nous corrigeons les endommagements, afin de réduire les temps d'interruption dus à chkdsk. Nous avons également introduit un nouveau système de fichiers pour préparer l'avenir, ReFS, qui ne nécessite pas d'exécuter chkdsk en mode hors connexion pour réparer les endommagements.

Une nouvelle approche en matière d'intégrité du système de fichiers

L'incroyable explosion des capacités de stockage et des fichiers des utilisateurs nous a obligés à repenser totalement le modèle d'intégrité de NTFS et chkdsk.

En matière d'intégrité du système de fichiers, nos clients nous ont fait part de trois souhaits importants :

  1. Le temps d'interruption provoqué par les endommagements du système de fichiers doit être nul pour les configurations à disponibilité continue et quasi nul pour toutes les autres configurations.
  2. Un utilisateur ou un administrateur doit être tenu au courant de l'évolution de l'intégrité du système de fichiers à tout moment.
  3. Un utilisateur ou un administrateur doit pouvoir réparer facilement son système de fichiers de façon planifiée lorsqu'un endommagement survient.

Pour offrir une disponibilité optimale, notre approche a consisté à modifier à la fois le système de fichiers et l'utilitaire chkdsk. Cette nouvelle approche divise le processus en plusieurs phases, pour garantir une résolution rapide, coordonnée et transparente de l'endommagement.

Diagramme de flux. Détection de l'endommagement (NTFS détecte une anomalie perçue dans les métadonnées du système de fichiers), FLÈCHE VERS Réparation spontanée en ligne (NTFS essaie de procéder rapidement à une réparation spontanée ; le volume reste connecté), FLÈCHE VERS Vérification en ligne (NTFS examine si le problème est temporaire or plus profond ; le volume reste connecté), FLÈCHE VERS Identification en ligne et journalisation (en l'absence de réparation spontanée, NTFS identifie et journalise les mesures correctives ; l'utilisateur ou l'administrateur reçoit une notification ; le volume reste en ligne), FLÈCHE VERS Correction précise et rapide (l'utilisateur ou l'administrateur peut mettre le volume en mode hors connexion lorsqu'il le souhaite et les endommagements sont alors corrigés en quelques secondes seulement ; grâce à CSV, les entrées-sorties sont suspendues de façon transparente pour procéder à une correction rapide, puis réactivées automatiquement).

Nous avons mis au point une nouvelle méthode de communication qui décrit les types d'endommagements sous forme de « verbes » agissant sur les principaux composants et les principaux aspects de cette approche : pilote du système de fichiers (NTFS), module de réparation spontanée, service de vérification ciblée et utilitaire chkdsk. Tous les endommagements du système de fichiers sont classés comme nécessitant l'un des 18 « verbes » définis dans Windows 8. Nous avons également anticipé l'ajout de nouvelles définitions, susceptibles de nous permettre de diagnostiquer encore plus précisément les problèmes à l'avenir.

Principales modifications apportées à notre approche en vue d'améliorer la disponibilité :

    1. Réparation spontanée en ligne : la fonctionnalité de réparation spontanée du système de fichiers NTFS a été introduite dans Windows Vista (ainsi que dans Windows Server 2008) afin de limiter le recours à chkdsk. Cette fonctionnalité intégrée à NTFS corrige certains types d'endommagements pouvant survenir dans le cadre d'un fonctionnement normal. La correction peut être réalisée sans placer les disques en mode hors connexion. Si tous les problèmes détectés sont corrigés en ligne par réparation spontanée, il est inutile de procéder à une réparation en mode hors connexion. Dans Windows 8, nous avons augmenté le nombre de problèmes pouvant être gérés en ligne et réduit ainsi la nécessité de recourir à chkdsk.
    2. Vérification en ligne : certains endommagements sont temporaires (en raison de problèmes de mémoire, par exemple) et ne résultent pas d'un endommagement réel du disque. Aussi, nous avons ajouté un nouveau service à Windows 8 : le service de vérification ciblée. Celui-ci est déclenché par le pilote du système de fichiers. Il vérifie que le disque présente bel et bien un endommagement avant de faire passer le système de fichiers à l'étape suivante du modèle d'intégrité. Ce nouveau service est exécuté en arrière-plan et n'affecte pas le fonctionnement normal du système. Il n'effectue aucune opération tant que le pilote du système de fichiers ne le déclenche pas afin de vérifier un endommagement.
    3. Identification en ligne et journalisation : lorsqu'un problème est vérifié, une analyse en ligne du système de fichiers est déclenchée. Elle est exécutée sous forme de tâche de maintenance dans le système de fichiers. Dans Windows 8, les tâches planifiées de maintenance de l'ordinateur sont exécutées uniquement lorsque les conditions sont adéquates (période d'inactivité, etc.). Cette analyse peut être exécutée sous forme de tâche d'arrière-plan, pendant que d'autres programmes sont exécutés au premier plan. Pendant l'analyse du système de fichiers, tous les problèmes détectés sont journalisés en vue d'une correction ultérieure.
    4. Correction précise et rapide : lorsque l'utilisateur ou l'administrateur le souhaite, le volume peut être placé en mode hors connexion, de façon à ce que les endommagements journalisés à l'étape suivante puissent être corrigés. Le temps d'interruption lié à cette opération (appelée « Spotfix ») n'est que de quelques secondes. Sur les systèmes Windows Server 8 dotés de volumes partagés en cluster, il est même nul. Grâce à cette nouvelle approche, le temps d'exécution de chkdsk en mode hors connexion est désormais directement proportionnel au nombre d'endommagements et non plus proportionnel au nombre de fichiers, comme avec l'ancienne approche.

Graphique à barres comparant chkdsk sur Windows Server 2008 R2 et sur Windows Server 8. Sur l'ancien système, la vérification et la réparation de 100 millions de fichiers, de 200 millions de fichiers et de 300 millions de fichiers prennent respectivement près de deux minutes, quatre minutes et 48 secondes et plus de six minutes. Sur Windows Server 8, la réparation ciblée (/spotfix) de ces volumes prend à chaque fois moins de deux secondes.
Comparaison dans Windows Server : chkdsk /f contre chkdsk /spotfix

  1. Gestion simplifiée : pour améliorer la transparence du nouveau modèle d'intégrité, Windows indique désormais l'état du système de fichiers par le biais des interfaces suivantes.
    • Centre de maintenance : l'état d'intégrité du lecteur est particulièrement visible dans le Centre de maintenance à travers l'information « État du lecteur » (voir ci-dessous), qui vous indique si vous devez prendre une mesure spécifique pour rétablir l'intégrité du volume.
    • Explorateur : l'état d'intégrité figure également dans l'Explorateur, sous Propriétés du lecteur.
    • PowerShell : vous pouvez appeler la fonctionnalité chkdsk en utilisant un nouvel applet de commande PowerShell, REPAIR-VOLUME, qui peut être utile pour gérer à distance l'intégrité du système de fichiers.
    • Gestionnaire de serveur : dans Windows Server, vous pouvez également gérer les états d'intégrité des volumes directement dans l'utilitaire Gestionnaire de serveur.

Le nouveau modèle d'intégrité du système de fichiers

Dans le nouveau modèle d'intégrité, il existe quatre états d'intégrité possibles pour un système de fichiers. Certains d'entre eux sont uniquement informatifs, tandis que d'autres nécessitent une intervention de votre part. Voici les quatre états possibles :

  1. En ligne et sain
  2. Vérification ciblée en ligne requise
  3. Analyse en ligne requise
  4. Correction des points nécessaire

Le système traverse les différents états suivants : Sain, Vérification ciblée requise, Analyse en ligne requise, Correction des points nécessaire, Sain.
États d'intégrité du système de fichiers sous Windows 8

      1. En ligne et sain : dans cet état, aucun endommagement du système de fichiers n'a été détecté et aucune intervention de votre part n'est requise. La plupart du temps, le système de fichiers reste dans cet état.

    Le Centre de maintenance indique qu'aucune intervention n'est requise

      1. Vérification ciblée en ligne requise : le système de fichiers reste dans cet état transitoire pendant un court instant, lorsqu'il détecte un endommagement qui ne peut pas être corrigé par réparation spontanée. Le volume est alors placé dans cet état, jusqu'à ce que le service de vérification ciblée procède à la vérification de l'endommagement. Là encore, aucune intervention n'est requise de la part de l'utilisateur.
      2. Analyse en ligne requise : lorsque le service de vérification ciblée confirme l'endommagement, il place le système de fichiers à l'état « Analyse en ligne requise ». Lors de la première période de maintenance suivante, une analyse en ligne est réalisée et aucune intervention n'est requise de la part de l'utilisateur. Cet état est indiqué dans le Centre de maintenance. Aussi, vous pouvez exécuter l'analyse manuellement si vous souhaitez l'exécuter avant la prochaine période de maintenance. L'analyse est exécutée en arrière-plan : vous pouvez donc continuer à utiliser l'ordinateur. Lors de cette analyse en ligne, tous les problèmes vérifiés et toutes les corrections sont journalisés en vue d'une réparation ultérieure. Sur les systèmes Windows Server 8, la durée d'inactivité est déterminée en surveillant les durées d'inactivité du processeur et des dispositifs de stockage.

    Message « Rechercher les erreurs sur le lecteur » avec un lien permettant d'ouvrir le Centre de maintenance

    Sous Maintenance, un message indique qu'il est nécessaire de rechercher les erreurs sur le lecteur : « Des erreurs potentielles ont été détectées sur un lecteur. Le lecteur doit être analysé. Vous pouvez continuer à utiliser le lecteur durant l'analyse. » Bouton : Exécuter l'analyse. Lien d'action : Désactiver les messages sur l'état des lecteurs.

    1. Correction des points nécessaire : si nécessaire, le système de fichiers place le volume dans cet état une fois que l'analyse est terminée. Cet état est également indiqué dans le Centre de maintenance. Sur les systèmes clients, vous pouvez redémarrer le PC pour corriger tous les problèmes de système de fichiers journalisés à l'étape précédente. Le redémarrage est rapide (quelques secondes de plus qu'un redémarrage normal) et permet au PC de repasser à l'état Sain. Dans le cas des systèmes Windows Server 8, le redémarrage n'est pas nécessaire pour corriger les endommagements des volumes de données. En effet, les administrateurs peuvent tout simplement planifier une correction ciblée au cours de la prochaine période de maintenance.

    Notification contenant le message suivant : « Redémarrer pour réparer les erreurs de lecteur. Cliquer pour redémarrer le PC. »

    « Redémarrer pour réparer les erreurs de lecteur (important). Des erreurs ont été détectées sur un lecteur. Pour réparer ces erreurs et empêcher la perte des données, redémarrez votre ordinateur maintenant. » Bouton : Redémarrer.

    Les utilisateurs avancés souhaitant éviter un redémarrage de leur système pour corriger un endommagement qui n'affecte pas le volume système peuvent ouvrir la boîte de dialogue Propriétés du volume concerné. Dans l'onglet Outils, une option leur permet de rechercher les erreurs de système de fichiers sur le lecteur. Les endommagements affectant des lecteurs qui ne sont pas en cours d'utilisation peuvent être corrigés sans redémarrage complet de l'ordinateur.

    Dans l'onglet Outils, sous Vérification des erreurs, une option permet de rechercher les erreurs de système de fichiers sur le lecteur. Bouton : Vérifier

    « Vérification des erreurs (Chk2 (D:)). Réparer ce lecteur. Des erreurs ont été détectées sur ce lecteur. Pour éviter la perte de données, réparez ce lecteur maintenant. Réparer le lecteur. Vous ne pourrez pas utiliser le lecteur pendant que Windows répare les erreurs détectées lors de la dernière analyse. Il peut être nécessaire de redémarrer votre ordinateur. » Bouton : Annuler.

    Conclusion

    Dans Windows 8, les opérations de détection et de correction des erreurs du système de fichiers sont plus transparentes et moins gênantes. Nous sommes convaincus que ces changements vous seront bénéfiques, et nous attendons avec impatience vos commentaires et vos réactions !

    -- Kiran Bangalore
        Chef de projet senior, Stockage principal et systèmes de fichiers Windows


    Téléchargez cette vidéo pour la regarder sur votre lecteur habituel :
    MP4 haute qualité | MP4 faible qualité

    FAQ

    Q) Le nouveau modèle d'intégrité fonctionnera-t-il sur les lecteurs amovibles ?
    Oui, il fonctionne avec les lecteurs amovibles considérés comme des médias fixes, à l'instar de la plupart des disques durs externes.

    Q) Comment puis-je activer le nouveau modèle d'intégrité du système de fichiers ?
    Vous n'avez rien à faire : le nouveau modèle d'intégrité est activé par défaut.

    Q) Le nouveau modèle d'intégrité du système de fichiers s'appliquera-t-il à Windows Server ?
    Oui, le modèle d'intégrité est le même sur les serveurs et les clients. Une différence existe : par défaut, les lecteurs de données ne sont pas vérifiés ni corrigés lors du démarrage du système. L'administrateur peut en effet procéder à cette opération de maintenance lorsqu'il le souhaite.

    Q) Puis-je passer de Windows 8 à Windows 7 sans affecter le modèle d'intégrité du système de fichiers ?
    Oui, le modèle d'intégrité du système de fichiers s'adapte à la version du système d'exploitation sur lequel il est monté.

    Q) Le système de fichiers ReFS devra-t-il exécuter chkdsk ?
    ReFS exploite un autre modèle de résilience et n'a pas besoin d'exécuter l'utilitaire chkdsk habituel.

    Q) Serai-je obligé d'exécuter l'ancienne commande chkdsk /f ?
    Dans certains cas, une défaillance matérielle peut endommager gravement le système de fichiers, au point d'empêcher tout montage de ce système. Vous devez alors réaliser une analyse complète hors connexion avec chkdsk pour réparer le système de fichiers. Si cette opération échoue pour une raison ou une autre, nous vous recommandons alors de procéder à une restauration à partir d'une sauvegarde.

    Q) Un redémarrage est-il absolument nécessaire pour réparer les volumes qui ne sont pas des volumes système ?
    Non, mais le Centre de maintenance propose en général la solution la plus simple. Si vous faites partie des utilisateurs avancés, vous pouvez réparer les volumes qui ne sont pas des volumes système en ouvrant les propriétés du lecteur ou en exécutant les commandes chkdsk \scan <volume>: et chkdsk \spotfix <volume>: à partir de la ligne de commande.

    Q) J'exécute régulièrement la commande chkdsk /f pour vérifier l'état de nos lecteurs. Dois-je continuer à le faire ?
    Non, car le système vous signalera tout endommagement détecté. Vous pourrez alors choisir d'exécuter la commande chkdsk /scan pour détecter tous les problèmes. Une analyse chkdsk /scan en ligne n'affecte pas la disponibilité du lecteur ou du système.

    Q) J'exécute actuellement des analyses chkdsk en lecture seule pour vérifier l'état de nos lecteurs. Dois-je continuer à le faire ?
    Non, nous vous recommandons plutôt d'exécuter la commande chkdsk /scan, car cette dernière procède également aux réparations en ligne possibles et prépare une correction ciblée si nécessaire.