Linux / コマンド / id - ユーザーIDとグループ情報を確認

idは、現在のプロセスまたは指定したユーザーのユーザーID(UID)、基本グループID(GID)、追加グループを確認します。ファイルアクセス権を確認する際に、現在のアカウントの実際のグループ情報を確認する出発点です。

引数なしで実行すると、現在のプロセスのユーザー・グループ情報を出力します。ユーザーを指定すると、アカウントデータベースからそのユーザーの情報を照会します。実効UIDと実UIDが異なる場合、id -u は実効UID、id -ru は実UIDを表示します。実UIDは必ずしも最初にログインしたアカウントを示すものではありません。

基本的な文法

id [オプション] [ユーザー]

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

使用例

現在のユーザーとグループの確認

UID、基本GIDおよび追加グループを一緒に表示します。

id

他のアカウントの照会

alice は例なので、実在する照会対象のアカウント名に置き換えます。そのユーザーのグループ構成は確認できますが、そのアカウントへ権限が切り替わることはありません。

id alice

名前または数字のみ抽出

-uは実効UIDを、-unはその名前を出力します。

id -u
id -un

UID・GID・補助グループの読み取り

idはユーザー識別番号(UID)、基本グループ番号(GID)、補助グループを一度に表示します。番号と名前はシステムによって異なります。

id

例の出力:

uid=1000(alice) gid=1000(alice) groups=1000(alice),27(sudo)

この例ではaliceの基本グループはUIDの横ではなく、gid=の後に表示されます。補助グループはファイルへのアクセスに影響しますが、sudo というグループが表示されても、管理者として実行できる範囲はsudoの実際の設定によります。スクリプトで数字のUIDだけが必要な場合はid -u、現在のユーザーのグループ名だけが必要な場合はid -Gnを使用してください。

主なオプションと形式

オプション・形式 説明
-u 実効ユーザーIDのみを表示します。
-g 実効グループIDのみを表示します。
-G すべてのグループIDを表示します。
-n -u・-g・-Gとともに名前で表示します。
-r -u・-g・-Gで実効IDの代わりに実IDを表示します。

使用する際の注意点

ユーザーのグループ所属を変更したばかりの場合、すでに開かれているログインセッションのグループリストとアカウントデータベースの照会結果が異なることがあります。権限の問題を調査する場合は、問題が発生したセッションで直接idを実行してください。id aliceは、現在のセッションの権限を変更しません。

よくある質問

idに表示されるUIDとGIDとは何ですか?

UIDはユーザー識別番号、GIDはグループ識別番号です。groups 項目には基本グループも含むグループ一覧が表示されます。UIDの名前だけなら whoamiで実効ユーザー名を確認 することもできます。

公式ドキュメント

オプションの正確な動作と実装ごとの違いについては、idに関する公式ドキュメントで確認できます。