【Linux】groupsコマンドでユーザーの所属グループ一覧を表示する

目次

概要

指定したユーザー、または現在のユーザーが所属しているすべてのグループ名を表示するためのコマンドです。 ファイルサーバーのアクセス権限トラブルや、dockersudo などの特定の権限が必要な操作ができない場合に、ユーザーが正しくグループに追加されているかを確認するために使用されます。

仕様(引数・オプション)

構文

groups [ユーザー名]

※オプションはバージョン情報の表示などを除き、実質的に存在しません。

基本の使い方

自分の所属グループを表示する

引数を指定せずに実行すると、現在ログインしているユーザー(mori)が所属しているグループをすべて表示します。先頭に表示されるのがプライマリグループです。

BASH

# 現在のユーザー(mori)のグループを表示
groups

実行結果例

mori wheel docker

特定のユーザーの所属グループを表示する

引数にユーザー名を指定することで、他人の所属グループを確認できます。

BASH

# ユーザー mori の所属グループを確認
groups mori

実行結果例

mori : mori wheel docker

実践コマンド

idコマンドで代用・スクリプト利用する

groups コマンドは人間が見やすい形式で出力しますが、スクリプト処理などでグループ名だけを取得したい場合は id -Gn が適しています。

BASH

# idコマンドでグループ名のみを表示(-n)、全グループを表示(-G)
id -Gn mori

実行結果例

mori wheel docker

sudo利用時の挙動を確認する

sudo を付けて引数なしで groups を実行すると、sudo によって切り替わった実行ユーザー(デフォルトでは root)の所属グループが表示されます。一般ユーザー mori のグループを確認したい場合は、sudo を付けずに実行するか、引数でユーザー名を指定する必要があります。

BASH

# sudo経由で実行(rootのグループが表示される)
sudo groups

実行結果例

root

まとめ

groupsコマンドは、ユーザー権限の現状確認における最も基本的なツールです。 「グループに追加したはずなのに書き込めない」といったトラブルの際は、まずこのコマンドを実行してください。なお、グループへの追加設定(gpasswd -a 等)を行った直後でも、このコマンドの結果が変わらない場合は、一度ログアウトして再ログインすることで情報が更新されます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次