8.80. E2fsprogs-1.47.0

The E2fsprogs package contains the utilities for handling the ext2 file system. It also supports the ext3 and ext4 journaling file systems.

Approximate build time: 2.4 SBU on a spinning disk, 0.4 SBU on an SSD
Required disk space: 95 MB

8.80.1. Installation of E2fsprogs

The E2fsprogs documentation recommends that the package be built in a subdirectory of the source tree:

mkdir -v build
cd       build

Prepare E2fsprogs for compilation:

../configure --prefix=/usr           \
             --sysconfdir=/etc       \
             --enable-elf-shlibs     \
             --disable-libblkid      \
             --disable-libuuid       \
             --disable-uuidd         \

The meaning of the configure options:


This creates the shared libraries which some programs in this package use.


These prevent building and installing the libuuid and libblkid libraries, the uuidd daemon, and the fsck wrapper; util-linux installs more recent versions.

Compile the package:


To run the tests, issue:

make check

One test named m_assume_storage_prezeroed is known to fail.

Install the package:

make install

Remove useless static libraries:

rm -fv /usr/lib/{libcom_err,libe2p,libext2fs,libss}.a

This package installs a gzipped .info file but doesn't update the system-wide dir file. Unzip this file and then update the system dir file using the following commands:

gunzip -v /usr/share/info/libext2fs.info.gz
install-info --dir-file=/usr/share/info/dir /usr/share/info/libext2fs.info

If desired, create and install some additional documentation by issuing the following commands:

makeinfo -o      doc/com_err.info ../lib/et/com_err.texinfo
install -v -m644 doc/com_err.info /usr/share/info
install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info

8.80.2. Configuring E2fsprogs

/etc/mke2fs.conf contains the default value of various command line options of mke2fs. You may edit the file to make the default values suitable for your need. For example, some utilities (not in LFS or BLFS) cannot recognize a ext4 file system with metadata_csum_seed feature enabled. If you need such an utility, you may remove the feature from the default ext4 feature list with the command:

sed 's/metadata_csum_seed,//' -i /etc/mke2fs.conf

Read the man page mke2fs.conf(5) for details.

8.80.3. Contents of E2fsprogs

Installed programs: badblocks, chattr, compile_et, debugfs, dumpe2fs, e2freefrag, e2fsck, e2image, e2label, e2mmpstatus, e2scrub, e2scrub_all, e2undo, e4crypt, e4defrag, filefrag, fsck.ext2, fsck.ext3, fsck.ext4, logsave, lsattr, mk_cmds, mke2fs, mkfs.ext2, mkfs.ext3, mkfs.ext4, mklost+found, resize2fs, and tune2fs
Installed libraries: libcom_err.so, libe2p.so, libext2fs.so, and libss.so
Installed directories: /usr/include/e2p, /usr/include/et, /usr/include/ext2fs, /usr/include/ss, /usr/lib/e2fsprogs, /usr/share/et, and /usr/share/ss

Short Descriptions


Searches a device (usually a disk partition) for bad blocks


Changes the attributes of files on ext{234} file systems


An error table compiler; it converts a table of error-code names and messages into a C source file suitable for use with the com_err library


A file system debugger; it can be used to examine and change the state of ext{234} file systems


Prints the super block and blocks group information for the file system present on a given device


Reports free space fragmentation information


Is used to check and optionally repair ext{234} file systems


Is used to save critical ext{234} file system data to a file


Displays or changes the file system label on the ext{234} file system on a given device


Checks MMP (Multiple Mount Protection) status of an ext4 file system


Checks the contents of a mounted ext{234} file system


Checks all mounted ext{234} file systems for errors


Replays the undo log for an ext{234} file system found on a device. [This can be used to undo a failed operation by an E2fsprogs program.]


Ext4 file system encryption utility


Online defragmenter for ext4 file systems


Reports on how badly fragmented a particular file might be


By default checks ext2 file systems and is a hard link to e2fsck


By default checks ext3 file systems and is a hard link to e2fsck


By default checks ext4 file systems and is a hard link to e2fsck


Saves the output of a command in a log file


Lists the attributes of files on a second extended file system


Converts a table of command names and help messages into a C source file suitable for use with the libss subsystem library


Creates an ext{234} file system on the given device


By default creates ext2 file systems and is a hard link to mke2fs


By default creates ext3 file systems and is a hard link to mke2fs


By default creates ext4 file systems and is a hard link to mke2fs


Creates a lost+found directory on an ext{234} file system; it pre-allocates disk blocks to this directory to lighten the task of e2fsck


Can be used to enlarge or shrink ext{234} file systems


Adjusts tunable file system parameters on ext{234} file systems


The common error display routine


Used by dumpe2fs, chattr, and lsattr


Contains routines to enable user-level programs to manipulate ext{234} file systems


Used by debugfs