How to Completely Disable the ‘e2scrub_all’ Timer in Ubuntu Server

In Ubuntu Server and other modern Linux distributions utilising the ext4 filesystem, the e2scrub_all.timer is a recurring systemd timer unit responsible for executing the e2scrub_all.service. This service triggers an automated, online metadata consistency check (scrubbing) of all mounted ext4 filesystems residing on LVM (Logical Volume Manager) volumes. While proactive scrubbing is an excellent preventative maintenance feature for detecting latent disk errors on bare-metal servers with traditional spinning hard drives, it introduces massive, unnecessary read-heavy I/O workloads on ephemeral cloud instances, high-performance NVMe database clusters, or read-only immutable filesystems. On storage arrays where hardware controllers or cloud hypervisors already manage block-level integrity, this periodic scrubbing wastes IOPS and CPU cycles.

This guide explains how to completely disable the e2scrub_all timer in Ubuntu Server, enforcing an absolute block on automated ext4 filesystem scrubbing and reclaiming disk I/O for production workloads.

Stop and Mask the e2scrub_all Timer

Because this timer is managed by the core e2fsprogs package, a simple systemctl disable is insufficient; the timer will be silently re-enabled during routine package upgrades. To enforce a strict, immutable block, we must explicitly mask the unit.

  1. Log into your Ubuntu Server via SSH using an account with sudo privileges.
  2. Stop the timer to halt any currently scheduled execution:
    sudo systemctl stop e2scrub_all.timer
  3. Stop the associated service unit that the timer invokes:
    sudo systemctl stop e2scrub_all.service
  4. Mask both the timer and service units. This symlinks them to /dev/null, creating a hard block against future activation by package triggers or manual invocations:
    sudo systemctl mask e2scrub_all.timer
    sudo systemctl mask e2scrub_all.service

Verify the Service Lockdown

By masking the timer and its associated service, you guarantee that systemd will completely reject any attempt to invoke periodic online ext4 filesystem scrubbing, eliminating massive read-heavy operations on high-performance infrastructure.

To verify the lockdown is successful, attempt to start the timer manually:

sudo systemctl start e2scrub_all.timer

Systemd will return a fatal error stating that the unit is masked (e.g., Failed to start e2scrub_all.timer: Unit e2scrub_all.timer is masked). Furthermore, running systemctl list-timers --all will confirm that the e2scrub_all.timer is completely absent from the active timers list. The server’s disk I/O pipeline is now strictly optimised, ensuring NVMe IOPS are dedicated entirely to application and database workloads rather than redundant filesystem health checks.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.