Ubuntuのプライマリグループとセカンダリグループの違いは何ですか?


21

Ubuntuのプライマリグループとセカンダリグループの違いは何ですか?


質問にコンテキストを追加してください。どのグループについて質問していますか?
aquaherd

回答:


15

プライマリグループは、通常の方法(TTY、GUI、SSHなど)を使用してログインするときに適用されるグループです。

通常、プロセスは親のグループを継承し、最初のプロセスまたはシェルはプライマリグループをグループとして持つため、通常、行うことはすべて、プライマリグループの影響(ファイルの作成など)を持ちます。

セカンダリグループはsgnewgrpコマンドを介して、またはコマンドを介してログインするために、グループパスワードを使用せずにプロセスを開始できるグループです。

したがって、プライマリグループxとセカンダリグループがあるy場合、

touch foo

通常x、グループの所有者としてファイルを作成します(親ディレクトリが別のグループのSETGIDでない場合)。ただし、次のことができます。

sg y 'touch bar'
# or
newgrp y
touch baz

その後barbazで作成されますyグループとして。

ただし、セカンダリグループにグループがない場合(たとえばz)、sgnewgroup使用する場合は、コマンドとグループコマンドがグループパスワードを要求しますz


4

ファイルシステムグループについて話している場合は、cybercitiの記事をご覧くださいプライマリグループは、新しいファイルを作成するときにデフォルトで使用されます。これをテストできます

touch foo
ls -la foo

ファイルはあなたが所有し、あなたのプライマリグループになります。プライマリグループにも属しているユーザーには、これらのファイルに対するグループレベルのアクセス許可が付与されます。

セカンダリグループは次の方法で確認できます

groups $(whoami)

ディレクトリにグループIDを設定することにより、プライマリグループに属していない人とファイルを共有することもできます。これはここで説明されています:SetGIDを持つ共有フォルダー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.