Qu'est-ce que ext4 (quatrième système de fichiers étendu) ?

24 avril 2024

ext4, le successeur de ext3, est une Linux/Unix système de fichiers de journalisation et pierre angulaire de la gestion du stockage depuis son introduction en 2008. Il prend en charge les systèmes de fichiers volumineux et de nombreux fichiers, ce qui en fait un choix populaire pour tout, de l'informatique personnelle au niveau de l'entreprise. data centers.

Qu'est-ce qu'un poste ?

Le "poste" système de fichiers, abréviation de « système de fichiers étendu », a été le premier spécialement conçu pour le noyau Linux. Introduit en 1992, il a été créé pour surmonter les limitations du système de fichiers Minix, utilisé dans les premières versions de Linux. Le système de fichiers ext a apporté plusieurs améliorations, comme la prise en charge du système de fichiers métadonnées, ce qui a permis une gestion plus efficace des fichiers et répertoires. Il prenait en charge des fichiers de plus grande taille et un plus grand nombre de fichiers que Minix, ce qui était crucial pour l'adoption et la croissance de Linux.

Cependant, le système de fichiers ext avait ses limites, comme l'absence de fonctionnalité de journalisation, qui ont conduit au développement de ses successeurs :

  • ext2, introduit en 1993, n'était pas journalisé mais offrait de meilleures performances et fiabilité que l'ext.
  • ext3, sorti en 1999, a ajouté des fonctionnalités de journalisation pour améliorer intégrité des données sur les pannes du système.
  • ext4, sorti en 2008, a encore étendu les capacités en termes de taille et de performances.

Chaque itération a été conçue pour répondre aux besoins évolutifs des systèmes Linux tout en conservant la compatibilité avec les versions précédentes.

Qu’est-ce que ext4 ?

L'ext4, ou quatrième système de fichiers étendu, est un système de fichiers de journalisation pour Linux, développé pour succéder à ext3. Il introduit plusieurs améliorations par rapport à son prédécesseur, améliorant les performances, la fiabilité et la capacité de stockage.

ext4 prend en charge des systèmes de fichiers plus volumineux et gère plus de fichiers que ext3, ce qui le rend adapté aux besoins de stockage modernes. Il inclut des fonctionnalités telles que l'allocation différée, qui améliore les performances et réduit fragmentation en attendant de décider de l'emplacement des blocs du système de fichiers jusqu'à ce qu'ils soient réellement écrits.

Le système de fichiers ext4 implémente également un format 48-Bits schéma d'adressage par blocs, lui permettant de prendre en charge des tailles de disque allant jusqu'à 1 exabyte et des fichiers individuels jusqu'à 16 téraoctets. Ce système de fichiers est conçu pour étendre les limites de stockage et augmenter la vitesse d'accès sans compromettre l'intégrité des données, tout en conservant la facilité de mise à niveau d'ext3 tout en permettant une compatibilité ascendante.

Fonctionnalités ext4

Voici les principales caractéristiques et fonctionnalités d’ext4 :

  • Prise en charge des grands systèmes de fichiers. ext4 peut prendre en charge des volumes d'une taille allant jusqu'à 1 exbioctet (EiB) et des fichiers d'une taille allant jusqu'à 16 tébioctets (TiB), ce qui représente une augmentation significative par rapport à son prédécesseur.
  • Étendues. Contrairement à ext3, qui utilise un système bitmap (mappage de blocs), ext4 utilise des extensions, qui constituent une méthode plus efficace d'allocation de blocs de fichiers qui améliore les performances avec les fichiers volumineux et réduit la fragmentation.
  • Rétrocompatibilité. ext4 est rétrocompatible avec ext3 et ext2, ce qui signifie qu'il peut monter des systèmes de fichiers créés avec ces versions antérieures.
  • Journalisation. ext4 conserve l'utilisation d'un mécanisme de journalisation, qui permet de protéger l'intégrité du système de fichiers contre les arrêts soudains, matériel plantages et autres types de pannes du système.
  • Attribution retardée. Cette fonctionnalité améliore les performances et réduit la fragmentation en retardant l'allocation des blocs jusqu'à ce qu'ils soient réellement nécessaires pour stockage de données.
  • Augmentation de la limite des sous-répertoires. ext4 prend en charge un nombre illimité de sous-répertoires, contrairement à ext3, qui est limité à 32,000 XNUMX.
  • Horodatages. ext4 prend en charge les horodatages avec une résolution nanoseconde, ce qui constitue une amélioration par rapport à la seconde résolution utilisée dans ext3. Il inclut également la prise en charge des dates jusqu'à l'année 2446 grâce à l'utilisation de champs de date de 48 bits.
  • Défragmentation en ligne. ext4 prend en charge en ligne défragmentation, permettant la défragmentation du système de fichiers sans le démonter, ce qui est crucial pour les systèmes nécessitant une disponibilité continue.
  • Sommes de contrôle pour la journalisation. Ext4 peut utiliser checksums dans le journal pour améliorer la fiabilité et la vitesse de récupération en cas d'accident.

Avantages et inconvénients d'ext4

ext4 offre de nombreux avantages ainsi que certains inconvénients dont les utilisateurs doivent être conscients.

Avantages

Voici quelques avantages clés du système de fichiers ext4 qui font d'ext4 un choix robuste, efficace et polyvalent pour divers Distributions Linux, contribuant à son adoption généralisée dans différents secteurs et cas d'utilisation :

  • Augmentation des limites de stockage. ext4 peut gérer des volumes et des fichiers plus volumineux bien mieux que ses prédécesseurs. Il prend en charge des volumes jusqu'à 1 exaoctet et des fichiers jusqu'à 16 téraoctets. Cette capacité le rend adapté aux applications d'entreprise et aux tâches gourmandes en données, répondant ainsi aux demandes croissantes de stockage.
  • Performance améliorée. ext4 introduit plusieurs fonctionnalités qui améliorent ses performances. Il utilise des extensions, qui sont des blocs de stockage contigus, réduisant la fragmentation et améliorant la vitesse d'accès et de stockage des fichiers. L'allocation différée améliore les performances d'E/S en optimisant la manière dont les données sont écrites sur le disque, améliorant ainsi l'efficacité globale du système de fichiers.
  • Journalisation. L'un des principaux atouts d'ext4 est sa capacité de journalisation, qui contribue à protéger l'intégrité des données en conservant un journal des transactions en cours. En cas de panne du système ou de panne de courant, cette fonctionnalité permet au système de fichiers de récupérer plus rapidement et plus proprement en relisant le journal.
  • Rétrocompatibilité. ext4 est rétrocompatible avec les systèmes de fichiers ext2 et ext3. Cette fonctionnalité permet aux utilisateurs de monter des systèmes de fichiers plus anciens au format ext4 sans avoir besoin de convertir toutes les données, ce qui offre une excellente fonctionnalité. flexabilité et facilité de mise à niveau.
  • Défragmentation en ligne. ext4 prend en charge la défragmentation en ligne, permettant aux utilisateurs de défragmenter le système de fichiers alors qu'il est encore monté et utilisé. Cette fonctionnalité est avantageuse dans les environnements où les temps d'arrêt doit être minimisé.
  • Préallocation persistante. ext4 permet la pré-allocation d'espace disque aux fichiers avant leur écriture. Cette fonctionnalité est utile pour les applications qui doivent garantir qu'elles disposent de suffisamment d'espace pour les données avant de démarrer une opération, comme l'enregistrement multimédia ou le traitement de données scientifiques.

Inconvénients

Voici une liste des inconvénients du système de fichiers ext4, avec des explications pour chacun :

  • Manque d'instantanés et de sommes de contrôle intégrés. Contrairement à certains systèmes de fichiers modernes comme Btrfs ou ZFS, ext4 ne prend pas en charge nativement les instantanés ou les sommes de contrôle pour les fichiers et les métadonnées. Cela signifie qu'il ne peut pas capturer et gérer automatiquement les versions du système de fichiers ni vérifier l'intégrité des données au niveau des blocs, ce qui est crucial pour empêcher la corruption des données.
  • Évolutivité limitée. Bien qu'ext4 prenne en charge des fichiers de très grande taille et des capacités de système de fichiers très volumineuses, il lui manque certaines des fonctionnalités les plus avancées. évolutivité fonctionnalités des systèmes de fichiers les plus récents telles que l'allocation dynamique d'inodes (trouvée dans Btrfs), qui s'ajuste automatiquement à mesure que les besoins de stockage augmentent, et des fonctionnalités d'optimisation de disque en temps réel.
  • Récupération complexe. En raison de sa nature journalisée, ext4 peut être plus complexe à récupérer en cas de corruption ou de pannes graves par rapport à des systèmes de fichiers plus simples et non journalisés comme ext2. Même si la fonction de journalisation améliore l'intégrité des données après des arrêts inattendus, elle peut compliquer les efforts de récupération car le journal doit être relu ou effacé correctement.
  • Écrivez l'amplification. ext4 peut provoquer une amplification de l'écriture, en particulier sur SSD, où chaque opération d'écriture implique plusieurs écritures en raison de la journalisation. Cela peut réduire la durée de vie des SSD au fil du temps car ils ont un nombre limité de cycles d'écriture.
  • Vieillissement des données. ext4 n'est pas optimisé pour le stockage de données à très long terme où le système de fichiers n'est pas fréquemment consulté mais doit néanmoins rester fiable dans le temps. Le système de journalisation peut conduire à des scénarios dans lesquels les données plus anciennes ne sont pas actualisées ou vérifiées comme elles le seraient dans des systèmes de fichiers conçus à des fins d'archivage.
  • Surcharge de performances. La fonctionnalité de journalisation, bien que bénéfique pour l’intégrité des données, introduit une surcharge de performances. Chaque opération d'écriture doit être enregistrée dans le journal, ce qui peut ralentir les vitesses d'écriture, en particulier dans les environnements nécessitant des E/S élevées.
  • Pas de cryptage natif. ext4 ne fournit pas de natif chiffrement prise en charge au sein du système de fichiers lui-même. Les utilisateurs doivent s'appuyer sur des outils tiers ou un chiffrement au niveau du noyau pour sécuriser les données au repos, ce qui peut compliquer les configurations et potentiellement impacter les performances.

ext4 contre ext3

ext4 et ext3 sont tous deux des systèmes de fichiers de journalisation utilisés principalement dans les environnements Linux, mais ext4 introduit plusieurs améliorations par rapport à ext3, le rendant plus adapté aux besoins informatiques modernes.

ext4 prend en charge des systèmes de fichiers et des fichiers beaucoup plus volumineux ; il peut gérer des volumes allant jusqu'à 1 exaoctet et des tailles de fichiers jusqu'à 16 téraoctets, par rapport à la limite du système de fichiers de 16 téraoctets et à la limite de taille de fichier de 2 téraoctets dans ext3. ext4 intègre également un stockage de fichiers basé sur l'étendue, remplaçant l'approche traditionnelle de mappage de blocs utilisée dans ext3, améliorant considérablement les performances avec les fichiers volumineux et réduisant la fragmentation. De plus, ext4 propose une allocation retardée et offre une vérification plus rapide du système de fichiers par rapport à ext3.

De plus, ext4 inclut de nouvelles fonctionnalités qui ne sont pas présentes dans ext3, telles que la prise en charge d'un nombre illimité de sous-répertoires (ext3 ne prend en charge que jusqu'à 32,000 XNUMX sous-répertoires), la défragmentation en ligne et un système de journalisation plus robuste qui peut éventuellement fonctionner en mode « écriture différée ». Ce mode permet plus flexabilité dans la manière dont les données sont écrites sur le disque, augmentant potentiellement le débit.

ext4 maintient également une compatibilité ascendante avec ext3, ce qui signifie qu'il est possible de monter des systèmes de fichiers ext3 en tant qu'ext4 sans modifier les données du disque. Cette facilité de mise à niveau, associée à des performances et une capacité améliorées, fait d'ext4 un choix attrayant pour les nouvelles installations et les mises à niveau à partir d'ext3, bien qu'ext3 soit toujours utilisé en raison de sa stabilité et des tests approfondis qu'il a subis au fil des ans.


Anastasie
Spasojevic
Anastazija est une rédactrice de contenu expérimentée avec des connaissances et une passion pour cloud l'informatique, les technologies de l'information et la sécurité en ligne. À phoenixNAP, elle se concentre sur la réponse à des questions brûlantes concernant la garantie de la robustesse et de la sécurité des données pour tous les acteurs du paysage numérique.