Provided by: manpages-ja-dev_0.5.0.0.20140515+dfsg-2_all bug

名前

       login, logout - utmp と wtmp エントリを書き込む

書式

       #include <utmp.h>

       void login(const struct utmp *ut);

       int logout(const char *ut_line);

       -lutil でリンクする。

説明

       utmp  ファイルは現在システムを使用しているユーザを記録する。 wtmp ファイルはすべてのログイ
       ンとログアウトを記録する。 utmp(5) を参照すること。

       関数 login()  は与えられた struct utmp ut を utmp と wtmp ファイルの両方に書き込む。

       関数 logout()  は utmp ファイルにあるエントリをクリアする。

   GNU 版の詳細
       より正確には、  login()    は引き数   ut   構造体をとり、(もし存在するならば)   フィールド
       ut->ut_typeUSER_PROCESS という値にし、(もし存在するならば) フィールド ut->ut_pid を呼
       び出し元プロセスのプロセス ID の値にする。 次にフィールド ut->ut_line の値を設定しようとす
       る。  この関数は、標準入力・標準出力・標準エラー出力の中から端末である最初のものをとり、対
       応するパス名から先頭の /dev/  を引いたものを  このフィールドに格納して、この構造体を  utmp
       ファイルに書き込む。  一方、端末名が見つからない場合は、このフィールドは  "???" とされて、
       この構造体は utmp ファイルに書き込まれない。 その後にこの構造体は wtmp  ファイルに書き込ま
       れる。

       logout()  関数は utmp ファイルから ut_line 引き数にマッチするエントリを探す。 レコードが見
       つかった場合、 ut_nameut_host フィールドをクリアして、 ut_tv  タイムスタンプフィールド
       を更新し、 (もし存在するならば) ut_type フィールドを DEAD_PROCESS に更新する。

返り値

       エントリをデータベースに書き込むのに成功した場合、  logout()  関数は 1 を返す。 またエラー
       が起こった場合、0 を返す。

ファイル

       /var/run/utmp
              ユーザアカウントデータベース。 <paths.h> における _PATH_UTMP で設定されている。

       /var/log/wtmp
              ユーザアカウントログファイル。 <paths.h> における _PATH_WTMP で設定されている。

準拠

       POSIX.1-2001 にはない。 BSD 系に存在する。

注意

       struct utmp のメンバ ut_user は、BSD では ut_name という名前である点に注意すること。  その
       ため ut_name<utmp.h> において ut_user のエイリアスとして定義されている。

関連項目

       getutent(3), utmp(5)

この文書について

       この  man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクト
       の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。