chmod g+s ineffective

Andrey Repin anrdaemon@yandex.ru
Wed Jun 29 12:39:52 GMT 2022


Greetings, Norton Allen!

> On one machine I have, chmod g+s fails to set the sticky bit. The command
> does not return any error, but ls -l continues to show the bit not set.

>     $ mkdir foo
>     $ chgrp flight foo
>     $ chmod g+ws foo
>     $ ls -ld foo
>     drwxrwxr-x+ 1 nort flight 0 Jun 29 06:50 foo
----------------^

$ getfacl foo

> I ran strace, and it looks like the correct system call parameter is getting passed.

> I am curious as to how the sticky bit is implemented.

First see if it was set or not.

> It isn't obvious what underlying Windows functionality (if any) is applied.

It does. But the big question is, where do you try to do that.
If this is inside Cygwin installation root, then things could work more or
less POSIX'y. If this is outside Cygwin root (f.e. in your system profile), it
may or may not work completely, depends how did you mount /cygdrive prefix.

> Ah, just checked on a system where this works, and creating a file in the
> directory from the
> command shell does not set the group, so presumably this functionality is
> all within cygwin. That works for my application, except when it doesn't.

> Any suggestions on what I should look for?

Look if you could avoid using +s. Isn't DACL enough?


-- 
With best regards,
Andrey Repin
Wednesday, June 29, 2022 15:36:50

Sorry for my terrible english...



More information about the Cygwin mailing list