Hi Georg,
I must admit I remembered some things quite incorrectly about our build.
Consequently some things I wrote were complete nonsense. I'm sorry.
Though your patch was correct, mountability via mount(8) and /etc/fstab
probably doesn't work for you. The below temporary patch should fix it.
More on this later.
Btw, it would be nice to know your configure options.
Regards,
Szaka
---------------------------------------------------------------------->
--- src/Makefile.am 19 May 2008 17:34:39 -0000 1.10
+++ src/Makefile.am 19 May 2008 18:30:01 -0000
@@ -38,7 +38,7 @@ install-exec-hook:
endif
install-exec-local:
- $(INSTALL) -d "$(DESTDIR)$(rootsbindir)"
+ $(INSTALL) -d "$(DESTDIR)/sbin"
$(LN_S) -f "$(rootbindir)/ntfs-3g" "$(DESTDIR)/sbin/mount.ntfs-3g"
install-data-local:
<-----------------------------------------------------------------------
On Sun, 18 May 2008, Szabolcs Szakacsits wrote:
>
> Hi Georg,
>
> On Sun, 18 May 2008, Georg Lukas wrote:
>
> > * Szabolcs Szakacsits <[EMAIL PROTECTED]> [2008-05-17 19:49]:
> > > On Sat, 17 May 2008, Georg Lukas wrote:
> > > > Actually I did not intend to do so, $(rootsbindir) is automatically set
> > > > to /usr/sbin somewhere deep in the OpenEmbedded build system.
> > > /usr/sbin can break mountability in certain circumstances, e.g. if /usr
> > > is
> > > a separate partition.
> >
> > That might be true, especially for people having their /usr on NTFS.
>
> Everything (ntfs-3g, fuse libraries, utilities, the dependent libraries,
> locale, etc) must be on the root file system to be able to always
> successfully mount during boot and work correctly (filename conversion,
> etc).
>
> In case of in-kernel file system drivers this is always ensured: either the
> drivers are fully in the kernel already or the modules are on the root file
> system.
>
> The same must be ensured for ntfs-3g and any other fuse file system if a
> user wants to (flawlessly) mount during early boot.
>
> > However, I think that having a $(rootsbindir) should not do any harm,
>
> $(rootsbindir) is an ntfs-3g internal variable. I think your build process
> uses sbindir=/usr/sbin what ntfs-3g uses, if it's defined, instead of the
> default /sbin.
>
> $sbindir can be anything but if it's not on the root file system then boot
> time automounts may fail.
>
> Your problem was that the $(DESTDIR)/sbin isn't created by the ntfs-3g
> build process where the mount.ntfs-3g mount helper symlink must be created
> for mount(8).
>
> > > > The DESTDIR is usually set to an empty directory for creating an ipkg
> > > > package, lets say /tmp/ipk/
> > > >
> > > > My problem was, that the install -d line creates a directory
> > > > $(DESTDIR)$(rootsbindir), which is /tmp/ipk/usr/sbin then.
> > > > After that, a symlink to /sbin/ntfs-3g is created in /tmp/ipk/sbin, but
> > > > /tmp/ipk/sbin does not exist.
> > > I see. So we should create that directory too if it's missing.
> >
> > We should only create the directory we are using.
>
> /sbin is used. mount.ntfs-3g must be there. mount(8) calls
> /sbin/mount.ntfs-3g when one enters 'mount -t ntfs-3g ....'.
>
> > In current stable, we create $(rootsbindir) and use /sbin.
>
> Above you wrote $(rootsbindir) (or $sbindir) is set to /usr/sbin.
> If it were set to /sbin then everything would work fine.
>
> > Therefore I submitted the patch to use $(rootsbindir) instead of hard
> > coded /sbin, making the install process self-consistent.
>
> ntfs-3g can be "anywhere", for the price that mount may fail. mount.ntfs-3g
> can not be anywhere. $(rootsbindir) (or $sbindir) defines where ntfs-3g is
> installed. mount.ntfs-3g must be in /sbin.
>
> > If you think that it is bad to give the user (or rather package
> > maintainer) the choice of overriding that directory, you should hard
> > code both lines to /sbin and not use the $(rootsbindir) variable at all.
>
> mount.ntfs-3g is hard coded. ntfs-3g can be anywhere if it's on the root
> file system. The correct place would be actually /bin because users can
> also mount image files or devices if they have the needed permissions.
>
> > > The below should work:
> > >
> > > ./configure --sbindir=/sbin
> >
> > What is the point in having a config variable with only one working
> > value?
>
> ntfs-3g can be anywhere if it's on the root file system.
>
> I gave you the above example as a trick because it will create the missing
> directory for the mount helper which caused your problem, so you don't need
> to wait for the "create $(DESTDIR)/sbin before making the mount helper
> symlink" patch.
>
> Regards,
> Szaka
>
> --
> NTFS-3G: http://ntfs-3g.org
>
--
NTFS-3G: http://ntfs-3g.org
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
ntfs-3g-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ntfs-3g-devel