e2fsck is failing on /usr because its already mounted read/write -- seemingly by the initrd Reproducible: Always Steps to Reproduce: 1. 2. 3.generate the initrd using genkernel, run lilo, reboot the system. Actual Results: e2fsck not working for /usr Expected Results: /usr should be mounted read only so e2fsck works.
Created attachment 306941 [details] emerge --info
Mounting /usr rw is actually correct. Dracut does so, too. Please pass 0 0 in fstab if openrc fails on fsck, because /usr should be checked in initramfs-time.
I did check upon my next reboot and initrd does mount /usr read only but e2fsck will not work, so the initrd must run e2fsck before mounting.
Actually this is a feature-request. We need to start checking at least ext{3,4}-fs, since e2fsck refuses to test anything mounted, even if mounted "ro". My system has no support for anything but ext* and btrfs compiled for the moment so could anyone check if the same holds true for, say XFS? # mount | grep VirtIO-backup /dev/mapper/VirtIO-backup on /mnt/tmp type ext4 (ro,relatime,data=ordered) # fsck /dev/VirtIO/backup fsck from util-linux 2.21.2 e2fsck 1.42.5 (29-Jul-2012) /dev/mapper/VirtIO-backup is mounted. e2fsck: Cannot continue, aborting. So we needs to start test mounts before mounted in initramfs. (And could someone with access please remove the reference to pre-Linux-2.6 tech in the summary, it is impossible that the user has an initrd instead of a initramfs).
I haven't checked if genkernel really mounted something rw in 2012 but current genkernel-4 doesn't do that. Closing as OBSOLETE...