ext3

From Gentoo Wiki
Jump to:navigation Jump to:search

Resources

ext3 (third extended filesystem) is an open source disk filesystem created for Linux, and the third version of the extended series of filesystems. The ext3 driver was removed from Linux 4.3[1].

ext3 is the journaled version of the ext2 filesystem, providing metadata journaling for fast recovery in addition to other enhanced journaling modes like full data and ordered data journaling. It uses an HTree index that enables high performance in almost all situations. In short, ext3 is a very good and reliable filesystem.

Installation

Kernel

Activate the following kernel options for ext3 support:

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

Support for optional ext3 features:

KERNEL Enabling ext3 features
File systems  --->
   [*]   Default to 'data=ordered' in ext3 
   [*]   Ext3 extended attributes
   [*]     Ext3 POSIX Access Control Lists
   [*]     Ext3 Security Labels
Optional ext3 support definitions
Option Description
Default to 'data=ordered' in ext3
Ext3 extended attributes Extended attributes are name:value pairs associated with inodes by the kernel or by users.
Ext3 POSIX Access Control Lists Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme.
Ext3 Security Labels Enables an extended attribute handler for file security.

Large drive support

When the system has large disks (2 TB or greater) and a 32-bit (x86) kernel is being used, the following option must be enabled:

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

USE flags

The sys-fs/e2fsprogs package contains the utilities to work with the filesystem. In Gentoo Linux sys-fs/e2fsprogs is part of the system set and should be already installed on the system.

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

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)
split-usr Enable behavior to support maintaining /bin, /lib*, /sbin and /usr/sbin separately from /usr/bin and /usr/lib*
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)
tools Build extfs tools (mke2fs, e2fsck, tune2fs, etc.)

Emerge

After setting the USE flag update the system so the changes take effect:

root #emerge --ask --changed-use --deep @world

Usage

Creation

Warning
The mkfs.ext3 command irreversibly destroys any content of the partition it is told to format. Be sure to select the right partition!

To create an ext3 filesystem on the /dev/sda1 partition:

root #mkfs.ext3 /dev/sda1

Please replace /dev/sda1 with the actual partition to format.

By default, 5% of available disk space is reserved for the root user. This is usually a good thing for the partition where the / directory is mounted, but it may be not desirable on other partitions. To lose reserve disk space for the root user use mkfs.ext3's -m 0 option:

root #mkfs.ext3 -m 0 /dev/sda1

See also

  • Ext4 — an open source disk filesystem and most recent version of the extended series of filesystems.

References

  1. Jan Kara. [PATCH 0/3] Remove ext3 filesystem driver, Linux Kernel Mailing List, July 15th, 2015. Retrieved on July 13th, 2019.