グループにファイルへの書き込み権限を付与する方法[閉じる]

グループにファイルへの書き込み権限を付与する方法[閉じる]

グループ内のすべてのユーザーが書き込むことができるフォルダを作成したいので、まず次のように新しいグループを作成します。

sudo groupadd newGroup

次に、user1とuser2を次のようにグループに追加しました。

sudo usermod -a -G newGroup user1
sudo usermod -a -G newGroup user2

このユーザーが次のグループに属していることを確認してください。

getent group newGroup

次に、私のフォルダで、次のようにグループに所有権を付与します。

sudo chown :newGroup myfile

グループ内の誰もが次を使用してフォルダに書き込むことができるように、770にアクセス許可を変更します。

sudo chmod 770 myfile

しかし、グループのuser2を使用してフォルダを開こうとすると、開くことはできません!ファイルを所有しているユーザーであるuser1を介してのみ開くことができます。私は何を見逃していますか?

編集する

ls la ファイル結果

$ ls -la | grep myfile
-rwxrwx---  1 user1              newGroup       3819 Jan 16 10:21 myfile

編集2

効果を適用するには、ログアウトしてログインするだけです。

ベストアンサー1

新しいグループに追加されたコンテンツを適用するには、ユーザー(例ではuser1とuser2)がログアウトしてから再度ログインする必要があります。

ユーザーUとグループG1とG2idのメンバーに属するプロセスP(シェルなど)は、次のことを行います。いいえusermod本契約の変更(例えば、または同様の変更)の影響を受けます。特に、ユーザUがグループG3に追加されると、プロセスPはこれを知らない。同様に、グループG2を削除すると、Pはそれを知りません。これは、ID属性が継承されるため、子プロセスにも当てはまります。したがって、プロセスP1がユーザーUに対して開始され、UがG1とG2のメンバーであり、UがG2から削除され、次にP1がP2をフォークした場合、P2はまだG1にあります。そしてG2。これがユーザーUがログアウトしてから再度ログインする必要がある理由です。 ID属性がのようなものによって決まるからですlogin

おすすめ記事