← All commands
Topic hub System & Storage
Windows Linux System & Storage Expanded guide Disk & Storage

Windows defrag equivalent in Linux

Discards unused SSD blocks or defragments an ext4 filesystem when appropriate.

Windows defrag
→
Linux equivalents
Debian/Ubuntu same command
sudo fstrim -av
Fedora same command
sudo fstrim -av
Arch same command
sudo fstrim -av

Overview

What this command does

On Windows, "defrag" is used to optimize storage maintenance. On Linux, the closest practical mapping shown here is "sudo fstrim -av". Discards unused SSD blocks or defragments an ext4 filesystem when appropriate. This reference is grouped under System & Storage → Disk & Storage.

Migration tip: Modern Linux filesystems rarely need traditional defragmentation. SSDs generally benefit from periodic TRIM, which systemd often schedules automatically.

Windows → Linux context

What changes when you use this on Linux?

Equivalent task, different tool

Windows defrag maps to sudo fstrim -av for this task. Treat this as a workflow mapping rather than a character-for-character syntax translation.

Portable across the compared distros

The Debian/Ubuntu, Fedora and Arch rows use the same command in this mapping. Package availability or defaults can still vary, so check the installed tool version when an option behaves differently.

Elevated privilege appears in this workflow

At least one example uses sudo. Confirm the target path, device, service or package before running the elevated form; do not add sudo simply to bypass an unexplained permission error.

Command-specific caution

Do not run e4defrag on non-ext4 filesystems. TRIM support depends on the drive, filesystem and storage stack.

Practical tasks

Common use cases

Optimize storage maintenance

Discards unused SSD blocks or defragments an ext4 filesystem when appropriate.

sudo fstrim -av

Trim all supported mounted filesystems

systemctl status fstrim.timer

Check automatic TRIM scheduling

sudo e4defrag -c /home

Check ext4 fragmentation

Ready to run

Copyable Linux commands

Review paths, device names, package names and permissions before running any command.

sudo fstrim -av
systemctl status fstrim.timer
sudo e4defrag -c /home

Walkthrough

Examples with explanations

sudo fstrim -av # trim supported SSD filesystems
systemctl status fstrim.timer # check the scheduled TRIM timer
sudo e4defrag -c /home # check ext4 fragmentation

Reference

Common options and variations

Command or optionUse
sudo fstrim -avTrim all supported mounted filesystems
systemctl status fstrim.timerCheck automatic TRIM scheduling
sudo e4defrag -c /homeCheck ext4 fragmentation

Distro differences

Debian/Ubuntu vs Fedora vs Arch

Debian/Ubuntu, Fedora and Arch all use "sudo fstrim -av" for this mapping. The command syntax shown here is portable across the three rows, although installed versions and system defaults can still vary.

DistributionPackage manager / baseEquivalent commandDifference to notice
Debian/Ubuntu same command sudo fstrim -av Same command on this distribution.
Fedora same command sudo fstrim -av Same command on this distribution.
Arch same command sudo fstrim -av Same command on this distribution.

Important

What to watch out for

Do not run e4defrag on non-ext4 filesystems. TRIM support depends on the drive, filesystem and storage stack.

Keep learning

Related System & Storage commands