回答:
私は実際にこれまでに私が求めていたものを見つけて、ここで共有して、この問題に遭遇した人がこの解決策を試せるようにしました:
sudo setfacl -Rdm g:groupnamehere:rwx /base/path/members/
sudo setfacl -Rm g:groupnamehere:rwx /base/path/members/
Rは再帰的です。つまり、そのディレクトリの下のすべてにルールが適用されます。
dはデフォルトです。これは、そのディレクトリの下に作成される今後のすべてのアイテムに対して、これらのルールがデフォルトで適用されることを意味します。
ルールを追加/変更するにはmが必要です。
最初のコマンドは、新しいアイテム用です(そのためd)、2番目のコマンドは、フォルダーの下にある古い/既存のアイテム用です。これが少し複雑であまり直感的ではないので、これが誰かの助けになることを願っています。
-Rdm g:groupnamehere:rwx, -Rdm u:groupnamehere:rwx
。
受け入れられた回答を使用するには...
これらのコマンドを次のように組み合わせることができます。
sudo setfacl -Rm d:g:groupnamehere:rwx,g:groupnamehere:rwx /base/path/members/
d:
ではなく、最初の項目に設定するの-Rmd
ですか?2番目のパラメーターには何も指定しないでくださいdefault
。Linuxがそれをどのように受け入れるかは奇妙です。
適切に許可されたユーザー、ディレクトリおよびファイルの許可の要求に応じて、単純なUNIX許可を再帰的に簡単に設定できます。これを自動的に強制することはできません。
セットに0002のumaskを使用するようにユーザーに伝えることができます。これにより、0775で新しいファイルを作成するのに役立ちます(アプリケーションによって異なります)。しかし、強制ではありません。
私の理解では、ACLはUNIX / Linuxシステムでは継承されません。それらは要求に応じて設定されます。
ファイル/ディレクトリの所有権に関しては、ここではほとんど運がありません。
ファイル/ディレクトリグループの所有権に関しては、ディレクトリセットgidビット(つまり、ディレクトリ上のg + s)を設定することにより、グループ所有権が継承されます。
このような状況で私がやったことは、定期的なルートcronスクリプトを実行して、そのようなディレクトリ内の不適合な権限/所有権を標準にリセットすることです。
別の(推奨されない)プロセスは、これらのファイルで作業するときに同じユーザーIDを使用することです。これは、ユーザーが自分のUIDでシステムにログインし、sudoまたはsuを使用してIDとして実行することで実現できます。これは、特にACLと許可ビットに関しては100%ではありません。