> Corinna Vinschen wrote 2016-01-28 18:22: > On Jan 28 17:06, Rainer Blome wrote: > > > Corinna Vinschen wrote 2016-01-28 15-44: > > > On Jan 28 15:24, Rainer Blome wrote: > > > the acl should always at least contain ACEs for the > > > default POSIX perms, plus a NULL ACE: > > > > > > foo NULL SID:(DENY)(Rc,S) > > > VINSCHEN\corinna:(R,W,D,WDAC,WO) > > > VINSCHEN\vinschen:(R) > > > Everyone:(Rc,S,RA) > > > > In Windows Explorer -> `bar` -> RMB -> Properties -> Security -> > > Advanced, I am told that it inherits ist permissions from `base`, > > the parent of `bar`. (To be precise, it inherits from its > > grandparent, but I assume that the length of the ancestor chain is > > not important here.) > > This means the permission have been inherited when creating the > file but Cygwin couldn't overwrite the ACL with a POSIXified variant > for one reason or another. It might have to do with this mysterious > group 213... > > > > For directories also inheritable default perms for "CREATOR OWNER" and > > > "CREATOR GROUP". Is that really a Cygwin mkdir?!? > > > > As far as can see, yes, see above. > > > > > And then, what about > > > this unknwon group with gid 213? What does > > > > > > $ getent group 213 > > > > > > print? Something's weird here... > > > > getent group 213; echo $? > > 2 > > Ok, that's not exactly helpful to analyze this problem. Can you try > running another strace > > strace -o getfacl.trace getfacl <file> > > on a file which has supposedly that group as owning group, e.g. your > "base" dir? We might have a chance to look at the SID of group 213 in > there.
That command segfaults, just as `strace : ` does. > On a hunch, do you have old /etc/passwd and /etc/group files by any > chance? Does moving them out of /etc (don't delete them for now!), > exiting from Cygwin and starting a new shell somehow fix things for you? > How do the files look like? Define "old"! ;-) Yes, I do. There is no `/etc/group`, but `/etc/passwd` defines the group ID of my user as 213 (the real ID is a bit different, to be honest, but I do not think that matters.) When I rename the file and open a new Cygwin terminal, things start to work. `strace echo` yields the expected output, `chmod` does what it's supposed to do, and `git config`, `git init` and `git clone foo foo2` work as well. The `git clone repo:bar` then fails because my `~/.ssh` is apparently no longer found (and I can only log in via SSH key). This is a bit surprising, because in the new terminal, `$HOME` and `~/.` are still set the way I specified it in the old `/etc/passwd` (now with extension `.renamed`). So some programs apparently use one method of determining the home directory, and others use a different method. I will look into that tomorrow. If, after this "breakthrough", there is still value in looking further into the ACLs, I am willing to do that. However, the strace output looks awfully laborious to sanitize, so I can not do this today. Thanks for the help so far. Rainer -- 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