Structure du système de fichiers ReFS et algorithme de récupération de données

«ReFS» (Resilient File System) est un nouveau système de fichiers de Microsoft qui a été créé en remplacement de «NTFS». Il présente plusieurs avantages solides, à savoir que les développeurs ont corrigé tous les bogues NTFS. Il est beaucoup plus protégé contre la corruption des informations, il peut mieux résister à l'augmentation de la charge et il évolue également beaucoup plus facilement.



image



Principales fonctions du système de fichiers résilient
, .

— Integrity streams ( ).

«allocate on write» — .

, , , .

, .

«data sriping» — , RAID .

— «disk scrubbing», .

.

, , , .

«NTFS».

.

«ReFS» , .

«Storage Spaces» — .

«NTFS»: «BitLocker», «USN» , «ACL» , «mount points»… , «ReFS», «API».


Caractéristiques de "ReFS"







Les sommes de contrôle sont désormais utilisées pour les métadonnées par défaut, et elles sont également appliquées aux données dans des fichiers individuels. Ainsi, dans le processus de lecture / écriture, la vérification est effectuée "à la volée". Lorsque le système de fichiers détecte une corruption de fichier, il supprime instantanément les entrées sans redémarrer l'ordinateur. Autrement dit, "ReFS" se corrige désormais de lui-même lorsque des erreurs apparaissent.



"ReFS" offre une plus grande fiabilité de stockage des informations, par rapport à l'ancien FS. Les arbres B + sont utilisés pour stocker des fichiers et des métadonnées. Les tailles, le nombre de partitions et de fichiers sont désormais limités à la valeur maximale de 64 bits. L'espace blanc est stocké dans trois tables différentes, ventilées par taille de bloc (petit, moyen, grand). Les noms de fichiers et les chemins sont écrits en "Unicode", ils ne doivent pas dépasser 32 kilo-octets, c'est-à-dire que le nom du fichier peut être spécifié en 30 mille caractères.



Protection contre les coupures de courant. Disons que vous écrivez un nouveau nom de fichier (ou d'autres métadonnées), que l'électricité est coupée et que vous n'avez pas eu le temps de les enregistrer. Dans "NTFS" - le fichier sera endommagé car vous modifiez directement les métadonnées. Mais "ReFS" ne fait qu'une copie des métadonnées, et ne change pas les principales jusqu'à ce que la sauvegarde se produise, la particularité de la fonction "Copy-on-write".



Les espaces de stockage sont une fonctionnalité de virtualisation multimédia. Il vous permet de créer un seul espace à partir de plusieurs disques physiques sur un PC ou plusieurs sur un réseau local. Il est également possible de configurer la «mise en miroir» en tant que matrices RAID.



Différences avec NTFS



ReFS a été conçu à l'origine pour prendre en charge de grands volumes de partitions, fichiers, répertoires et leurs noms. Le nouveau FS peut contenir jusqu'à deux cent soixante-deux mille exaoctets d'informations et "NTFS" - seulement seize exaoctets.



Il manque également de chiffrement, de compression, de déduplication, de quotas de disque, de liens physiques et d'attributs étendus. Certains d'entre eux ont été remplacés par de nouveaux, par exemple, «ReFS» prend entièrement en charge le chiffrement BitLocker.



Désormais, dans le système de fichiers "ReFS", vous ne pouvez formater que le pool de disques (espace de stockage), où le nouveau FS se montrera dans toute sa splendeur. Mais Windows 10 ne vous permettra pas de formater les médias normaux en "ReFS". Les développeurs soulignent l'importance du "ReFS" spécifiquement pour les serveurs, il est disponible sur OS serveur ou en version "LTSC".



Windows Server 2016 autorisera le formatage des volumes normaux en "ReFS", mais ne permettra pas le formatage du disque de démarrage, car le secteur de démarrage doit être sur une partition "NTFS".



Architecture du système de fichiers



Les structures de ReFS sont très différentes de celles de tous les autres systèmes de fichiers Windows. Les principaux éléments constitutifs sont les arbres B +. Ils sont à un seul niveau (comme les feuilles) et à plusieurs niveaux (comme les arbres). Cela fournit une bonne mise à l'échelle pour chaque élément inclus dans la structure FS. Ce schéma, ainsi que l'adressage 64 bits de chaque élément, rend impossible des problèmes avec son augmentation supplémentaire.



image



En tant qu'enregistrement racine de l'arborescence B +, les autres enregistrements ont la même taille, 16 Ko, pour le bloc de métadonnées. Taille 60 octets - alloué pour les nœuds intermédiaires (adresse). Par conséquent, un petit nombre de niveaux sera nécessaire pour décrire correctement les structures de stockage à grande échelle. Cela a permis d'augmenter les performances de FS, par rapport aux autres.



Structure du système de fichiers ReFS



"ReFS" peut être identifié par une signature spécifique située au début de la section:



image



0x4000 octets - la longueur de toutes les pages ReFS.



image



Le premier numéro de page est 0x1e, c'est-à-dire 0x78000 octets immédiatement après la partition de démarrage. Il s'agit d'un mappage Microsoft standard qui conseille de rechercher les premières métadonnées après un décalage fixe.



Algorithme de recherche de données supprimé









Les utilitaires de récupération de données effectueront une analyse complète de l'espace disque formaté «ReFS» à l'aide d'un algorithme d'analyse basé sur les signatures. En vérifiant le disque bloc par bloc, ils trouveront des séquences de données prêtes, les identifieront et imprimeront les résultats. Étant donné que l'API pour travailler avec des disques pour «ReFS» et «NTFS» est la même, les processus de récupération de données sont extrêmement similaires.



Tout d'abord, le "Volume Header" est déterminé, il contient le nombre de secteurs par cluster et la part d'un secteur. La version principale se trouve dans le secteur zéro et la copie se trouve dans le dernier. Ensuite, "Superblock" est lu, il est situé dans le 30ème bloc et il y a aussi 2 copies dans les deuxième et troisième blocs à la fin. A partir de celui-ci, les liens vers le «point de contrôle» et sa copie sont extraits, sa dernière version actuelle est déterminée par «l'horloge virtuelle allouée».



Checkpoint contient des informations sur les tableaux principaux, puis les en-têtes "En-tête de page" et les blocs avec des pointeurs (pointeurs) vers la liste complète des tableaux sont lus. Ensuite, la "Table des conteneurs" est recherchée pour obtenir les adresses physiques des adresses virtuelles, et une recherche est effectuée sur la "Table des ID d'objet" - toutes les tables sont trouvées.



Les utilitaires descendent au niveau zéro - c'est-à-dire les feuilles d'arbre b - et lisent les données du fichier. La recherche étant effectuée page par page, s'il y a des échecs, ces éléments sont simplement exclus de l'analyse, et le processus d'analyse lui-même se poursuit. Ainsi, les utilitaires de récupération de données trouvent toutes les informations qu'il est possible «d'obtenir» du disque.



Voir la source pour l' article complet avec tous les didacticiels vidéo supplémentaires .



All Articles