Linuxのプライマリグループとセカンダリグループ

Aug 21 2020

一次グループと二次グループの違いは何ですか?なぜプライマリグループが必要なのですか?

ユーザーのアクセス許可はプライマリグループのアクセス許可と同じですか?

Aプライマリグループgrp1を持つユーザーBと、プライマリグループgrp2とセカンダリグループを持つユーザーがいると仮定しますgrp1。次に、?によって作成されたファイルBと同じ権限を持つことができAますA

回答

4 Ravexina Aug 21 2020 at 07:31

一次グループと二次グループの違いは何ですか?一次グループの必要性は何ですか?

Unixグループから:

プライマリグループ–オペレーティングシステムがユーザーによって作成されたファイルに割り当てるグループを指定します。各ユーザーはプライマリグループに属している必要があります。

セカンダリグループ–ユーザーも属する1つ以上のグループを指定します。ユーザーは最大15のセカンダリグループに属することができます。

一次グループの必要性は何ですか?ユーザーのアクセス許可はプライマリグループのアクセス許可と同じですか?

ユーザーにプライマリグループが割り当てられておらず、10のセカンダリグループに属しているとします。新しいファイルを作成します...このファイルはどのグループに属しますか?これらの10のどれですか?プライマリグループはこの問題に取り組み、ファイルがデフォルトで属するグループを定義します。ホームディレクトリに作成しているファイルを開発グループが所有することは望ましくないため、そのグループの誰もが、グループとしてそれらを使用して許可されていることを実行できます。

プライマリグループgrp1を持つユーザーAと、プライマリグループgrp2およびセカンダリグループgrp1を持つユーザーBがあるとします。次に、Aによって作成されたファイルに対してAと同じ権限を持つことができますか?

番号!グループ部分によって定義された権限のみ。もちろんそれは可能です。umaskたとえばを使用します。

2 PhilipCouling Aug 21 2020 at 07:29

すべてのファイルは、1人のユーザーと1つのグループによって所有され、それ以上でもそれ以下でもありません。したがって、ファイルを作成すると、そのファイルはユーザーと現在のグループによって所有されます。ユーザーがログインすると、現在のグループがプライマリグループになります。

ユーザーは、sgまたはnewgrpを使用して、グループを任意のセカンダリグループに一時的に切り替えることができます。ユーザーは、グループパスワードがそのユーザーのセカンダリグループとしてリストされている限り、グループパスワードがなくてもこれを実行できます。切り替え中、作成されたファイルは、ユーザー自身ではなく、新しいグループによって所有されます。

権限については、プライマリグループとセカンダリグループが一緒に使用されるため、セカンダリグループの1つが所有するファイルにアクセスするためにグループを切り替える必要はありません。

ユーザーは、chgrpを使用して、ファイルのグループを任意のグループ(プライマリまたはセカンダリ)に変更することもできます。

この意味で、プライマリグループは「デフォルト」の現在のグループにすぎません。ユーザーがプライマリグループを持っている必要があることを除いて、他のグループを持っている必要がある理由はありません。これは、新しいユーザーごとに新しいグループを作成するのが一般的です。これにより、新しいユーザーは、自分のユーザー権限以外にデフォルトでアクセスできなくなります。


あなたの質問から:

プライマリグループgrp1を持つユーザーAと、プライマリグループgrp2およびセカンダリグループgrp1を持つユーザーBがあるとします。次に、Aによって作成されたファイルに対してAと同じ権限を持つことができますか?

ユーザーBには、Aによって作成されたファイルに割り当てられたグループ権限があります。このシナリオでは、Aはgrp1でのみファイルを作成しています。ユーザーAは、グループからすべての権限を奪うことができます。