group1のuser1が所有者user2とグループuser2が所有するファイルを編集できるように自動的に許可します。

group1のuser1が所有者user2とグループuser2が所有するファイルを編集できるように自動的に許可します。

Linuxのグループについて混乱しています。 user1 が user1 グループと user2 グループの両方に属することを考慮してください(その逆も同様です)。

user1> id user1
uid=1000(user1) gid=1000(user1) groups=1000(user1),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),50(staff),113(lpadmin),130(sambashare),131(vboxusers),1001(user2)

user1> id user2
uid=1001(user2) gid=1001(user2) groups=1001(user2),0(root),1000(user1)

user1がuser2およびuser2グループが所有する-rwxrw-r--ファイルを編集できない理由は理解できません。

user1>ls -l hey.xml
-rwxrw-r-- 1 user2 user2 8385 May 24 11:39 hey.xml
user1>echo "fails" >> hey.xml 
bash: hey.xml: Permission denied

しかし、グループを変更すると機能します。

user1> sudo chgrp user1 hey.xml 
user1> echo "works" >> hey.xml 

この質問に答えた後、user1がuser2のグループ内のファイルを常に読み書きできるようにするにはどうすればよいですか?ありがとう

答え1

グループにユーザーを追加すると、新しいメンバーシップはすぐには適用されません。これを最新の状態に保つ最も簡単な方法は、グループメンバーシップが変更されたユーザーにログアウトしてから再度ログインすることです。完了したら、ユーザーは期待どおりにファイルにアクセスできる必要があります。

答え2

両方のユーザーと同じグループがファイルを所有していることを確認してください。ファイルがすでに存在する場合は、このchownユーティリティを使用して所有権を変更してください。 user1を許可するのは悪い考えです。いつもuser2 が作成したファイルを変更する機能。

新しいグループを作成し、両方のユーザーを追加することをお勧めします。また、user3をミックスに追加すると簡単になります。

関連情報