Next: , Up: User information   [Contents][Index]


20.1 id: ユーザの ID を表示する

id は、指定されたユーザについて情報を表示する。 ユーザが指定されていない場合は、id を実行しているプロセスについて情報を表示する。


書式:

id [option]… [user]

user にはユーザ ID (番号) とユーザ名のどちらも使えるが、ID が頭に ‘+’ を付けて指定されていないかぎり、まずユーザ名として検索が行われる。 See Disambiguating names and IDs.

デフォルトで表示するのは、実ユーザ ID、実グループ ID、実効ユーザ ID (実ユーザ ID と違う場合)、実効グループ ID (実グループID と違う場合)、 それに、補助 (supplemental) グループ ID である。 さらに、SELinux が有効になっていて、環境変数 POSIXLY_CORRECT が設定されていない場合は、‘context=c’ も表示する。 この c はセキュリティ・コンテキストである。

表示される各数値には、それが何であるかを示す文字列が前に付き、 対応するユーザ名やグループ名がカッコで囲まれて後ろに続く。

オプションを指定すると、id は上で述べた情報のうち、一部のみを表示する。 参照: Common options.

-g
--group

グループ ID のみ表示する。

-G
--groups

グループ ID と補助グループ ID のみ表示する。

-n
--name

ID 番号の代りに、ユーザ名やグループ名を表示する。-u, -g, -G の一つを指定する必要がある。

-r
--real

実効ユーザや実効グループの ID ではなく、実ユーザや実グループの ID を表示する。 -u, -g, -G のどれか一つを指定する必要がある。

-u
--user

ユーザ ID のみ表示する。

-Z
--context

プロセスのセキュリティ・コンテキストのみを表示する。 たいていの場合、それは、親プロセスから継承したユーザのセキュリティ・コンテキストである。 SELinux と SMACK のどちらも有効になっていない場合は、 警告メッセージを出し、終了ステータスを 1 にする。

-z
--zero

出力する項目を NUL 文字で区切る。 このオプションは、デフォルトのフォーマットを使用しているときは、使うことができない。

用例:

$ id -Gn --zero
users <NUL> devs <NUL>

プロセスの基本 (primary) グループや 補助 (supplementary) グループは、 通常その親プロセスから継承され、ログイン後ずっと変わらないのが普通だ。 従って、ログイン後にグループ・データベースを変更しても、 現在のログインセッションが続いている間は、id コマンドはその変更を反映しない。 しかし、引数にユーザの名前を指定して id を実行した場合は、 ユーザ・データベースやグループ・データベースの参照が改めて行われるので、 変更した結果が表示されることになる。

終了ステータス 0 は成功を示し、0 以外の値は失敗を示す。