Next: logname invocation, Up: User information [Contents][Index]
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.
グループ ID のみ表示する。
グループ ID と補助グループ ID のみ表示する。
ID 番号の代りに、ユーザ名やグループ名を表示する。-u, -g, -G の一つを指定する必要がある。
実効ユーザや実効グループの ID ではなく、実ユーザや実グループの ID を表示する。 -u, -g, -G のどれか一つを指定する必要がある。
ユーザ ID のみ表示する。
プロセスのセキュリティ・コンテキストのみを表示する。 たいていの場合、それは、親プロセスから継承したユーザのセキュリティ・コンテキストである。 SELinux と SMACK のどちらも有効になっていない場合は、 警告メッセージを出し、終了ステータスを 1 にする。
出力する項目を NUL 文字で区切る。 このオプションは、デフォルトのフォーマットを使用しているときは、使うことができない。
用例:
$ id -Gn --zero users <NUL> devs <NUL>
プロセスの基本 (primary) グループや 補助 (supplementary) グループは、
通常その親プロセスから継承され、ログイン後ずっと変わらないのが普通だ。
従って、ログイン後にグループ・データベースを変更しても、
現在のログインセッションが続いている間は、id
コマンドはその変更を反映しない。
しかし、引数にユーザの名前を指定して id
を実行した場合は、
ユーザ・データベースやグループ・データベースの参照が改めて行われるので、
変更した結果が表示されることになる。
終了ステータス 0 は成功を示し、0 以外の値は失敗を示す。