A file system check on startup is triggered by systemd services. There are , systemd-fsck-root.service
and [email protected]
for the root file system and other partitions, respectively. These services continue to use the traditional passno, i.e., the number on the sixth field in /etc/fstab
, to determine if and in what order announced file systems should be checked.
According to man systemd-fsck
:
These services are started at boot if passno in /etc/fstab for the file
system is set to a value greater than zero. The file system check for
root is performed before the other file systems. Other file systems may
be checked in parallel, except when they are on the same rotating disk.
However, root appears to be treated specially. It is checked earlier on in the boot process, in initramfs. As stated in the documentation, systemd-fsck-root.service
only kicks in when the check did not proceed there. Else, its status will be revealed as "failed".
So probably, you would see effect of changing passno in /etc/fstab
if you changed it for a partition other than the root partition.
That your output of tune2fs
is indicating a check long ago is due to the fact that only thorough file system checks are registered. By default, a file system check of journaling ext file systems is limited to checking what the journal reports. In former Ubuntu versions, a max-mount-count
of 30 was set, indicating that a full file system check would be forced after every 30 mounts. Currently, this is set to -1
, so the file system is never fully checked unless the journal reports an issue.