É explicado na mesma seção que você já citou na página manpage de chmod
SETUID AND SETGID BITS
[...]
This behavior depends on the policy and functionality of the underlying chmod system call. When in doubt, check the underlying system behavior.
Ao rastrear chmod
, ele tenta definir o bit setgid, mas a chamada do sistema chmod()
subjacente o ignora.
fchmodat(AT_FDCWD, "b", 02755) = 0
Como você vê, S_ISGID (02000)
é definido pelo comando chmod
, mas não pelo chmod()
[aqui: fchmodat()
] systemcall:
drwxr-xr-x 2 me notmygrp 16 Mar 19 12:37 b
Portanto, a remoção do bit setgid também é verdadeira para diretórios se você não for membro do grupo.