ACLを使用してデフォルトのグループ権限をオーバーライドすることはできません。

ACLを使用してデフォルトのグループ権限をオーバーライドすることはできません。

ディレクトリにこのACLを設定しました。

root@<server_ip>:/srv/www# getfacl example.com/
# file: example.com/
# owner: web
# group: www-data
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:dev:rwx <--
default:mask::rwx
default:other::r-x

devこのグループにすべてのアクセス権を付与したい(rwX

touchその後、グループのユーザーとしてログインしたファイルが必要ですdev

luqo33@<server_ip>:/srv/www/example.com$ groups
dev 

権限拒否メッセージが表示されます。

luqo33@<server_ip>:/srv/www/example.com$ touch test
touch: cannot touch ‘test’: Permission denied

なぜこれが起こるのですか?私のACLはうまくいかないようです。

答え1

さて、次のコマンドを使用してそれを再現できます。

setfacl -m default:group:foogrp:rwx foodir

chdirしかし、この場合、ディレクトリに入ることはできません(ACLを適用する前にユーザーがchdirを実行しましたか?)。デフォルトグループを使用する理由はありますか?たとえば、次のことが発生した後に何が起こりますか?

setfacl -k example.com
setfacl -m group:dev:rwx example.com

デフォルトグループを削除し、devグループアクセス用のACLを追加します。

関連情報