I updated my system last night using stable
.
When I boot, I briefly see a message at the console after fsck
runs on my root partition:
The root device is not configured to be mounted read-write! It may be fsck’d again later.
As I looked deeper, I found using dumpe2fs
that my root partition had not actually been checked since I first installed the system. Searching around, I found and followed the advice in
https://forum.manjaro.org/t/how-to-enforce-boot-time-file-system-check/28363
among others. I used tune2fs
to turn on periodic checking and made sure that GRUB_ROOT_FS_RO
is set in /etc/default/grub
but I still see that warning.
In that GRUB file, I see this little nugget:
# Uncomment to ensure that the root filesystem is mounted read-only so that
# systemd-fsck can run the check automatically. We use 'fsck' by default, which
# needs 'rw' as boot parameter, to avoid delay in boot-time. 'fsck' needs to be
# removed from 'mkinitcpio.conf' to make 'systemd-fsck' work.
# See also Arch-Wiki: https://wiki.archlinux.org/index.php/Fsck#Boot_time_checking
GRUB_ROOT_FS_RO=true
If I look at mkinitcipo.conf
, I see that fsck
is still in the HOOKS
list:
HOOKS=(base udev autodetect modconf block filesystems keyboard fsck)
As I understand it, Manjaro’s choice is to not use the mkinitcpio
hook method, so is the line above a bug in the mkinitcpio
package?
Thankfully, it looks like my root partition is actually getting checked after my configuration tweaks, as reported by journalctl -u systemd-fsck*
and dumpe2fs
.
So why is fsck
still referenced in /etc/mkinitcpio.conf
?