SMBFS mount's file cannot be made executable

Lavrentiev, Anton (NIH/NLM/NCBI) [C] via cygwin cygwin@cygwin.com
Thu Aug 8 15:42:00 GMT 2019


Hi,

Here's the situation, I have a netmount "Z:" but I cannot make any files on it executable from Cygwin:

$ mount
...
Z: on /cygdrive/z type smbfs (binary,posix=0,user,noumount,auto)

$ cd /cygdrive/z

$ pwd
/cygdrive/z

$ cat a.c
#include <stdio.h>

int main()
{
    printf("Hello world!\n");
    return 0;
}

$ gcc -Wall a.c

$ echo $?
0

$ ./a.exe
-bash: ./a.exe: Permission denied

$ ls -l a.exe
-rw-rw-r--+ 1 lavr cppcore 157753 Aug  8 11:29 a.exe

$ getfacl.exe a.exe
# file: a.exe
# owner: lavr
# group: cppcore
user::rw-
user:lavr:rw-
group::r--
group:cppcore:r--
mask::rw-
other::r--

$ chmod a+x a.exe

$ echo $?
0

$ ls -l a.exe
-rw-rw-r--+ 1 lavr cppcore 157753 Aug  8 11:29 a.exe

$ getfacl.exe a.exe
# file: a.exe
# owner: lavr
# group: cppcore
user::rw-
user:lavr:rw-
group::r--
group:cppcore:r--
mask::rw-
other::r--

$ ./a.exe
-bash: ./a.exe: Permission denied

What's missing?  How to make the file executable, and why chmod() lies about all-good when it does nothing?
Any ideas please?

Thanks!

P.S. I have another netmount "drive" (U:) which Cygwin identifies as "netapp", and everything works on that drive,
regarding the execution permission.

U: on /cygdrive/u type netapp (binary,posix=0,user,noumount,auto)

Also, any file that I give the "x" permission from outside Cygwin (e.g. from Linux) on the SMBFS drive "Z:",
becomes executable:

Cygwin> $ gcc -Wall a.c

Linux> $ chmod a+x a.exe

Cygwin> $ ./a.exe
Hello world!


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list