Comment NTFS réserve de l’espace pour sa table de fichiers maîtres (MFT)
Cet article décrit comment NTFS réserve de l’espace pour sa table de fichiers maîtres (MFT).
Numéro de la base de connaissances d’origine : 174619
Résumé
Le système de fichiers NTFS contient à son cœur, un fichier appelé la table de fichiers maîtres (MFT). Il existe au moins une entrée dans le MFT pour chaque fichier sur un volume NTFS, y compris le MFT lui-même.
Étant donné que les utilitaires qui défragmentent les volumes NTFS ne peuvent pas déplacer d’entrées MFT et parce que la fragmentation excessive du MFT peut avoir un impact sur les performances, NTFS réserve de l’espace pour le MFT dans un effort de maintenir le MFT aussi contigu que possible au fur et à mesure qu’il augmente.
Dans Windows, l’utilitaire de défragmentation défragmente le MFT.
Utilitaire de défragmentation
Une opération de défragmentation sur le MFT combine un fichier MFT en 1 et empêche son stockage dans plusieurs emplacements qui ne sont pas séquentiels sur le disque. Dans cette classe d’opération, le fichier MFT est plus séquentiel. Toutefois, il s’agit exactement de la taille du fichier MFT avant l’opération de défragmentation.
Un MFT peut être trop volumineux si un volume utilisé pour avoir un grand nombre de fichiers qui ont été supprimés. Les fichiers qui ont été supprimés provoquent des trous internes dans le MFT. Ces trous sont des régions significatives qui ne sont pas utilisées par les fichiers. Il est impossible de récupérer cet espace. Cela est au moins vrai sur un volume NTFS actif.
Plus d’informations
NTFS utilise des entrées MFT pour définir les fichiers auxquels ils correspondent. Toutes les informations relatives à un fichier, y compris sa taille, ses horodatages, ses autorisations et son contenu de données sont stockées dans les entrées MFT ou dans l’espace externe à MFT, mais décrites par les entrées MFT.
(Les entrées de répertoire, externes à MFT, contiennent également des informations redondantes concernant les fichiers. Mais une discussion complète de toutes les structures sur NTFS dépasse la portée de cet article.)
À mesure que les fichiers sont ajoutés à un volume NTFS, d’autres entrées sont ajoutées à MFT et le MFT augmente donc de taille. Lorsque les fichiers sont supprimés d’un volume NTFS, leurs entrées MFT sont marquées comme libres et peuvent être réutilisées, mais le MFT ne se réduit pas. Par conséquent, l’espace utilisé par ces entrées n’est pas récupéré à partir du disque.
En raison de l’importance du MFT pour NTFS et de l’impact possible sur les performances si ce fichier devient très fragmenté, NTFS fait un effort spécial pour maintenir ce fichier contigu. NTFS réserve 12,5 % du volume pour une utilisation exclusive du MFT jusqu’à ce que le reste du volume soit utilisé. Par conséquent, l’espace pour les fichiers et les répertoires n’est pas alloué à partir de cette zone MFT tant que tout autre espace n’est pas alloué en premier.
Note
Vous pouvez modifier la clé de Registre NtfsMFTZoneReservation pour augmenter le volume dans Windows. Pour plus d’informations sur le MFT, consultez les éléments clés de la section Processus de défragmentation de disque de maintenance de Windows 2000 Peak Performance Through Defragmentation.
Selon la taille moyenne du fichier et d’autres variables, soit la zone MFT réservée, soit l’espace non réservé sur le disque peut être utilisé avant l’autre, car le disque se remplit à la capacité.
Les volumes avec un petit nombre de fichiers relativement volumineux épuisent d’abord l’espace non réservé, tandis que les volumes avec un grand nombre de fichiers relativement petits épuisent d’abord l’espace de zone MFT. Dans les deux cas, la fragmentation du MFT commence à se produire lorsqu’une région ou l’autre devient pleine. Si l’espace non réservé devient plein, l’espace pour les fichiers et répertoires utilisateur commence à être alloué à partir de la zone MFT en concurrence avec le MFT pour l’allocation. Si la zone MFT devient pleine, l’espace pour les nouvelles entrées MFT est alloué à partir du reste du disque, en concurrence avec d’autres fichiers.
Un nouveau paramètre de Registre peut augmenter le pourcentage d’un volume réservé par NTFS pour sa table de fichiers maîtres. NtfsMftZoneReservation est une valeur REG_DWORD qui peut prendre une valeur comprise entre 1 et 4, où 1 correspond à la taille minimale de la zone MFT et 4 correspond au maximum. Si le paramètre n’est pas spécifié ou si une valeur non valide est fournie, NTFS utilise une valeur par défaut de 1 pour ce paramètre. Les ratios exacts qui correspondent à chaque paramètre ne sont pas documentés, car ils ne sont pas normalisés et peuvent changer dans les versions ultérieures. Pour savoir quel paramètre est le mieux adapté à votre environnement, il peut être nécessaire d’expérimenter des valeurs différentes.
Pour déterminer la taille actuelle du MFT sur un ordinateur Windows, tapez la dir /a $mft
commande sur un volume NTFS.
Pour déterminer la taille actuelle du MFT sur un ordinateur Windows, utilisez le défragmenteur de disque pour analyser le lecteur NTFS, puis cliquez sur Afficher le rapport. Cela affiche les statistiques de lecteur, y compris la taille MFT actuelle et le nombre de fragments.
Le défragmenteur de disque affiche le vert pour ce qui est appelé fichiers système et sur un volume au format NTFS, il s’agit simplement de la combinaison de MFT, pagefile.sys (si l’un existe sur ce volume) et ce qui est appelé « zone MFT » ou espace réservé pour l’extension MFT. Le rapport de défragmentation affiche uniquement des informations sur le fichier page et MFT ; il ne mentionne pas la zone MFT, car elle n’affecte aucune façon l’utilisation ou la capacité du disque.
La zone MFT n’est pas soustraite de l’espace disque disponible (libre) utilisé pour les fichiers de données utilisateur, il s’agit uniquement d’espace utilisé en dernier. Lorsque le MFT doit augmenter la taille, par exemple, vous avez créé de nouveaux fichiers et répertoires, il est d’abord extrait de la zone MFT, ce qui réduit la fragmentation MFT et optimise les performances MFT.
La zone MFT par défaut est calculée et réservée par Ntfs.sys lorsqu’elle monte le volume et est basée sur la taille du volume. Vous pouvez augmenter la zone MFT par le biais de l’entrée de Registre décrite ci-dessous, mais vous ne pouvez pas rendre la zone MFT par défaut plus petite que ce qui est calculé par Ntfs.sys. L’augmentation de la zone MFT ne diminue pas de manière à ce que l’espace disque puisse être utilisé par les utilisateurs pour les fichiers de données.
Note
Les résultats retournés par la commande dir peuvent ne pas être actuels. La taille signalée par la commande dir peut refléter les données mises en cache qui reflètent la taille du MFT au moment où le système a démarré après un arrêt ordonné.
Important
Cette section, méthode ou tâche contient des étapes vous indiquant comment modifier le Registre. Toutefois, des problèmes graves peuvent se produire si vous modifiez le Registre de façon incorrecte. Par conséquent, vérifiez que vous suivez ces étapes attentivement. Pour une protection supplémentaire, sauvegardez le Registre avant de le modifier. Ensuite, vous pouvez restaurer le Registre si un problème se produit. Pour plus d’informations sur la sauvegarde et la restauration du registre, voir : Procédure de sauvegarde, de modification et de restauration du Registre dans Windows.
Pour ajouter cette valeur, procédez comme suit :
Exécutez l’Éditeur du Registre (Regedt32.exe), puis accédez à la sous-clé suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem
Dans le menu Modifier , cliquez sur Ajouter une valeur.
Tapez les informations suivantes dans la boîte de dialogue :
- Nom de la valeur : NtfsMftZoneReservation
- Type de données : REG_DWORD
- Données : (plage valide comprise entre 1 et 4)
Quittez l’Éditeur du Registre et redémarrez votre ordinateur.
Note
Il s’agit d’un paramètre d’exécution qui n’affecte pas le format réel d’un volume. Il affecte plutôt la façon dont NTFS alloue de l’espace sur tous les volumes sur un système donné. Par conséquent, pour être complètement efficace, le paramètre doit être en vigueur à partir du moment où un volume est mis en forme et tout au long de la durée de vie du volume. Si le paramètre de Registre est ajusté vers le bas ou supprimé, la zone MFT sera réduite en conséquence, mais cela n’aura aucun impact sur l’espace MFT déjà alloué et utilisé.