This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Can't execute scripts from a samba share with 1.7


Corinna Vinschen wrote:
On Aug 5 13:40, Nahor wrote:
Hi,

I have a samba share mounted in cygwin with the following fstab entry:
//server/nahor /home/nahor smbfs binary,user,exec,acl,posix=0,cygexec 0 0

Permissions are set correctly:
$ ls -al
-rwxr--r-- 1 nahor Domain Users      19 Aug  5 11:46 t.sh

My test script doesn't do much:
$ cat ./t.sh
#!/bin/sh
echo foo
$

But when I execute:
$ ./t.sh
-bash: ./t.sh: Permission denied
$
Cygwin 1.5.x and earlier versions of Cygwin 1.7.0 didn't check execute
permissions when trying to start a shell script. Later versions of
1.7.0 do check on filesystems mounted with the "acl" option. Apparently
the check fails. Is there a chance that there are two different
accounts called nahor?

Indeed. One is an account on the local machine and there is another one on the domain. I login using the local account but the samba share belong to the domain user.
Running cygwin with the domain user allows running the script. Changing the permission to 755 also fixes the error.
Thanks!



One weird thing though, the directory permission are 700 and yet I can list the content of the directory, cd in it and add/delete files. So permissions are not consistently checked. But then, I assume it's because all that is done by Windows/Samba while the permission check on the script is done by Cygwin? Same thing with executing binary (I was able to execute a binary file copied on the share even though I couldn't execute scripts)?



If I mount with "noacl", I get a slightly different error but still no cigar:
$ ./t.sh
-bash: ./t.sh: /bin/sh: bad interpreter: Permission denied
$
This only happens if your account doesn't have execute permissions for
the interpreter, in this case /bin/sh. Is it possible that /bin/sh.exe
has weird permission settings for some reason?

The permissions on the interpreter are OK. $ ls -l /bin/sh -rwxr-xr-x 1 nahor Administrators 472064 Jul 1 18:20 /bin/sh $

For that matter, scripts running off the local disk run fine.

Looks like the same problem of inconsistent account ID, setting the permissions to 755 or running as the domain user fix the "bad interpreter" error.



--
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]