Linux Filesystem Ext*

tune2fs — adjust ext2/3/4 filesystem parameters

tune2fs modifies parameters of ext2/3/4 filesystems. It can change mount counts, reserved blocks, UUIDs, labels, and feature flags.

What tune2fs is good for

Warning: Some options require the filesystem to be unmounted. Improper changes can make a filesystem unmountable.

Install

tune2fs is part of the e2fsprogs package.

# Debian/Ubuntu
sudo apt install e2fsprogs

# Fedora/RHEL
sudo dnf install e2fsprogs

# Arch
sudo pacman -S e2fsprogs

10 Practical Examples

1) Show current filesystem parameters

sudo tune2fs -l /dev/sdX1

Lists label, UUID, features, mount counts, and more.

2) Change filesystem label

sudo tune2fs -L DATA /dev/sdX1

Sets a new label.

3) Change UUID

sudo tune2fs -U random /dev/sdX1

Generates a new random UUID.

4) Set reserved blocks percentage

sudo tune2fs -m 1 /dev/sdX1

Reserves 1% of space for root (default often 5%).

5) Set maximum mount count before fsck

sudo tune2fs -c 30 /dev/sdX1

Force fsck after 30 mounts.

6) Disable mount-count based fsck

sudo tune2fs -c 0 /dev/sdX1

Disables mount-count trigger.

7) Set time-based fsck interval

sudo tune2fs -i 3m /dev/sdX1

Force fsck every 3 months.

8) Remove time-based fsck

sudo tune2fs -i 0 /dev/sdX1

Disable time-triggered fsck.

9) Enable dir_index feature (hashed directories)

sudo tune2fs -O dir_index /dev/sdX1
sudo e2fsck -f /dev/sdX1

Improves large directory performance (requires fsck).

10) Add journal to ext2 filesystem

sudo tune2fs -j /dev/sdX1

Converts ext2 to ext3 by adding a journal.

Notes & Gotchas

Related commands: debugfs, e2fsck, dumpe2fs, lsblk