特定のディレクトリの所有者にのみファイルの変更を許可する

特定のディレクトリの所有者にのみファイルの変更を許可する

私は4人のユーザー(A、B、C、D)と1つのディレクトリ(folder10)を持っています。 AとBにフォルダ10へのアクセス権を与えたいと思います。誰かがこのフォルダにファイルを作成するたびに、その人だけがファイルを変更できます。所有者、他の人は読めるだけです。たとえば、A はファイルを生成し、B はファイルを開いて読み取ることができますが、変更することはできません。 Bがファイルを生成しても同じことが起こります。

同様の問題が数回あったが、状況は異なる。どんな助けでも大変感謝します。

答え1

読み取りアクセスのみのグループを作成することでこの問題を解決できます。Linuxでは、次のコマンドを使用してグループを割り当てることができます。

usermod -a -G グループユーザー

答え2

ファイルまたはディレクトリが作成されるたびに権限が割り当てられ、次のように分割されます。

OWNER:GROUP:OTHERS/WORLD

chmodこれらの権限は、ディレクトリまたはファイルのアクセス基準を変更するか、またはを使用して拡張ACLを適用するために割り当てることができますsetfacl

今のポイントは、Bを他の人にしたいのか、グループにしたいのかということです。

Bを他の人として扱うのは簡単です。

chmod <permission> <directory or filename>

<permission>これを付与/追加/削除したい権限と<directory or filename>(驚くべきことに)アクセス権を付与したいディレクトリまたはファイルの名前に置き換えることができます。

たとえば、B が属するファイルを 1 つのグループだけを読み取るようにするには、次のようにグループを作成します。

groupadd groupname

Bを追加するときは、次を使用してBをグループの一部として作成します。

useradd -n -g -groupname username

これにより、ユーザーが作成されusername使用groupnameされます。

setfacl -m g:<groupname>:<permission> <directoryname or filename>

これに基づいて、グループアクセスに対する読み取り、書き込み、または実行権限を許可できるようになりました。

そのユーザーにのみ権限を付与したい場合

setfacl -m u:<username>:<permission> <directoryname or filename>

関連情報