Foi um bug com o gnu mkdir
( # 14371 ), foi corrigido em coreutils 8.22.
- afetado: Debian Wheezy 7, RHEL / CentOS 5 e 6 são afetados (e provavelmente o Ubuntu Trusty 14.04)
- não afetado: Debian 8 Jessie, RHEL / CentOS 7 (e provavelmente Tbuntu Utopic 14.10)
Existem algumas soluções alternativas.
Solução nº 1: wrapper (já sugerido por Mark Wagner)
Como o mkdir funciona, você pode escrever uma função de shell que substitui o mkdir (ou um script / usr / local / bin / mkdir, pois isso é normalmente feito antes / bin). Esse script procura por um -p nos args então invoca recursivamente o mkdir sem "-p".
Solução nº 2: umask 0002
Se você pode controlar o script que chama mkdir, você pode definir a máscara antes de chamar mkdir:
(umask 0002 ; mkdir -p /path/to/dir)
Suas outras perguntas:
So I wonder if there is another possibility to solve this problem. It would be perfect to be able to completely disable/ignore the old unix-style permission stuff for a ACL-controlled directory.
Não, a permissão é necessária para compatibilidade, leia também Por que o chmod (1) no grupo afeta a máscara da ACL?
Or disable this "effective ACL" stuff.
Não