[arch-general] mkinitcpio/fsck.btrfs

Leonardo Dagnino leodag.sch at gmail.com
Sat Jan 19 04:38:31 EST 2013


2013/1/18 Dave Reisner <d at falconindy.com>

> On Jan 18, 2013 4:52 PM, "Jameson" <imntreal at gmail.com> wrote:
> >
> > On Thu, Jan 17, 2013 at 1:37 PM, Leonardo Dagnino <leodag.sch at gmail.com>
> wrote:
> > > 2013/1/16 Arno Gaboury <arnaud.gaboury at gmail.com>
> > >
> > >> On 16/01/13||11:22, Tom Gundersen wrote:
> > >> > Hi Arno,
> > >> >
> > >> > On Tue, Jan 15, 2013 at 12:34 PM, Arno Gaboury <
> arnaud.gaboury at gmail.com>
> > >> wrote:
> > >> > > HOOKS="base udev autodetect block lvm2 filesystems fsck usr
> usbinput
> > >> > > shutdown modconf"
> > >> > >
> > >> > > When # mkinitcpio, I get this error:
> > >> > >   -> Running build hook: [fsck]
> > >> > > ==> ERROR: file not found: `fsck.btrfs'
> > >> > > ==> WARNING: No fsck helpers found. fsck will not be run on boot.
> > >> > >
> > >> > > The initramfs-linux.img is still correct, but I was wondering why
> this
> > >> > > error.
> > >> >
> > >> > As you correctly observe, there is no fsck.btrfs binary.
> > >> >
> > >> > > When reading the /usr/lib/initcpio/install/fsck script, it seems
> to me
> > >> > > fsck will add the filesystem name and run
> > >> > > /usr/bin/fsck.filesystemame.This will of course translate to
> > >> fsck.btrfs,
> > >> > > which does not exist. /usr/bin/btrfsck is the correct binary.
> > >> >
> > >> > This is not a mistake; the btrfsck binary is not meant to be run
> > >> > automatically at boot as the other fsck.* helpers, it is only meant
> to
> > >> > be used manually to fix problems. btrfs is designed not to need
> > >> > fsck'ing at boot, but does integrity checking at run-time instead.
> > >> >
> > >> > > According to /usr/lib/initcpio/install/btrfs script, the btrfs
> hook is
> > >> > > not needed when using udev.
> > >> > >
> > >> > > How can I solve this issue? Shall I add the btrfs hook?
> > >> >
> > >> > You could add the btrfs hook, but it would not make a difference for
> > >> > the automatic fsck. What it would give you is the ability to fsck
> > >> > btrfs manually from the initramfs in case of problems (i.e., in case
> > >> > root can not be mounted at all).
> > >> >
> > >> > HTH,
> > >> >
> > >> > Tom
> > >>
> > >> Tom,
> > >>
> > >> thank you for your clean answer.
> > >> I will then let this "error", as I understand it is more a "Warning"
> > >> with no negative impact.
> > >>
> > >> Regards.
> > >>
> > >
> > >
> > > If you want to stop getting that error/warning, you can create
> fsck.btrfs
> > > as a symlink to /bin/true (I think).
> > >
> > > Regards
> > > --
> > > Leonardo Dagnino
> >
> > Am I mistaken in thinking that if you only have btrfs filesystems on a
> > machine, then the fsck hook serves no purpose?  Thanks,
> >
> > =-Jameson
>
> This is correct. People who want to add a symlink to /bin/true aren't
> solving the right problem and are only potentially causing trouble for
> themselves down the road.
>

Well if you pay attention to your pacman output you won't be having any
problem. The thing is if you DO have another fs, and want it fsck'd, so you
can get rid of that annoying error. To solve the right problem I should
write a on-boot fsck for btrfs, but i'm too stupid and lazy to do that, and
I think one won't be released so soon.

If you only have btrfs partitions, it is safe to remove the fsck hook. But
you
will still be solving the wrong problem and potentially causing trouble for
yourself down the road as a fsck.btrfs utility will (probably) be released
someday.

Regards
-- 
Leonardo Dagnino


More information about the arch-general mailing list