How to Completely Disable the ‘systemd-fsck-root’ Service in Ubuntu Server

In Ubuntu Server, systemd-fsck-root.service is a systemd unit responsible for executing the file system consistency check (fsck) on the primary root partition (/) during the earliest stages of the boot sequence, right after the initramfs pivots to the real root. While crucial for traditional file systems like ext4 or XFS to repair unexpected corruption after a sudden power loss, this service is entirely superfluous—and actively ignored—on systems utilizing ZFS or Btrfs as the root file system. These modern, copy-on-write (CoW) file systems have their own integrated scrubbing and consistency mechanisms and do not utilize the legacy fsck binary. Leaving the service enabled on a ZFS root system merely clutters the boot log and wastes a fraction of a second during startup.

This guide explains how to completely disable the systemd-fsck-root.service in Ubuntu Server, streamlining the boot process for systems utilizing next-generation CoW file systems.

Stop and Mask the systemd-fsck-root Service

Because this service executes extremely early in the boot process, long before standard user services, we must mask it to ensure systemd completely bypasses the execution node during the sysinit.target phase.

  1. Log into your Ubuntu Server via SSH using an account with sudo privileges.
  2. You cannot “stop” this service on a running system as it only executes at boot. Proceed directly to disabling it to remove it from the boot dependency tree:
    sudo systemctl disable systemd-fsck-root.service
  3. Next, to guarantee that systemd treats the unit as a black hole and never attempts to execute it under any circumstances, mask it entirely:
    sudo systemctl mask systemd-fsck-root.service

Verify the Service Lockdown

By masking the service, you have instructed systemd to symlink the unit file to /dev/null. The boot sequence will now proceed immediately to mounting the root file system without pausing to invoke the legacy fsck wrapper.

To verify the lockdown is successful, run the following command to check the status of the service:

systemctl status systemd-fsck-root.service

The output will clearly state that the service is masked. If you reboot the server and analyze the early boot sequence using systemd-analyze blame, you will confirm that systemd-fsck-root.service is no longer present in the execution path, providing a cleaner, more efficient boot sequence for your advanced storage architecture.

Get the best tech tips delivered straight to your inbox.

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