You are not logged in.

#1 2024-12-06 01:19:51

Salkay
Member
Registered: 2014-05-22
Posts: 645

fsck.repair doesn't repair all problems

The wiki explains how to answer "yes" to all fsck questions.

In the GRUB bootloader, I edit the relevant line, appending the kernel parameters fsck.mode=force fsck.repair=yes. fsck is indeed forced, but I still get several lines similar to the following:

Inode 1449491 extent tree (at level 2) could be narrower.  IGNORED.
/dev/mapper/cryptroot: Inode 1449492 extent tree (at level 2) could be narrower.  IGNORED.
/dev/mapper/cryptroot: Inode 1449494 extent tree (at level 2) could be narrower.  IGNORED.

Is there a way to fix these issues as well? Or will I have to boot into a live USB and fsck that way?

Offline

#2 2024-12-06 08:27:34

seth
Member
Registered: 2012-09-03
Posts: 59,887

Re: fsck.repair doesn't repair all problems

Those aren't errors but optimization opportunities.
If you want to force that, you'll have to do it offline - unless you can figure how to impact  the fsck parameters via the systemd-fstab-generator (which is probably not possible)

Online

#3 2024-12-06 08:47:21

Salkay
Member
Registered: 2014-05-22
Posts: 645

Re: fsck.repair doesn't repair all problems

Okay, thank you @seth. Just to clarify when you say "offline" you mean e.g. booting into the system externally by live USB. Or physically moving the disks.

I think from memory that fsck -y would say yes to those optimisations. The wiki says fsck.repair=yes would "automatically apply all suggested change (i.e. answer yes to all questions)", so probably just slightly incorrect wording.

Offline

#4 2024-12-06 08:51:47

seth
Member
Registered: 2012-09-03
Posts: 59,887

Re: fsck.repair doesn't repair all problems

"offline" you mean e.g. booting into the system externally by live USB

Primarily that the filesystem cannot be mounted, so if it's your root fs, you'll have to boot something else.

I suspect you're ending up w/ https://man.archlinux.org/man/e2fsck.8.en#p and https://man.archlinux.org/man/e2fsck.8.en#fixes_only - this behavior might have changed (or efs2ck is only now posting about the condition)

Online

#5 2024-12-06 11:20:52

Salkay
Member
Registered: 2014-05-22
Posts: 645

Re: fsck.repair doesn't repair all problems

Thanks again @seth. I don't think it's preen, because there is an explicit fsck.repair=preen as well. It's plausibly acting as fixes_only though.

In addition, the wiki links to the man page, which also says

"yes" will answer yes to all questions by fsck

I interpret this as it answering "yes" to the optimisation questions options too.

Also the man page says:

The default is "preen", and will automatically repair problems that can be safely fixed.

If this doesn't include optimisation, it seems to imply that optimisation is not "safe"?

Offline

#6 2024-12-06 16:27:31

seth
Member
Registered: 2012-09-03
Posts: 59,887

Re: fsck.repair doesn't repair all problems

While it's not "unsafe" - it's just not "repair" at all?

Did you test the explicit "fsck.repair=yes"?
Cause
https://man.archlinux.org/man/core/syst … -fsck.8.en

fsck.repair=

One of "preen", "yes", "no". Controls the mode of operation. The default is "preen", and will automatically repair problems that can be safely fixed. "yes" will answer yes to all questions by fsck and "no" will answer no to all questions.
Added in version 213.

Online

#7 2024-12-06 22:50:55

Salkay
Member
Registered: 2014-05-22
Posts: 645

Re: fsck.repair doesn't repair all problems

While it's not "unsafe" - it's just not "repair" at all?

Yeah possibly! This seems like it could be interpreted multiple ways.

Did you test the explicit "fsck.repair=yes"?

Yes, that is exactly what I tested! I agree with your quote from the man page, which is why I was surprised it didn't work!

Offline

Board footer

Powered by FluxBB