Linux / コマンド / groups - ユーザーのグループ所属確認

groupsは、現在のユーザーまたは指定したユーザーが属するグループ名を表示します。共有ファイルのアクセス権や管理グループ所属を素早く確認する際に使用します。

引数なしで実行すると、現在のプロセスのグループ一覧を出力します。ユーザーを指定すると、そのアカウントのグループ情報を照会します。一覧には基本グループと補助グループが含まれます。数値のグループID(GID)や基本グループとの区別が必要なら、idでユーザー・グループ情報を確認 します。

基本的な文法

groups [ユーザー ...]

インストールされている実装とオプションは、配布版によって異なる場合があります。man groupsで現在のシステムの説明を確認してください。

使用例

現在のセッションのグループ確認

アカウントに付与されたグループが現在のシェルにも反映されているか確認します。

groups

特定ユーザーの照会

alice を実在する対象アカウント名に置き換え、所属グループを確認します。

groups alice

数字IDとの照合

権限の問題を調査する際には、グループ名とIDを一緒に確認します。

id alice

グループリストを権限と結びつける

groupsは、現在のユーザーまたは指定したユーザーのグループ名を表示します。出力形式は実装や引数の使用によって異なる場合があります。

groups alice

例の出力:

alice : alice sudo

ここで最初のaliceは照会対象ユーザーで、コロンの後はグループリストです。グループメンバーシップを変更した直後には、すでに実行中のセッションに新しいグループが反映されない場合があります。現在のプロセスに実際に適用されているグループIDはidで確認してください。

主なオプションと形式

オプション・形式 説明
--help GNU実装の簡単な使用法を表示します。
--version GNU実装のバージョンを表示します。

使用する際の注意点

ユーザーのグループ所属を変更した直後、既存のログインセッションには変更が反映されていない場合があります。現在のセッションでgroupsとidを確認し、必要に応じて再ログインしてください。グループ名が表示されるという事実だけで、すべてのパスにアクセスできるわけではありません。上位ディレクトリの検索権限や、追加のアクセス制御を設定するACL(Access Control List)なども影響します。

よくある質問

groups aliceと引数なしのgroupsの結果が異なる理由は?

まず、現在のプロセスと alice が同じアカウントかを確認してください。ユーザー名を指定するとアカウントデータベースを新たに照会し、引数を省略すると現在のプロセスが保持するグループ一覧を表示します。同じアカウントでも、ログイン後に所属が変更されていると結果が異なる場合があります。

公式ドキュメント

オプションの正確な動作と実装ごとの差は、groups 関連の公式ドキュメントで確認できます。