EXT4(5)

NOM
ext2 - Le deuxième système de fichiers étendu
ext3 - Le troisième système de fichiers étendu
ext4 - Le quatrième système de fichiers étendu

DESCRIPTION
Les deuxième, troisième et quatrième systèmes de fichiers étendus (ou plus communément connus comme ext2, ext3 et ext4) sont les systèmes de fichiers Linux qui sont historiquement utilisés par défaut par de nombreuses distributions Linux. Ce sont des systèmes de fichiers généralistes qui ont été conçus pour être extensibles et bénéficier d'une compatibilité ascendante. En particulier, les systèmes prévus auparavant pour fonctionner avec les systèmes de fichiers ext2 et ext3 peuvent être montés avec le pilote de système de fichiers ext4, et en effet, dans de nombreuses distributions Linux modernes, le pilote de système de fichiers est configuré pour prendre en charge les requêtes de montage des systèmes de fichiers ext2 et ext3.

FONCTIONNALITÉS DU SYSTÈME DE FICHIERS
Un système de fichiers formaté pour ext2, ext3 ou ext4 peut avoir un sous-ensemble des fonctionnalités suivantes activé. Suivant la version du noyau Linux utilisé, toutes les implémentations des systèmes de fichiers ext2, ext3 ou ext4 ne prennent pas en charge certaines fonctionnalités. Sur d'autres systèmes d'exploitation tels que GNU/Hurd ou FreeBSD, l'implémentation d'ext2 ne prend en charge qu'un ensemble très restreint de ces fonctionnalités

    64bit
        Cette fonctionnalité permet au système de fichiers d'être plus grand que 2^32 blocs. Cette fonctionnalité est activée automatiquement si besoin, mais il peut être utile de l'indiquer explicitement s'il est envisagé de redimensionner le système de fichiers pour atteindre un nombre de blocs supérieur à 2^32, même si celui-ci était plus petit que ce seuil lors de sa création. Remarquez que des versions précédentes du noyau et de e2fsprogs ne prendront pas en charge les systèmes de fichiers avec cette fonctionnalité activée pour ext4.

    bigalloc
        Cette fonctionnalité d'ext4 active l'allocation de blocs par cluster, de sorte que l'unité d'allocation en nombre de blocs est une puissance de deux. Cela signifie que chaque bit de ce qui était traditionnellement connu comme la carte d'allocation de bloc indique maintenant si un cluster est utilisé ou non, un cluster étant par défaut composé de 16 blocs. Cette fonctionnalité peut diminuer le temps passé dans des allocations de blocs et limite la fragmentation, en particulier pour les grands fichiers. La taille peut être indiquée par l'option -C.

        Attention : la fonctionnalité bigalloc est encore en développement, et peut ne pas être complètement prise en charge par le noyau ou peut être boguée. Veuillez consulter la page web http://ext4.wiki.kernel.org/index.php/Bigalloc pour plus d'informations. Elle peut entrer en conflit avec l'allocation avec retard (consultez l'option nodelalloc de mount).

        Cette fonctionnalité nécessite l'activation des fonctionnalités extent.

    dir_index
        Utiliser des arbres binaires hachés (hashed b-trees en anglais) pour accélérer la recherche de noms dans de grands répertoires. Cette fonctionnalité est prise en charge par les systèmes de fichiers ext3 et ext4, et est ignorée par les systèmes de fichiers ext2.

    dir_nlink
        Cette fonctionnalité d'ext4 permet d'avoir plus de 65 000 sous-répertoires par répertoire.

    extent
        Cette fonctionnalité d'ext4 permet la correspondance entre les numéros de blocs logiques pour un inœud particulier et les blocs physiques sur le périphérique de stockage qui seront stockés au moyen d'un arbre étendu, qui est une structure de données plus efficace que le schéma de bloc indirect traditionnel utilisé par les systèmes de fichiers ext2 et ext3. L'utilisation d'arbres étendus diminue le coût associé aux métadonnées des blocs, améliore les performances du système de fichiers et diminue le besoin de lancer e2fsck(8) sur le système de fichiers. (Remarque : les deux noms extent et extents sont considérés comme valables pour cette fonctionnalités pour des raisons historiques et de compatibilité ascendante).

    extra_isize
        Cette fonctionnalité d'ext4 réserve une quantité précise de place dans chaque inœud pour les métadonnées étendues telles que les horodatages en nanosecondes et les temps de création de fichiers, même si le noyau actuel n'a pas besoin de tant de place. Sans cette fonctionnalité, le noyau va réserver la quantité de place nécessaire pour les fonctionnalités dont il a besoin actuellement, et le reste sera utilisé par les attributs étendus.

        Pour que cette fonctionnalité soit utile, la taille des inœuds doit être d'au moins 256 octets.

    ext_attr
        Cette fonctionnalité active l'utilisation des attributs étendus. Cette fonctionnalité est prise en charge par ext2, ext3 et ext4.

    filetype
        Cette fonctionnalité active le stockage de l'information du type de fichiers dans les répertoires. Cette fonctionnalité est prise en charge par ext2, ext3 et ext4.

    flex_bg
        Cette fonctionnalité d'ext4 permet au groupe de métadonnées relatif au bloc (carte des allocations et table des inœuds) d'être placé n'importe où sur le périphérique de stockage. De plus, mke2fs placera ensemble les données de ce groupe, à partir du premier bloc du groupe de chaque « groupe flex_bg ». La taille du groupe flex_bg peut être précisée via l'option -G.

    has_journal
        Créer un journal pour assurer la cohérence du système de fichiers même après un arrêt brutal. Ajouter cette fonctionnalité est équivalent à utiliser l'option -j. Cette fonctionnalité est prise en charge par ext3 et ext4, et ignorée par le pilote de système de fichiers ext2.

    huge_file
        Cette fonctionnalité d'ext4 permet d'avoir des fichiers de plus de 2 téraoctets.

    journal_dev
        Cette fonctionnalité est activée sur le superbloc trouvé dans un périphérique de journal externe. La taille de bloc pour le journal externe doit être la même que celle du système de fichiers qui l'utilise.

        Le périphérique de journal externe peut être utilisé par un système de fichiers en indiquant à mke2fs(8) ou tune2fs(8) l'option -j device=external-devicegt.

    large_file
        Cette fonctionnalité est automatiquement activée par les noyaux récents lorsqu'un fichier de plus de 2 gigaoctets est créé. Les noyaux très anciens ne pouvaient pas gérer de si grands fichiers, et cette fonctionnalité était utilisée pour éviter à ces noyaux de monter les systèmes de fichiers qu'ils ne pouvaient comprendre.

    sparse_super2
        Cette fonctionnalité indique qu'il n'y aura au plus que deux superblocs de sauvegarde et deux descripteurs de groupes de blocs. Les groupes de blocs utilisés pour stocker les superblocs de sauvegarde et les descripteurs de groupes de blocs sont stockés dans le superbloc, mais typiquement, un sera situé au début du premier groupe de blocs et un autre dans le dernier groupe de blocs du système de fichiers. Cette fonctionnalité est essentiellement une version plus extrême de sparse_super et est conçue pour permettre qu'un plus grand pourcentage du disque soit constitué de blocs contigus disponibles pour les fichiers de données.

    meta_bg
        Cette fonctionnalité d'ext4 permet de redimensionner les systèmes de fichiers en ligne sans avoir besoin explicitement de réserver de la place pour l'augmentation de la taille des descripteurs de groupes de blocs. Cette méthode est aussi utilisée pour redimensionner les systèmes de fichiers qui font plus de 2^32 blocs. Il n'est pas recommandé d'activer cette fonctionnalité lors de la création d'un système de fichiers, étant donné que cette méthode alternative de stocker le descripteur de groupe de bloc va augmenter le temps nécessaire à monter le système de fichiers. Les noyaux récents peuvent automatiquement activer cette fonctionnalité si nécessaire pendant un redimensionnement en ligne pendant lequel il n'y aurait plus de place réservée disponible dans l'inœud redimensionné.

    mmp
        Cette fonctionnalité d'ext4 fournit une protection multiple de montage (« MMP »). Cette fonctionnalité contribue à la protection du système de fichiers contre les montages multiples et est utile dans les environnements de stockage partagé.

    quota
        Créer des inœuds de quota (inœud nº 3 pour le quota utilisateur, inœud nº 4 pour le quota de groupe) et les positionner dans le superbloc. Avec cette fonctionnalité, les quotas seront activés automatiquement lorsque le système de fichiers sera monté.

        Cette fonctionnalité implique que les fichiers de quota (c'est-à-dire user.quota et group.quota, qui existaient dans la version plus ancienne des quotas) sont cachés dans les inœuds.

    resize_inode
        Cette fonctionnalité du système de fichiers indique que de la place a été réservée pour que le système de fichiers puisse étendre la table des descripteurs de groupe de blocs lors de son redimensionnement alors qu'il est monté. L'opération de redimensionnement est effectuée par le noyau et déclenchée par resize2fs(8). Par défaut, mke2fs essaie de réserver de la place pour que le système de fichiers puisse grossir 1024 fois. Ceci peut être changé en utilisant l'option étendue resize.

        Cette fonctionnalité nécessite l'activation de la fonctionnalité sparse_super.

    sparse_super
        Cette fonctionnalité est activée sur tous les systèmes de fichiers ext2, ext3 et ext4 récents. Elle indique que les copies de sauvegarde des descripteurs de superblocs et de groupes de blocs sont présents seulement sur quelques groupes de blocs et non sur tous.

    uninit_bg
        Cette fonctionnalité du système de fichiers ext4 indique que les descripteurs de groupes de blocs seront protégés à l'aide de sommes de vérification, rendant plus sûre la création par mke2fs(8) d'un système de fichiers sans initialisation de tous les groupes de blocs. Le noyau délimitera les inœuds inutilisés, et initialisera les tables d'inœuds et de blocs en différé. Cette fonctionnalité réduit le temps mis pour la vérification du système de fichiers avec e2fsck, ainsi que le temps nécessaire à mke2fs(8) pour créer le système de fichiers.

OPTIONS DE MONTAGE
Cette section décrit les options de montages spécifiques à ext2, ext3, et ext4. D'autres options de montage générique peuvent être aussi utilisées. Consultez mount(8) pour plus de détails.

Options de montage pour ext2
Le type de système de fichiers « ext2 » est le type standard pour les systèmes de fichiers Linux. Depuis Linux 2.5.46, les valeurs par défaut de la plupart des options de montage sont déterminées par le superbloc du système de fichiers. Vous pouvez les configurer avec tune2fs(8).

acl|noacl
    Prendre en charge (ou non) les listes de contrôle d'accès (ACL) POSIX.

bsddf|minixdf
    Définir le comportement à adopter pour l'appel système statfs. Le comportement minixdf consiste à renvoyer dans le champ f_blocks le nombre total de blocs du système de fichiers, alors que le comportement bsddf (comportement par défaut) consiste à soustraire les blocs utilisés par le système de fichiers ext2 non disponibles pour le stockage. Ainsi on obtient :

    % mount /k -o minixdf; df /k; umount /k
    Sys. de fichiers | blocks de 1K | Utilisé | Disponible | Utilisé | Uti% | Monté sur
    /dev/sda6 | 2630655 | 86954 | 2412169 | 3% | /k

    % mount /k -o bsddf; df /k; umount /k
    Sys. de fichiers | blocks de 1K | Utilisé | Disponible | Utilisé | Uti% | Monté sur
    /dev/sda6 | 2543714 | 13 | 2412169 | 0% | /k

    (Remarquez que cet exemple montre que l'on peut, en ligne de commande, ajouter des options à celles mentionnées dans /etc/fstab).

check=none ou nocheck
    Aucune vérification n'est faite lors du montage. C'est le comportement par défaut. C'est rapide. Il est sage de lancer e2fsck(8) de temps en temps, par exemple à l'amorçage. Aucun autre comportement que celui par défaut n'est pris en charge (les options check=normal et check=strict ont été supprimées). Veuillez remarquer que ces options de montage n'ont pas besoin d'être prises en charge si le pilote ext4 du noyau est utilisé pour des systèmes de fichiers ext2 et ext3.

debug
    Afficher des informations de débogage lors de chaque (re)montage.

errors={continue|remount-ro|panic}
    Définir le comportement à adopter en cas d'erreur. L'erreur peut être ignorée en marquant simplement le système de fichiers comme étant corrompu, et continuer. Le système de fichiers peut également être remonté en lecture seule. Une panique du noyau peut sinon être déclenchée en forçant l'arrêt du système. Le comportement par défaut est défini dans le superbloc du système de fichiers et peut être configuré avec tune2fs(8).

grpid|bsdgroups et nogrpid|sysvgroups
    Ces options définissent le GID que reçoit un nouveau fichier créé. Quand grpid est positionné, le fichier reçoit le GID du répertoire dans lequel il est créé. Sinon (par défaut), il prend le fsgid du processus appelant, à moins que le répertoire ait son bit Set-GID positionné, auquel cas il reçoit le GID du répertoire parent, et s'il s'agit d'un nouveau répertoire, voit son bit Set-GID positionné.

grpquota|noquota|quota|usrquota
    L'option de montage usrquota (identique à quota) active la prise en charge du quota utilisateur sur le système de fichiers. grpquota active la prise en charge du quota de groupe. Les utilitaires de quota sont en fait nécessaires pour activer et gérer le système de quota.

nouid32
    Désactiver les UID et GID 32 bits. Cela permet l'interopérabilité avec les noyaux anciens qui ne gèrent que des valeurs 16 bits.

oldalloc ou orlov
    Utiliser l'ancienne allocation ou bien l'allocation Orlov pour les nouveaux inœuds. La valeur par défaut est l'allocation Orlov.

resgid=n et resuid=n
    Le système de fichiers ext2 réserve un certain pourcentage de l'espace disponible (par défaut 5 %, consultez mke2fs(8) et tune2fs(8)). Ces options déterminent qui peut utiliser ces blocs réservés (celui qui a l'UID indiqué, ou qui appartient au groupe mentionné).

sb=n
    Utiliser le bloc n comme superbloc plutôt que le bloc 1. Cela sert lorsque le système de fichiers a été endommagé. Avant, des copies du superbloc étaient placées tous les 8192 blocs : 1, 8193, 16385, etc. (des milliers de copies sur un gros système de fichiers). Depuis la version 1.08, mke2fs a une option -s (sparse) pour réduire le nombre de copies, et depuis la version 1.15, c'est l'option par défaut. Notez que cela peut signifier qu'un système de fichiers ext2 créé par une version récente de mke2fs ne peut pas être monté en lecture/écriture avec Linux 2.0.*. Le numéro de bloc utilise des unités de 1 k. Pour utiliser le bloc logique 32678 sur un système de fichiers avec des blocs de 4 ko : « sb=131072 ».

user_xattr|nouser_xattr
    Prendre en charge (ou non) les attributs étendus « user. ».

Options de montage pour ext3
Le système de fichiers ext3 est une version du système de fichiers ext2 à laquelle a été ajoutée la journalisation Il prend en charge les mêmes options que ext2 avec les suivantes en plus.

journal=update
    Mettre à jour le journal du système de fichiers ext3 au format actuel.

journal=numi
    Si un journal existe déjà, cette option est ignorée. Sinon elle indique le numéro de l'inœud que représentera le fichier journal du système de fichiers ext3 ; ext3 créera un journal en écrasant le contenu du fichier dont l'inœud vaut numi.

journal_dev=numpér/journal_path=chemin
    Si les numéros majeur et mineur du périphérique de journal externe ont été modifiés, ces options permettent à l'utilisateur d'indiquer le nouvel emplacement du journal. Le périphérique de journal est identifié soit à l'aide de ses nouveaux numéros majeur et mineur encodés dans numpér, soit à l’aide du chemin vers le périphérique.

norecovery/noload
    Ne pas charger le journal lors du montage. Remarquez que si le système de fichier n'était pas monté proprement, sauter la relecture du journal entraînera des incohérences dans le contenu du système de fichier, pouvant entraîner un certain nombre de problèmes.

data={journal|ordered|writeback}
    Indiquer le mode de journalisation pour les données des fichiers. Les métadonnées sont toujours journalisées. Pour utiliser un mode autre que ordered sur le système de fichiers racine, passer le mode au noyau en tant que paramètre d'amorçage, par exemple : rootflags=data=journal.

    journal
        Toutes les données sont inscrites dans le journal avant d'être écrites dans le système de fichiers principal.

    ordered
        C'est le mode par défaut. Toutes les données sont envoyées dans le système de fichiers principal avant d'inscrire les métadonnées dans le journal.

    writeback
        L'ordre des données n'est pas préservé. Les données peuvent être écrites dans le système de fichiers après que les métadonnées soient inscrites dans le journal. C’est probablement l'option à plus haut débit. Elle garantit l'intégrité interne du système de fichiers, mais d'anciennes données peuvent apparaître dans un fichier après un plantage et une récupération du journal.

data_err=ignore
    Afficher simplement un message d'erreur si une erreur survient dans un tampon de données de fichiers en mode ordonné.

data_err=abort
    Abandonner le journal si une erreur survient dans un tampon de données de fichiers en mode ordonné.

barrier=0 / barrier=1
    Cette option désactive (barrier=0) ou active (barrier=1) l'utilisation de barrières d'écriture dans le code jbd. Elle est activée par défaut. Elle nécessite aussi une pile d'entrée/sortie qui peut prendre en charge les barrières, et si jbd reçoit une erreur sur une barrière d'écriture, il désactivera à nouveau les barrières avec un avertissement. Les barrières d'écriture forcent un ordre correct sur le disque des écritures du journal, en faisant des caches d'écriture sur disque volatiles sûrs, avec un impact négatif sur les performances. Si les disques sont alimentés par des batteries d'une manière ou d'une autre, désactiver les barrières peut améliorer les performance en toute sécurité.

commit=nsec
    Synchroniser toutes les données et les métadonnées toutes les nsec secondes. La valeur par défaut est 5 secondes. Zéro signifie la valeur par défaut.

user_xattr
    Activer les attributs étendus. Consultez la page de manuel attr(5).

acl Activer les listes de contrôle d'accès (ACL) POSIX. Consultez la page de manuel acl(5).

usrjquota=aquota.user|grpjquota=aquota.group|jqfmt=vfsv0
    En plus de l'ancien système de quota (comme dans ext2, jqfmt=vfsold, aussi connu sous le nom de quota version 1), ext3 prend en charge aussi des quotas journalisés (quota version 2). jqfmt=vfsv0 active les quotas journalisés. Pour les quotas journalisés, les options de montage usrjquota=aquota.user et grpjquota=aquota.group sont requises pour dire au système de quota quels fichiers de base de données de quotas utiliser. L'avantage des quotas journalisés est qu'ils ne nécessitent pas de vérification de quota même après un plantage.

Options de montage pour ext4
Le système de fichiers ext4 est un niveau plus élevé du système de fichiers ext3 intégrant des améliorations au niveau de l'évolutivité et de la fiabilité, afin de gérer des systèmes de fichiers de grande taille.

Les options journal_dev, norecovery, noload, data, commit, orlov, oldalloc, [no]user_xattr, [no]acl, bsddf, minixdf, debug, errors, data_err, grpid, bsdgroups, nogrpid, sysvgroups, resgid, resuid, sb, quota, noquota, grpquota, usrquota usrjquota, grpjquota et jqfmt sont rétrocompatibles avec ext2 et ext3.

journal_checksum
    Activer les sommes de contrôles pour les transactions du journal. Cela permet au code de récupération de e2fsck et au noyau de détecter des corruptions dans le noyau. C'est un changement rétrocompatible qui sera ignoré par les anciens noyaux.

journal_async_commit
    Les blocs d'inscription peuvent être écrits sur le disque sans attendre de descripteur de blocs. Si cela est activé avec un vieux noyau, le périphérique ne pourra pas être monté. Cela activera en interne journal_checksum.

barrier=0 / barrier=1 / barrier / nobarrier
    Ces options de montage ont le même effet qu'avec ext3. Les options de montage « barrier » et « nobarrier » sont ajoutées pour la cohérence avec les autres options de montage d'ext4.

    Le système de fichiers ext4 active les barrières d'écriture par défaut.

inode_readahead_blks=n
    Ce paramètre définit le nombre maximal de blocs de table d'inœuds que l'algorithme « readahead » de la table d'inœuds d'ext4 va prélire dans la mémoire cache. La valeur doit être une puissance de 2. La valeur par défaut est de 32 blocs.

stripe=n
    Nombre de blocs du système de fichiers que mballoc essayera d'utiliser pour la taille d'allocation et l'alignement. Pour les systèmes RAID 5 ou 6, cela devrait être le nombre de disques de données multiplié par la taille de morceau (« chunk ») RAID dans les blocs du système de fichiers.

delalloc
    Reporter l'allocation des blocs après les écritures.

nodelalloc
    Désactiver les allocations retardées. Les blocs sont alloués lorsque les données sont copiées depuis le cache utilisateur vers le cache de page.

max_batch_time=usec
    Durée maximale pendant laquelle ext4 devrait attendre des opérations supplémentaires sur le système de fichiers afin de les grouper pour une écriture synchrone. Puisque l'opération d'écriture synchrone va forcer une inscription des données et attendre la fin des entrées/sorties, qu'elle est peu coûteuse et peut représenter un gain significatif de débit, ext4 attend un petit peu pour voir si d'autres transactions peuvent être englobées dans l'écriture synchrone. L'algorithme utilisé est conçu pour faire des réglages automatiquement en fonction de la vitesse du disque, en mesurant le temps (moyen) d'une inscription complète d'une transaction. Ce temps est appelé « temps d'inscription » (« commit time »). Si le temps pendant lequel une transaction est en cours est inférieur au temps d'inscription, ext4 essaiera de dormir pendant une durée égale au temps d'inscription pour voir si d'autres opérations vont se joindre à la transaction. Le temps d'inscription est majoré par la valeur max_batch_time, qui vaut par défaut 15 000 µs (ou 15 ms). Cette optimisation peut être désactivée complètement en affectant la valeur 0 à max_batch_time.

min_batch_time=usec
    Ce paramètre définit le temps d'inscription des données (comme décrit ci-dessus) qui doit être au moins égale à min_batch_time. La valeur par défaut est zéro microseconde. Augmenter ce paramètre peut améliorer le débit des charges de travail multiprocessus, synchrone sur les disques très rapides. Tout cela augmentant le temps de latence.

journal_ioprio=prio
    La priorité d'entrées et sorties (de 0 à 7, où 0 est la priorité la plus haute) qui doit être utilisée pour les opérations d'entrées et sorties soumise par kjournald2 durant une opération d'inscription. La priorité par défaut est 3, ce qui est légèrement supérieur à la priorité par défaut.

abort
    Simuler les effets d'un appel ext4_abort() dans un but de débogage. C'est normalement utilisé lors du remontage d'un système de fichier qui est déjà monté.

auto_da_alloc|noauto_da_alloc
    Beaucoup d'applications déficientes n'utilisent pas fsync() lors du remplacement des fichiers existants avec un motif comme

    fd = open("toto.new")/write(fd,...)/close(fd)/ rename("toto.new", "toto")

    ou pire encore

    fd = open("toto", O_TRUNC)/write(fd,...)/close(fd).

    Si auto_da_alloc est activé, ext4 détectera les motifs de « remplacement par renommage » et de « remplacement par troncature », et forcera l'allocation de tout bloc d'allocation retardé tel qu'à la prochaine inscription dans le journal, en mode data=ordered par défaut, les blocs de données du nouveau fichier sont envoyés sur le disque avant que l'opération rename() ne soit inscrite. Cela fournit approximativement le même niveau de garantie que ext3, et évite le problème de « longueur nulle » qui peut survenir lors d'un arrêt brutal du système avant que les blocs d'allocation retardés ne soient envoyés au disque.

noinit_itable
    Ne pas initialiser les blocs non initialisés de la table des inœuds en tâche de fond. Cette fonctionnalité peut être utilisée par les CD d'installation afin que le processus d'installation termine le plus vite possible. Le processus d'initialisation de la table des inœuds serait alors reporté au prochain montage du système de fichiers.

init_itable=n
    Le code d'initialisation différée de la table d'inœuds attendra n fois le nombre de millisecondes qu'il a pris pour mettre à zéro la table d'inœuds du groupe de blocs précédent. Cela minimise l'impact sur les performances du système pendant l'initialisation de la table d'inœuds du système de fichiers.

discard/nodiscard
    Contrôler si ext4 devrait envoyer des commandes discard et TRIM au périphérique bloc sous-jacent quand les blocs sont libérés. C'est utile pour les périphériques SSD et l'allocation fine et dynamique (« thinly-provisioned LUN »), mais n'est pas activé par défaut avant d'avoir été suffisamment essayé.

nouid32
    Désactiver les UID et GID 32 bits. Cela permet l'interopérabilité avec les noyaux anciens qui ne gèrent que des valeurs 16 bits.

block_validity/noblock_validity
    Cette option permet de d'activer ou désactiver la fonction de suivi des blocs de métadonnées de système de fichiers dans les structures de données internes. Cela permet à l'allocation multiblocs et à d'autres routines de localiser rapidement celles qui pourraient se superposer avec des blocs de métadonnées de système de fichiers. Cette option est conçue pour le débogage, et puisqu'elle a des effets négatifs sur les performances, elle est désactivée par défaut.

dioread_lock/dioread_nolock
    Contrôler si ext4 devrait ou non utiliser le verrouillage de lecture DIO. Si l'option dioread_nolock est indiquée, ext4 allouera les extensions non initialisées avant l'écriture du tampon et initialisera les extensions après la fin des entrées et sorties. Cette approche permet au code ext4 d'éviter l'utilisation d'inœud mutex, ce qui améliore l'évolutivité sur les stockages à grande vitesse. Cependant cela ne fonctionne pas avec la journalisation de données et l'option dioread_nolock sera ignorée avec des avertissements du noyau. Remarquez que le chemin du code dioread_nolock n'est utilisé que pour les fichiers à base d'extensions. À cause des restrictions accompagnant cette option, elle est désactivée par défaut (c'est-à-dire dioread_lock).

max_dir_size_kb=n
    Cette option limite la taille des répertoires de sorte que toute tentative de les faire croître au-delà de la limite indiquée (en kilooctets) causera une erreur ENOSPC. C'est utile dans des environnements avec des contraintes de mémoire, où un très grand répertoire peut causer de gros problèmes de performance ou même provoquer le mécanisme de tuage de processus en l'absence de mémoire (« Out Of Memory killer »). Par exemple, s'il y a seulement 512 MB de mémoire disponible, un répertoire de 176 MB pourrait sérieusement monopoliser les ressources du système.

i_version
    Activer la prise en charge de version d'inœud 64 bits. Cette option est désactivée par défaut.

ATTRIBUTS DE FICHIERS
Les systèmes de fichiers ext2, ext3 et ext4 prennent en charge la définition des attributs de fichiers suivants sur les systèmes Linux avec l'outil chattr(1) :

a — ajout à la fin du fichier seulement

A — pas de mise à jour du temps d'accès (« atime »)

d — pas de sauvegarde par le progamme dump

D — mises à jour synchrones des répertoires

i — immuable

S — mises à jour synchrones

u — ineffaçable

En plus, les systèmes de fichiers ext3 et ext4 prennent en charge l'attribut suivant :

j — journalisation des données

Enfin, le système de fichiers ext4 prend aussi en charge l'attribut suivant :

e — format des extensions (« extents »)

Pour les descriptions de ces attributs, veuillez consulter la page de manuel de chattr(1).

VOIR AUSSI
mke2fs(8), mke2fs.conf(5), e2fsck(8), dumpe2fs(8), tune2fs(8), debugfs(8), mount(8), chattr(1)

TRADUCTION
La traduction de cette page de manuel est maintenue par les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.