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

Reply via email to