journald using kernel 6.8.1-1
Mär 18 17:27:05 systemd-fsck[350]: fsck failed with exit status 8.
Mär 18 17:27:05 systemd-fsck[350]: Ignoring error.
No warning using kernel 6.1 / kernel 6.6
Checking disks via live-medium: no errors
journald using kernel 6.8.1-1
Mär 18 17:27:05 systemd-fsck[350]: fsck failed with exit status 8.
Mär 18 17:27:05 systemd-fsck[350]: Ignoring error.
No warning using kernel 6.1 / kernel 6.6
Checking disks via live-medium: no errors
please issue:
pacman -Qm
If systemd-fsck appears remove it.
As it is no longer maintained.
This rather old issue says to have the base
hook present in /etc/mkinitcpio.conf
:
My /etc/mkinitcpio contains:
…
HOOKS=(base systemd autodetect microcode modconf block keyboard keymap filesystems)
Enabled in /etc/default/grub
GRUB_ROOT_FS_RO=true
AND:
only kernel68 / Kernel61 / kernel66 is ok …
==> My way uses: systemd-fsck-root.service to check disks at startup.
AND: systemd-fsck@.service does not exist any longer
Failed to get properties: Unit name systemd-fsck@.service is neither a valid invocation ID nor unit name.
==> will be masked out as fast as possible …
BUT then all services "systemd-fsck@dev-disk-… are masked too???
no good idea ?!
Presumably that also goes for systemd-fsck-silent also, then?
Were these formerly arch packages?
I have the same issue with 6.8.1-1:
systemd-fsck[296]: fsck failed with exit status 8.
systemd-fsck[296]: Ignoring error.
I added base to hooks in mkinitcpio.conf, but the error did not go away.
Grub is set as follows:
GRUB_ROOT_FS_RO=true
Hooks:
HOOKS=(base systemd autodetect microcode modconf kms block keyboard filesystems)
No issue at all with 6.6 LTS
Please make sure not to keep unsupported packages.
Check, ex
pacman -Qs fsck
Also … please make sure to be acquainted with fsck
and its different options.
Namely the fsck
hook vs systemd-fsck
.
In addition to the above, fstab looks like this (UUID’s snipped):
UUID=3XXX-XXXX /boot/efi vfat umask=0077 0 2
UUID=a4XXXX53-xxxxxxxf-xxxxxxx / ext4 defaults,noatime 0 1
UUID=4XXXXXXX-xxxxe-xxxxx-xxxxx-xxxxxxx /home ext4 defaults,noatime 0 2
So, I don’t see anything out of line here. It doesn’t have error in 6.6LTS. Something is off in 6.8.
I removed 6.8. I will try again when it gets a bit more developed.
Me too… Everything configured correct as cscs suggests .
With Kernel 6.6:
systemd-fsck[326]: /dev/nvme0n1p2: clean, 366411/2564096 files, 3717522/10240000 blocks
systemd[1]: Finished File System Check on Root Device.
I decided to abandon systemd-fsck as it wasn’t default on this system and isn’t default on any of my other Arch based VM’s. I installed kernel 6.8 and don’t have any fsck error, so I probably won’t be looking back on this one.
JR
No disk-checking is braveheart…
Alternativ disk-checking: install util-linux (core) and e2fsprogs (core)
(contains tune2fs) and use them…
I think he meant he went back to the traditional base+fsck hooks. On 6.6 actually only fsck is needed.
HOOKS=(autodetect systemd modconf block keyboard sd-vconsole filesystems fsck)
works on 6.6,
Mär 21 11:28:44 archlinux systemd[1]: Starting File System Check on /dev/disk/by-uuid/cf8b53ae-432d-4976-a363-214a6ecc9d84...
Mär 21 11:28:44 archlinux systemd[1]: Finished File System Check on /dev/disk/by-uuid/cf8b53ae-432d-4976-a363-214a6ecc9d84.
Mär 21 11:28:44 archlinux systemd[1]: Stopped Check battery level during early boot.
Mär 21 11:28:47 teo-lenovo-v15 systemd[1]: Starting File System Check on /dev/disk/by-uuid/B842-8B02...
Mär 21 11:28:47 teo-lenovo-v15 systemd[1]: Finished File System Check on /dev/disk/by-uuid/B842-8B02.
I added fsck back to mkinitcpio and removed the entry in GRUB. fsck completes fine, no errors with 6.8 and the default entries
Mar 21 13:50:40 archlinux systemd-fsck[234]: /dev/nvme0n1p2: clean, 393590/2564096 files, 3979781/10240000 blocks
Mar 21 13:50:44 Beelink systemd-fsck[623]: /dev/nvme0n1p3: clean, 12875/3842048 files, 1407501/15360000 blocks
Mar 21 13:50:44 Beelink systemd-fsck[622]: fsck.fat 4.2 (2021-01-31)
Mar 21 13:50:44 Beelink systemd-fsck[622]: /dev/nvme0n1p1: 5 files, 74/131060 clusters
Hooks:
HOOKS=(base systemd autodetect microcode modconf kms block keyboard filesystems fsck)
this is mine I don’t think yours is quit right?
HOOKS=(systemd autodetect microcode keyboard modconf block sd-vconsole filesystems)
It depends.
Mine is
HOOKS=(autodetect systemd microcode modconf kms block keyboard filesystems fsck)
and I could still lose a few.
https://wiki.archlinux.org/title/Mkinitcpio#Common_hooks
Theirs is fine assuming they dont need the console font, and do want the base
and fsck
hooks.
base
really shouldnt be needed if systemd
is present. Especially as the busybox ‘recovery shell’ it would provide would not really be accessible.
Thanks. I got rid of the base hook. I didn’t have it before, but added it back based on one of the comments here regarding the original issue with kernel 6.8 and systemd-fsck, which didn’t fix the issue. Yes, I want fsck and do not want consolefont.
fsck should not be used with systemd as systemd does it own fsck, but the root has to be set as ro in default/grub if you need root to be rw you can set it in etc/fstab.
You are conflating the two.
The systemd
hook does a lot more than just the fsck
.
But you will of course need it there to make use of systemd-fsck
.
As well as remove the fsck
if you intend to let systemd
do it (along with setting ro
).
You can have both (as in my case) … using the systemd
hook as well as the fsck
hook, without mounting things once as ro then again as rw. You could also have neither if you wanted to.
You should have either base
or systemd
though.
Again you could have both, though there isnt much reason, but you wont want to have neither.
fsck
is entirely optional, in whatever form. But its probably best to keep some version of it.
(except that it is apparently required if you have a separate /usr
partition)
Grub claims that if root is not ro systemd-fsck will not work.
And?..
In my example I am using the systemd
hook, but the fsck is performed by the regular fsck
hook. No ro
required.