Ext4

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Ext4 and the translation is 61% complete.


Resources

ext4 (Quatrième système de fichier étendu) est un système de fichier open-source et la version la plus récente de la série des systèmes de fichiers étendus. C'est le système de fichier principal utilisé par de nombreux systèmes Linux, pouvant être considéré à raison comme l'un des plus stables et des plus testés dans Linux.

Initialement créé comme une scission d'ext3, ext4 rajoute de nouvelles fonctionnalités, des améliorations de performance, et la suppression des limites de taille, avec peu de changements sur le format initial. Il peut gérer des volumes allant jusqu'à un Exaoctet et avec une taille maximale par fichier de 16To. À la place de l'allocation de bloc de bitmap de ext2/3, ext4 utilise les domaines (ou extends), ce qui améliore les performances avec les fichiers lourds et réduit la fragmentation. Ext4 apporte aussi des algorithmes plus sophistiqués d'allocation de bloc (allocation retardée et allocation multiblocs), donnant au pilote du système de fichiers davantage de possibilités d'optimisation des données sur le disque.

Installation

Noyau

Activer les options noyau suivantes pour le pilote ext4:

KERNEL Activer le support ext4
File systems --->
 <*> The Extended 4 (ext4) filesystem Search for <code>CONFIG_CONFIG_EXT4_FS</code> to find this item.

Support des fonctionnalités optionnelles d'ext4:

KERNEL Activer les fonctionnalités optionnelles pour ext4
File systems --->
 [*] Ext4 POSIX Access Control Lists Search for <code>CONFIG_CONFIG_EXT4_FS_POSIX_ACL</code> to find this item.
 [*] Ext4 Security Labels Search for <code>CONFIG_CONFIG_EXT4_FS_SECURITY</code> to find this item.
 [ ] EXT4 debugging support
Remarque
The ext4 driver can handle ext2, ext3 and ext4 filesystems. It will maintain compatibility if the filesystem is mounted as ext2 or ext3, and will provide upgradability when mounted as ext4. Additionally tune2fs can be used to add ext3- and ext4-specific features to an existing ext2 or ext3 filesystem, though certain hard limits will remain.
Attention !
L'horodatage des fichiers ext2 et ext3 sont affectés par le bug de l'an 2038, tandis que ext4 en est protégé depuis 2016, le noyau Linux 4.3.6 et la version 1.43 d'e2fsprogs. Quand un système de fichiers étendu, spécifiquement sans journal, est voulu, un système de fichiers ext4 doit être utilisé au lieu d'un ext2 sans journal; voir ext4 sans journal.
Important
A normal ext4 system will not need to enable ext3 or ext2 options. The following filesystem options are here solely for historical purposes (ext3) and very special use-cases (ext2).

Ext3

The original ext3 driver was removed from the Linux kernel with version 4.3. There should remain only rare cases which make it necessary to use an ext3 filesystem, in which case the ext4 driver may be used.

Remarque
Il est recommandé d'utiliser le pilote ext4 pour monter le système de fichiers ext3. L'ancien pilote ext4 ne doit pas être activé.

Activer les options noyau suivantes pour le pilote ext3:

KERNEL Activer le support ext3
File systems --->
 <*> Ext3 journalling file system support

Support des fonctionnalités optionnelles d'ext3:

KERNEL Activer les fonctionnalités optionnelles pour ext3
File systems --->
 [*] Default to 'data=ordered' in ext3 
 [*] Ext3 extended attributes
 [*] Ext3 POSIX Access Control Lists
 [*] Ext3 Security Labels

Ext2

Remarque
Le système de fichiers ext2 n'a pas de journal.
Attention !
When the original ext2 filesystem driver is enabled, it will be used to mount ext2 filesystems. Under normal circumstances it is highly recommended to use the ext4 driver, and not to enable the older ext2 driver: there is absolutely no necessity for a separate driver when the ext4 driver is already available to mount ext2 filesystems.
Remarque
The original ext2 driver remains available for special cases. For example: compared to the ext4 driver, the original ext2 code has a lower memory footprint. (In such cases, the ext4 driver will be entirely omitted, so ext3 and ext4 filesystems will not be available.)

Activer les options noyau suivantes pour le support ext2, en utilisant le pilote ext2 d'origine:

KERNEL Activer le support ext2
File systems --->
 <*> Second extended fs support

Support des fonctionnalités optionnelles d'ext2:

KERNEL Activer les fonctionnalités optionnelles pour ext2
File systems --->
 [*] Ext2 extended attributes
 [*] Ext2 POSIX Access Control Lists
 [*] Ext2 Security Labels

Large drive support

KERNEL Enabling large drives for x86 kernels
-*- Enable the block layer --->
 [*] Support for large (2TB+) block devices and files

USE flags

USE flags for sys-fs/e2fsprogs Standard EXT2/EXT3/EXT4 filesystem utilities

+tools Build extfs tools (mke2fs, e2fsck, tune2fs, etc.)
archive Add support for mke2fs to read a tarball as input. This allows not needing privileges. Needs app-arch/libarchive.
cron Install e2scrub_all cron script
fuse Build fuse2fs, a FUSE file system client for ext2/ext3/ext4 file systems
nls Add Native Language Support (using gettext - GNU locale utilities)
static-libs Build static versions of dynamic libraries as well
test Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)
verify-sig Verify upstream signatures on distfiles
Data provided by the Gentoo Package Database · Last update: 2026年04月13日 11:36 More information about USE flags

Emerge

The sys-fs/e2fsprogs package and should be available as part of the default system set. Despite the historical name, the package includes utilities for ext3 and ext4.

root #emerge --ask sys-fs/e2fsprogs

Usage

Création

Attention !
Toute commande mkfs.* et mke2fs va supprimer de manière irréversible tout contenu du disque (c-à-d partition, volume) ou du fichier qui a été indiqué pour être formaté. Il faut être sûr de choisir le bon appareil et la bonne partition ! (dans les exemples suivants, /dev/sdx5 est utilisé.)

Pour créer un système de fichiers ext4 sur la partition /dev/sdx5:

root #mkfs.ext4 /dev/sdx5

Montage

Voir système de fichiers.

Ext4 sans journal

In specific use-cases it may be desirable to create a journal-less filesystem. Even though ext2 does provide exactly that, it is also affected by the year 2038 problem regarding file timestamps. Only the ext4 filesystem has been made Y2K38-safe.

In order to get the current Extended filesystem without a journal, an ext4 filesystem can be created without the has_journal feature, or modified accordingly. (Note that this is not possible on ext3 filesystems.)

Supprimer le journal d'un volume ext4 existant

Pour afficher les fonctionnalités du système de fichiers activées sur un volume ext2/3/4 spécifique:

root #dumpe2fs -h /dev/sdx5 | grep "^Filesystem features:"

Pour désactiver le journal, le système de fichiers doit être démonté en premier:

root #umount /dev/sdx5
root #tune2fs -O ^has_journal /dev/sdx5

The leading ^ disables the specified feature. Otherwise the feature would be enabled; i.e. to enable a journal on an existing ext2 or journal-less ext4 filesystem:

root #tune2fs -O has_journal /dev/sdx5

Running dumpe2fs again, the has_journal feature should no longer be listed. The filesystem can now be mounted again:

root #mount /dev/sdx5
EXT4-fs (/dev/sdx5): mounted filesystem abcdef01-2345-6789-9876-543210fedcba r/w without journal. Quota mode: disabled.

Create a new journal-less ext4 volume

To create (i.e. format) a new ext4 volume without a journal, the default options of the ext4 filesystem type have to be overridden:

root #mke2fs -t ext4 -O ^has_journal /dev/sdx5

Utilitaires

Les utilitaires inclus dans sys-fs/e2fsprogs sont les suivants:

Utilitaire Description Page du manuel
badblocks Cherche les mauvais blocs d'un disque. badblocks(8)
debugfs Un débogueur pour un système de fichiers ext2/ext3/ext4. debugfs(8)
dumpe2fs Un outil pour récupérer les informations des systèmes de fichiers ext2/ext3/ext4. dumpe2fs(8)
e2fsck Un outil pour vérifier les systèmes de fichiers ext2/ext3/ext4. e2fsck(8)
e2image A tool for saving critical ext2/ext3/ext4 filesystem metadata to a file. e2image(8)
e2label A tool to change the label on an ext2/ext3/ext4 filesystem (symlinks to tune2fs).
e2undo A tool to replay an undo log for an ext2/ext3/ext4 filesystem. e2undo(8)
fsck.ext2 Checks, specifically, an ext2 filesystem (symlinks to e2fsck).
fsck.ext3 Checks, specifically, an ext3 filesystem (symlinks to e2fsck).
fsck.ext4 Checks, specifically, an ext4 filesystem (symlinks to e2fsck).
fsck.ext4dev Checks, specifically, an ext4dev filesystem (symlinks to e2fsck).
logsave Un outil pour sauvegarder la sortie d'une commande dans un journal. logsave(8)
mke2fs The base program for creating ext2/ext3/ext4 filesystems. Creation commands symlink here. mke2fs(8)
mkfs.ext2 Creates, specifically, an ext2 filesystem (symlinks to mke2fs).
mkfs.ext3 Creates, specifically, an ext3 filesystem (symlinks to mke2fs).
mkfs.ext4 Creates, specifically, an ext4 filesystem (symlinks to mke2fs).
mkfs.ext4dev Creates, specifically, an ext24dev filesystem (symlinks to mke2fs).
resize2fs An ext2/ext3/ext4 filesystem resizer. resize2fs(8)
tune2fs Adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems. tune2fs(8)
chattr Change file attributes on a Linux filesystem. chattr(1)
lsattr List ext2/ext3/ext4 file attributes. lsattr(1)
e2freefrag Report free space fragmentation information. e2freefrag(8)
e4defrag An online defragmenter for ext4 filesystem. e4defrag(8)
filefrag Report on file fragmentation. filefrag(8)
mklost+found Create a lost+found directory on a mounted ext2/ext3/ext4 file system. mklost+found(8)

Voir aussi

  • XFS — un système de fichiers journalisé de haute performance
  • Btrfs — un système de fichiers fondé sur le copie sur écriture (CoW) pour Linux visant à implémenter des fonctionnalités complexes tout en mettant l'accent sur la tolérance aux pannes, la réparation et la facilité d'administration.
  • FATfilesystem originally created for use with MS-DOS (and later pre-NT Microsoft Windows).

External resources

Références