拡張権限 - ACL を設定した後、グループは書き込みできません

拡張権限 - ACL を設定した後、グループは書き込みできません

使いたい設定dirユーザー グループの権限を設定します。次のようにします。

mkdir /Employee
chgrp employeers /Employee
setfacl -m d:g::rwx /Employee

そして今、ファイルを作成しようとすると(このグループのメンバーであるユーザーから)、 「権限がありません」というエラーが表示されます。

root@debian:~# ls -la /Employee
all 8
drwxr-xr-x+  2 root employeers 4096 maj 21 14:50 .
drwxr-xr-x  23 root root       4096 maj 21 14:50 ..

何が間違っているのでしょうか?

答え1

dは の省略形ですdefault。デフォルトの権限と実際の権限は独立しています。 を省略して setfacl コマンドをもう一度実行するとd:、権限は希望どおりに動作するはずです。両方のコマンドの効果が必要なのだと思います。

の出力はgetfacl、次のような結論を示唆することができます。

  1. default:拡大表示
  2. 「default」を含まない元のアクセス制御エントリを表示し、作成したエントリに何か異なる点があることを示します。

一方、+の出力の はls -l、基本モードからは予期されないアクセスを許可する ACE があることを示しています (標準の POSIX ACE が、ここで表示される基本モードで許可されているアクセスを拒否する方法はありません) [1]。2 回目の setfacl コマンドの後、基本モードが に変わることがわかりますrwxrwxr-x。これは、 がファイルのプライマリ グループであり、setfacl が重複エントリの作成を回避するためですemployeers


[1] Windows および NFSv4 ACL では、拒否エントリが許可されます。多くの人は、これを複雑性の罠であると考えています (nfs4_acl のマニュアルページを含む)。当然、これは ACL の順序が重要であることを意味します。どうやら、Windows GUI は、明示的に拒否されたエントリを最初に、継承されたエントリを最後に配置して、それらを「優先」順序に変更するようです。

関連情報