Systèmes de fichiers NTFS et EXT4. Quelles sont les principales différences ? entre eux ? Quelles sont les similitudes entre eux ?
Réponse
Trop de publicités?NTFS
Le système de fichiers NT, NTFS, est conçu pour effectuer rapidement des opérations de fichiers standard telles que la lecture, l'écriture, la recherche, et même des opérations avancées telles que la récupération du système de fichiers sur de très grands disques durs.
Le formatage d'un volume avec le système de fichiers NTFS entraîne la création de plusieurs fichiers système tels que $MFT, Master File Table, $Bitmap, $LogFile et autres.
La première information sur un volume NTFS est le secteur d'amorçage de la partition (fichier de métadonnées $Boot), qui commence au secteur 0 et peut compter jusqu'à 16 secteurs.
Cryptage : Le système de cryptage de fichiers (EFS) fournit la technologie de cryptage de fichiers de base utilisée pour stocker les fichiers cryptés sur les volumes NTFS.
Quotas de disques : Windows 2000 prend en charge les quotas de disques pour les volumes NTFS.
Repars les points : Les points d'éparpillement sont de nouveaux objets de système de fichiers dans NTFS qui peuvent être appliqués aux fichiers ou dossiers NTFS.
Points de montage des volumes : Points de montage de volume : basés sur les points de repars, les points de montage de volume permettent aux administrateurs de greffer l'accès à la racine d'un volume local sur la structure de dossiers d'un autre volume local.
Fichiers épars : Les fichiers épars permettent aux programmes de créer de très gros fichiers mais de ne consommer de l'espace disque qu'en cas de besoin.
Suivi des liens distribués : NTFS fournit un service de suivi des liens qui maintient l'intégrité des raccourcis vers les fichiers ainsi que des liens OLE dans les documents composés.
EXT4
Ext4 est l'évolution du système de fichiers Linux le plus utilisé, Ext3. Le résultat est un système de fichiers avec une conception améliorée, de meilleures performances, une meilleure fiabilité et de meilleures fonctionnalités.
Système de fichiers/taille des fichiers plus importants : Ext4 ajoute l'adressage par blocs de 48 bits, de sorte qu'il aura 1 EB de taille maximale de système de fichiers et 16 TB de taille maximale de fichier. 1 EB = 1,048,576 TB. Pourquoi 48 bits et pas 64 bits ? Il y a certaines limitations qui devraient être corrigées avant de rendre Ext4 entièrement compatible avec 64 bits, et qui n'ont pas été abordées dans Ext4. Les structures de données d'Ext4 ont été conçues en gardant cela à l'esprit, donc une future mise à jour d'Ext4 implémentera un support 64 bits complet à un moment donné.
Extensibilité des sous-répertoires : Ext4 brise cette limite et permet un nombre illimité de sous-répertoires.
Extensions : Un extent est en fait un ensemble de blocs physiques contigus. Il indique en gros "Les données se trouvent dans les n prochains blocs". Par exemple, un fichier de 100 Mo peut être alloué dans un seul extent de cette taille, au lieu de devoir créer le mappage indirect pour 25600 blocs (4 Ko par bloc). Les fichiers volumineux sont divisés en plusieurs extents. Les extents améliorent les performances et aident également à réduire la fragmentation, puisqu'un extent encourage les dispositions continues sur le disque.
Allocation multiblocs Ext4 utilise un "allocateur multibloc" (mballoc) qui alloue plusieurs blocs en un seul appel, au lieu d'un seul bloc par appel, évitant ainsi beaucoup de surcharge. Cela améliore les performances, et c'est particulièrement utile avec l'allocation différée et les extents.
Allocation retardée : L'allocation retardée est une fonctionnalité de performance et elle consiste à retarder autant que possible l'allocation des blocs, contrairement à ce que font traditionnellement les systèmes de fichiers : allouer les blocs dès que possible. Par exemple, si un processus write()s, le code du système de fichiers allouera immédiatement les blocs où les données seront placées - même si les données ne sont pas écrites maintenant sur le disque et qu'elles seront conservées dans le cache pendant un certain temps.
Fsck rapide Fsck est une opération très lente, surtout la première étape : vérifier tous les inodes du système de fichiers. Dans Ext4, à la fin de la table des inodes de chaque groupe sera stockée une liste des inodes inutilisés (avec une somme de contrôle, pour la sécurité), donc fsck ne vérifiera pas ces inodes. Le résultat est que le temps total de fsck s'améliore de 2 à 20 fois, en fonction du nombre d'inodes utilisés.
Vérification des journaux Le journal est la partie la plus utilisée du disque, ce qui rend les blocs qui en font partie plus sujets aux défaillances matérielles. Et la récupération d'un journal corrompu peut entraîner une corruption massive. Ext4 vérifie les données du journal pour savoir si les blocs du journal sont défaillants ou corrompus.
Défragmentation en ligne Alors que l'allocation différée, les extents et l'allocation multiblocs aident à réduire la fragmentation, les systèmes de fichiers peuvent encore se fragmenter à l'usage. Ext4 supportera la fragmentation en ligne, et il y a un outil e4defrag qui peut défragmenter des fichiers individuels ou le système de fichiers entier.
Caractéristiques liées à l'inode : Inodes plus grands, timestamps nanosecondes, attributs étendus rapides, réservation des inodes. Ext4 utilisera par défaut 256 octets. Ceci est nécessaire pour accueillir certains champs supplémentaires, et l'espace restant de l'inode sera utilisé pour stocker les attributs étendus qui sont assez petits pour tenir dans cet espace. La réservation d'inodes consiste à réserver plusieurs inodes lors de la création d'un répertoire, en s'attendant à ce qu'ils soient utilisés dans le futur. Les timestamps en nanosecondes signifient que les champs d'inodes comme "modified time" pourront utiliser une résolution en nanosecondes.
Pré-allocation persistante Cette fonctionnalité, disponible dans Ext3 dans les dernières versions du noyau, et émulée par la glibc dans les systèmes de fichiers qui ne la prennent pas en charge, permet aux applications de préallouer de l'espace disque : Les applications demandent au système de fichiers de préallouer l'espace, et le système de fichiers préalloue les blocs et les structures de données nécessaires, mais il n'y a pas de données sur le disque jusqu'à ce que l'application ait réellement besoin d'écrire les données dans le futur.
Barrières activées par défaut : Il s'agit d'une option qui améliore l'intégrité du système de fichiers au prix de certaines performances (vous pouvez la désactiver avec "mount -o barrier=0", il est recommandé de l'essayer si vous faites du benchmarking).