[Samba] Missing Files/Missing Folders from an NFS Share

Conor Armstrong conorarmstrong at gmail.com
Mon Feb 27 19:01:40 UTC 2023


I think it has a lot to do with telldir on an NFS share returning a cookie
that is supposed to be unique rather than an actual offset. Problem is,
that cookie is stored as a 31bit hash which can then end up as a negative
signed offset in Samba which is not handled correctly. The cookies are not
necessarily consecutive as you move through a directory.

On Mon, 27 Feb 2023 at 19:00, Jeremy Allison <jra at samba.org> wrote:

> On Mon, Feb 27, 2023 at 01:18:20PM +0100, Conor Armstrong via samba wrote:
> >Just by way of update on this, it looks like the problem exists with the
> >ReadDir, TellDir and SeekDir implementation on NFS shares.  In my case it
> >was an AWS EFS share that uses NFS.
>
> Can you elaborate exactly the issue with the AWS NFS server here ?
> It would be really helpful to understand what it's doing here.
>
> >The fix in the samba code isn't straightforward.  As a workaround on my
> >case I discovered that if I mount the NFS share at say /mnt/mountpoint1
> and
> >the use sshfs to connect back into the same machine and mount at
> >/mnt/mountpoint2 the /mnt/mountpoint1 directory I can then share the
> >/mnt/mountpoint2 share with Samba and the sshfs layer that sits between
> >Samba and the NFS mount seems to correct the issues that are present if t
> >the mounted NFS share were shared with Samba directly.
> >
> >So instead of
> >
> >NFS -> /mnt/mountpoint1 and /mnt/mountpoint1 -> Samba -> Windows Client
> >
> >I use
> >
> >NFS -> /mnt/mountpoint1 and /mnt/mountpoint1 -> /mnt/mountpoint2 (via
> >sshfs) and /mnt/mountpoint2 -> Samba -> Windows Client
> >
> >There is a performance hit in doing this, but it is something I can live
> >with.
>
> I'm glad you found a fix, but if we can understand what is wrong
> with AWS NFS here we might be able to do something more performant
> in Samba.
>


More information about the samba mailing list