test -r or -x always return false on an NFS mount?

Mario Emmenlauer mario@emmenlauer.de
Tue Sep 22 20:14:44 GMT 2020


Dear All,

thanks for the awesome Cygwin, its really great!

But since today I met a problem: I mounted a Linux NFSv3 share using
the Windows 10 shipped NFS client. The user and group ID are mapped
via registry settings AnonymousUid and AnonymousGid in the entry
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default

Everything seems to work quite well, and in `ls -la` I can see the
file permissions and user and group entries. But when using `test`
to check for read (`test -r`) or execute permissions (`test -x`), it
always returns false, even for readable files. `ls` on the other hand
shows the permissions correctly, and `cat`ing the files works without
problems.

I've read https://cygwin.com/cygwin-ug-net/using-filemodes.html
about the Cygwin file permissions for NFS, and also the NFS account
mapping at https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nfs,
but as far as I can see, they are both unrelated. Google turned up no
useful hits for keywords "cygwin" "test" and "nfs", so I'm a bit at the
end of my wit.

Is this a known issue, and/or are there any workarounds? I'm currently
using `test -e` in place of read or execute checks, but it basically
breaks all my build scrips.

All the best,

     Mario Emmenlauer


More information about the Cygwin mailing list