web-dev-qa-db-ja.com

グループ内のファイル権限

これをここで見つけようとしましたが、それが重複している場合は申し訳ありませんでした。

私が2つのグループとユーザーを持っているとします。次の構造を持つグループ1、グループ2、ユーザー1です。グループ1はグループ2のメンバーであり、ユーザー1はグループ1のメンバーです

今、私は関連する権限を持つ次のファイルを持っていると言います

file1 root:group1 660
file2 root:group2 660

これで、user1にログインすると、file1を編集できますが、file2は編集できません。 user1をgroup2に追加する以外に、これを行う方法はありますか?または方法はありませんか?

私はUbuntuを使用しています。

13
Aram Papazian

グループがグループのメンバーであるようなものはありません。グループには、定義上、ユーザーメンバーのセットがあります。ログイン時にサブグループのメンバーにスーパーグループへのメンバーシップが自動的に付与される「サブグループ」を指定できる機能を聞いたことがありません。 /etc/groupgroup1group2のメンバーとしてリストしている場合、group1と呼ばれるユーザーを指定します(そのようなユーザーが存在する場合、可能です:ユーザー名とグループ名が住んでいます)異なる名前空間)。

User1にfile2へのアクセスを許可する場合は、いくつかの解決策があります。

  • file2を世界中からアクセス可能にします(おそらくこれを望まないでしょう)
  • User1をfile2の所有者にします:chown user1 file2
  • User1をgroup2に追加:adduser user1 group2
  • ACLをfile2に追加して、user1またはgroupのいずれかにアクセス権を付与します `:

    setfacl -m user:user1:rw file2
    setfacl -m group:group1:rw file2
    

    ACLの有効化については、 ディレクトリ内のすべての新しいファイルをグループにアクセス可能にする を参照してください。