Re: [PATCH 2/4] e2scrub: create online fsck tool of sorts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 20, 2018 at 01:40:54PM -0700, Eric Biggers wrote:
> Hi Darrick,
> 
> On Fri, Mar 23, 2018 at 06:57:09PM -0700, Darrick J. Wong wrote:
> > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
> > 
> > Implement online fsck for ext* filesystems which live on LVM-managed
> > logical volumes.  The basic strategy mirrors that of e2croncheck --
> > create a snapshot, fsck the snapshot, report whatever errors appear,
> > remove snapshot.  Unlike e2croncheck, this utility accepts any LVM
> > device path, knows about snapshots running out of space, and can call
> > fstrim having validated that the fs metadata is ok.
> > 
> > Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
> [...]
> > diff --git a/scrub/Makefile.in b/scrub/Makefile.in
> > new file mode 100644
> > index 0000000..a8bb06b
> > --- /dev/null
> > +++ b/scrub/Makefile.in
> > @@ -0,0 +1,97 @@
> > +#
> > +# Makefile for e2scrub
> > +#
> > +
> > +srcdir = @srcdir@
> > +top_srcdir = @top_srcdir@
> > +VPATH = @srcdir@
> > +top_builddir = ..
> > +my_dir = scrub
> > +INSTALL = @INSTALL@
> > +
> > +@MCONFIG@
> > +
> > +PROGS=		e2scrub
> > +MANPAGES=	e2scrub.8
> > +CONFFILES=	e2scrub.conf
> > +
> > +ifeq ($(HAVE_UDEV),yes)
> > +UDEV_RULES	= e2scrub.rules
> > +INSTALLDIRS_TGT	+= installdirs-udev
> > +INSTALL_TGT	+= install-udev
> > +UNINSTALL_TGT	+= uninstall-udev
> > +endif
> > +
> > +all:: $(PROGS) $(MANPAGES) $(CONFFILES) $(UDEV_RULES)
> > +
> > +e2scrub: $(DEP_SUBSTITUTE) e2scrub.in
> > +	$(E) "	SUBST $@"
> > +	$(Q) $(SUBSTITUTE_UPTIME) $(srcdir)/e2scrub.in $@
> > +	$(Q) chmod a+x $@
> > +
> > +%.8: %.8.in $(DEP_SUBSTITUTE)
> > +	$(E) "	SUBST $@"
> > +	$(Q) $(SUBSTITUTE_UPTIME) $< $@
> > +
> > +%.conf: %.conf.in $(DEP_SUBSTITUTE)
> > +	$(E) "	SUBST $@"
> > +	$(Q) $(SUBSTITUTE_UPTIME) $< $@
> > +
> > +%.rules: %.rules.in $(DEP_SUBSTITUTE)
> > +	$(E) "	SUBST $@"
> > +	$(Q) $(SUBSTITUTE_UPTIME) $< $@
> > +
> > +installdirs-udev:
> > +	$(E) "	MKINSTALLDIRS $(UDEV_RULES_DIR)"
> > +	$(Q) $(MKINSTALLDIRS) $(DESTDIR)$(UDEV_RULES_DIR)
> 
> I'm getting an error here, in the "installdirs-udev" target, when trying to
> build the latest e2fsprogs (commit 6ac81e4526a4e1) into a Debian package:

Uhhhh... what happened here??

...it looks like e2scrub got pulled into 1.44.4.  Ross Burton submitted
a patch (in 2014) to remove MKINSTALLDIRS in favor of MKDIR_P; this
patch has also been pulled into 1.44.4.  Mr. Burton's patch did not
convert the scrub/ directory (since it did not exist four years ago)
which AFAICT is why the build doesn't work. :/

I was not expecting any of the e2scrub stuff to appear until 1.45.

(I guess this explains Lukas' (withdrawn) patch from this morning...)

--D

> make[2]: Entering directory '/home/ebiggers/src/e2fsprogs/debian/BUILD-STD/scrub'
> /home/ebiggers/src/e2fsprogs/debian/tmp/lib/udev/rules.d
> make[2]: /home/ebiggers/src/e2fsprogs/debian/tmp/lib/udev/rules.d: Command not found
> Makefile:412: recipe for target 'installdirs-udev' failed
> make[2]: *** [installdirs-udev] Error 127
> make[2]: Leaving directory '/home/ebiggers/src/e2fsprogs/debian/BUILD-STD/scrub'
> Makefile:422: recipe for target 'install-progs-recursive' failed
> make[1]: *** [install-progs-recursive] Error 1
> make[1]: Leaving directory '/home/ebiggers/src/e2fsprogs/debian/BUILD-STD'
> debian/rules:334: recipe for target 'install' failed
> make: *** [install] Error 2
> dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
> 
> 
> Apparently $(MKINSTALLDIRS) isn't defined.  Where is it supposed to be defined?
> 
> - Eric



[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux