# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2015-01-23 22:25+0900\n" "PO-Revision-Date: 2015-01-25 07:03+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: TH #: build/C/man3/getutent.3:31 #, no-wrap msgid "GETUTENT" msgstr "GETUTENT" #. type: TH #: build/C/man3/getutent.3:31 build/C/man3/updwtmp.3:29 build/C/man5/utmp.5:30 #, no-wrap msgid "2014-08-19" msgstr "2014-08-19" #. type: TH #: build/C/man3/getutent.3:31 build/C/man3/getutmp.3:26 #: build/C/man3/login.3:25 build/C/man3/updwtmp.3:29 build/C/man5/utmp.5:30 #, no-wrap msgid "Linux Programmer's Manual" msgstr "Linux Programmer's Manual" #. type: SH #: build/C/man3/getutent.3:32 build/C/man3/getutmp.3:27 #: build/C/man3/login.3:26 build/C/man3/updwtmp.3:30 build/C/man5/utmp.5:31 #, no-wrap msgid "NAME" msgstr "名前" #. type: Plain text #: build/C/man3/getutent.3:35 msgid "getutent, getutid, getutline, pututline, setutent, endutent, utmpname - access utmp file entries" msgstr "getutent, getutid, getutline, pututline, setutent, endutent, utmpname - utmp ファイルのエントリーにアクセスする" #. type: SH #: build/C/man3/getutent.3:35 build/C/man3/getutmp.3:29 #: build/C/man3/login.3:28 build/C/man3/updwtmp.3:32 build/C/man5/utmp.5:33 #, no-wrap msgid "SYNOPSIS" msgstr "書式" #. type: Plain text #: build/C/man3/getutent.3:37 build/C/man3/login.3:30 build/C/man5/utmp.5:35 msgid "B<#include Eutmp.hE>" msgstr "B<#include Eutmp.hE>" #. type: Plain text #: build/C/man3/getutent.3:39 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:41 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/getutent.3:43 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/getutent.3:45 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/getutent.3:47 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:49 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:51 msgid "BIB<);>" msgstr "BIB<);>" #. type: SH #: build/C/man3/getutent.3:51 build/C/man3/getutmp.3:37 #: build/C/man3/login.3:36 build/C/man3/updwtmp.3:45 build/C/man5/utmp.5:35 #, no-wrap msgid "DESCRIPTION" msgstr "説明" #. type: Plain text #: build/C/man3/getutent.3:54 msgid "New applications should use the POSIX.1-specified \"utmpx\" versions of these functions; see CONFORMING TO." msgstr "新しいアプリケーションでは、これらの関数の \"utmpx\" 版を使用すべきである。 これらは POSIX.1 で規定されている。「準拠」の節を参照。" #. type: Plain text #: build/C/man3/getutent.3:63 msgid "B() sets the name of the utmp-format file for the other utmp functions to access. If B() is not used to set the filename before the other functions are used, they assume B<_PATH_UTMP>, as defined in Ipaths.hE>." msgstr "B() は、他の utmp 関数がアクセスする (utmp フォーマットの) ファイルの名前を指定する。他の関数を使う前に B() を使って ファイル名の指定を行わなかった場合は、 Ipath.hE> で 定義されている B<_PATH_UTMP> がファイル名とみなされる。" #. type: Plain text #: build/C/man3/getutent.3:68 msgid "B() rewinds the file pointer to the beginning of the utmp file. It is generally a good idea to call it before any of the other functions." msgstr "B() は、ファイルポインターを utmp ファイルの先頭に移動する。 一般的には、他の関数を使う前にこの関数を呼び出しておくと良いだろう。" #. type: Plain text #: build/C/man3/getutent.3:73 msgid "B() closes the utmp file. It should be called when the user code is done accessing the file with the other functions." msgstr "B() は utmp ファイルをクローズする。ユーザーコードで 他の関数を使ってこのファイルにアクセスを行った時は、最後にこの関数を 呼び出すべきである。" #. type: Plain text #: build/C/man3/getutent.3:80 msgid "B() reads a line from the current file position in the utmp file. It returns a pointer to a structure containing the fields of the line. The definition of this structure is shown in B(5)." msgstr "B() は utmp ファイルの現在のファイル位置から一行読み込み、 行の各フィールドの内容を収めた構造体へのポインターを返す。 この構造体の定義は B(5) に書かれている。" #. type: Plain text #: build/C/man3/getutent.3:96 msgid "B() searches forward from the current file position in the utmp file based upon I. If Iut_type> is one of B, B, B, or B, B() will find the first entry whose I field matches Iut_type>. If Iut_type> is one of B, B, B, or B, B() will find the first entry whose I field matches Iut_id>." msgstr "B() は、 utmp ファイル中の現在の位置から順方向 (末尾に向かう方向) へ I に基く検索を行う。 I-Eut_type が B, B, B, B の いずれかなら、 B() は B フィールドが I-Eut_type に一致する最初のエントリーを探す。 I-Eut_type が B, B, B, B のいずれかなら、 B() は I フィールドが I-Eut_id に 一致する最初のエントリーを探す。" #. type: Plain text #: build/C/man3/getutent.3:106 msgid "B() searches forward from the current file position in the utmp file. It scans entries whose I is B or B and returns the first one whose I field matches Iut_line>." msgstr "B() は、 utmp ファイルの現在の位置から末尾に向かって検索を行う。 I が B または B で、 I フィールドが I-Eut_line にマッチする最初の行を返す。" #. type: Plain text #: build/C/man3/getutent.3:118 msgid "B() writes the I structure I into the utmp file. It uses B() to search for the proper place in the file to insert the new entry. If it cannot find an appropriate slot for I, B() will append the new entry to the end of the file." msgstr "B() は I 構造体 I の内容を utmp ファイルに書き出す。 B() は B() を用いて、新たなエントリーを 挿入するのにふさわしい場所を探す。 I を挿入するふさわしい場所が 見つからない場合は、新たなエントリーをファイルの末尾に追加する。" #. type: SH #: build/C/man3/getutent.3:118 build/C/man3/getutmp.3:51 #: build/C/man3/login.3:94 #, no-wrap msgid "RETURN VALUE" msgstr "返り値" #. type: Plain text #: build/C/man3/getutent.3:127 msgid "B(), B(), and B() return a pointer to a I on success, and NULL on failure (which includes the \"record not found\" case). This I is allocated in static storage, and may be overwritten by subsequent calls." msgstr "B(), B(), B() は、成功すると I へのポインターを返す。 失敗すると NULL を返す (レコードが見つからなかった場合も失敗となる)。 この I は静的な記憶領域に確保され、次にこれらの関数を 呼び出した際に上書きされるかもしれない。" #. type: Plain text #: build/C/man3/getutent.3:133 msgid "On success B() returns I; on failure, it returns NULL." msgstr "B() は成功すると I を返す。失敗すると NULL を返す。" #. type: Plain text #: build/C/man3/getutent.3:136 msgid "B() returns 0 if the new name was successfully stored, or -1 on failure." msgstr "B() は、新しい名前の格納に成功すると 0 を返し、失敗すると -1 を返す。" #. type: Plain text #: build/C/man3/getutent.3:140 msgid "In the event of an error, these functions I set to indicate the cause." msgstr "エラーが発生した場合、これらの関数は I にエラーの原因を示す値を設定する。" #. type: SH #: build/C/man3/getutent.3:140 #, no-wrap msgid "ERRORS" msgstr "エラー" #. type: TP #: build/C/man3/getutent.3:141 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:144 msgid "Out of memory." msgstr "メモリー不足。" #. type: TP #: build/C/man3/getutent.3:144 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:147 msgid "Record not found." msgstr "レコードが見つからなかった。" #. type: Plain text #: build/C/man3/getutent.3:154 msgid "B(), B(), and the B() functions can also fail for the reasons described in B(2)." msgstr "関数 B(), B(), B() は B(2) に書かれている理由でも失敗することがある。" #. type: SH #: build/C/man3/getutent.3:154 build/C/man3/login.3:99 #: build/C/man3/updwtmp.3:58 build/C/man5/utmp.5:224 #, no-wrap msgid "FILES" msgstr "ファイル" #. type: Plain text #: build/C/man3/getutent.3:156 msgid "/var/run/utmp\tdatabase of currently logged-in users" msgstr "/var/run/utmp 現在ログイン中のユーザーのデータベース" #. type: Plain text #: build/C/man3/getutent.3:158 msgid "/var/log/wtmp\tdatabase of past user logins" msgstr "/var/log/wtmp 過去のユーザーログインのデータベース" #. type: SH #: build/C/man3/getutent.3:158 build/C/man3/getutmp.3:62 #: build/C/man3/login.3:112 build/C/man3/updwtmp.3:62 build/C/man5/utmp.5:228 #, no-wrap msgid "CONFORMING TO" msgstr "準拠" #. type: Plain text #: build/C/man3/getutent.3:160 msgid "XPG2, SVr4." msgstr "XPG2, SVr4." #. type: Plain text #: build/C/man3/getutent.3:169 msgid "In XPG2 and SVID 2 the function B() is documented to return void, and that is what it does on many systems (AIX, HP-UX). HP-UX introduces a new function B<_pututline>() with the prototype given above for B()." msgstr "XPG2 と SVID 2 では、 B() 関数は値を返さないとされており、 (AIX, HP-UX などの) 多くのシステムではそうなっている。 HP-UX では、上述の B() と同じプロトタイプを持つ 新しい関数 B<_pututline>() が導入されている。" #. type: Plain text #: build/C/man3/getutent.3:173 msgid "All these functions are obsolete now on non-Linux systems. POSIX.1-2001, following SUSv1, does not have any of these functions, but instead uses" msgstr "現在では、Linux 以外のシステムでは、これらの関数は全て廃止されている。 SUSv1 の後に出てきた POSIX.1-2001 では、もはやこれらの関数はなく、 代わりに以下のものを使う。" #. type: Plain text #: build/C/man3/getutent.3:175 msgid "B<#include Eutmpx.hE>" msgstr "B<#include Eutmpx.hE>" #. type: Plain text #: build/C/man3/getutent.3:177 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:179 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:181 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:183 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:185 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:187 msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/getutent.3:196 msgid "These functions are provided by glibc, and perform the same task as their equivalents without the \"x\", but use I, defined on Linux to be the same as I. For completeness, glibc also provides B(), although this function is not specified by POSIX.1." msgstr "これらの関数は glibc により提供されており、 \"x\" がない関数と同じ処理を行うが、 I を使用する。 Linux では、この構造体の定義は I と同じになっている。 完全を期すために、glibc では B() も提供している。この関数は POSIX.1 では規定されていない。" #. type: Plain text #: build/C/man3/getutent.3:204 msgid "On some other systems, the I structure is a superset of the I structure, with additional fields, and larger versions of the existing fields, and parallel files are maintained, often I and I." msgstr "Linux 以外のシステムでは、 I 構造体は I 構造体の上位集合 (superset) になっていて、 追加のフィールドがあったり、既存のフィールドのサイズが大きくなっていたり するものもある。複数のファイルが使用されている場合もあり、多くの場合 I と I というファイルが使われる。" #. type: Plain text #: build/C/man3/getutent.3:212 msgid "Linux glibc on the other hand does not use a parallel I file since its I structure is already large enough. The \"x\" functions listed above are just aliases for their counterparts without the \"x\" (e.g., B() is an alias for B())." msgstr "" "一方、 Linux glibc では複数の I ファイル は使われていない。\n" "I 構造体が十分に大きいからである。\n" "上記の名前に \"x\" が付いた関数は \"x\" が付いていない対応する関数の別名と\n" "なっている (例えば I() は I() の別名である)。" #. type: SH #: build/C/man3/getutent.3:212 build/C/man3/getutmp.3:65 #: build/C/man3/login.3:115 build/C/man3/updwtmp.3:65 build/C/man5/utmp.5:280 #, no-wrap msgid "NOTES" msgstr "注意" #. type: SS #: build/C/man3/getutent.3:213 #, no-wrap msgid "Glibc notes" msgstr "glibc での注意" #. type: Plain text #: build/C/man3/getutent.3:216 msgid "The above functions are not thread-safe. Glibc adds reentrant versions" msgstr "上記の関数群はスレッドセーフではない。 glibc にはリエントラント版 (reentrant) が追加されている。" #. type: Plain text #: build/C/man3/getutent.3:221 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* or _SVID_SOURCE or _BSD_SOURCE;\n" "\\& see B(7) */\n" "B<#include Eutmp.hE>\n" msgstr "" "B<#define _GNU_SOURCE> /* or _SVID_SOURCE or _BSD_SOURCE;\n" "\\& B(7) 参照 */\n" "B<#include Eutmp.hE>\n" #. type: Plain text #: build/C/man3/getutent.3:223 #, no-wrap msgid "BIB<, struct utmp **>IB<);>\n" msgstr "BIB<, struct utmp **>IB<);>\n" #. type: Plain text #: build/C/man3/getutent.3:226 #, no-wrap msgid "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" msgstr "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" #. type: Plain text #: build/C/man3/getutent.3:229 #, no-wrap msgid "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" msgstr "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" #. type: Plain text #: build/C/man3/getutent.3:241 msgid "These functions are GNU extensions, analogs of the functions of the same name without the _r suffix. The I argument gives these functions a place to store their result. On success they return 0, and a pointer to the result is written in I<*ubufp>. On error, these functions return -1. There are no utmpx equivalents of the above functions. (POSIX.1 does not specify such functions.)" msgstr "これらの関数は GNU での拡張であり、末尾の _r をとった名前の関数と 同様の機能を持つ。 I パラメーターは結果を格納する場所を指定する。 成功すると 0 を返し、結果へのポインターを I<*ubufp> に書き込む。エラーの場合 -1 を返す。 上記の関数に対応する utmpx 版は存在しない (POSIX.1 ではこれらの関数を規定されていない)。" #. type: SH #: build/C/man3/getutent.3:241 #, no-wrap msgid "EXAMPLE" msgstr "例" #. type: Plain text #: build/C/man3/getutent.3:249 msgid "The following example adds and removes a utmp record, assuming it is run from within a pseudo terminal. For usage in a real application, you should check the return values of B(3) and B(3)." msgstr "以下の例では、 utmp のレコードの追加・削除を行っている。このコードは、 擬似端末 (pseudo terminal) から実行されることを想定している。 実際のアプリケーションでは B(3) と B(3) の戻り値を検査するべきである。" #. type: Plain text #: build/C/man3/getutent.3:256 #, no-wrap msgid "" "#include Estring.hE\n" "#include Estdlib.hE\n" "#include Epwd.hE\n" "#include Eunistd.hE\n" "#include Eutmp.hE\n" msgstr "" "#include Estring.hE\n" "#include Estdlib.hE\n" "#include Epwd.hE\n" "#include Eunistd.hE\n" "#include Eutmp.hE\n" #. type: Plain text #: build/C/man3/getutent.3:261 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " struct utmp entry;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " struct utmp entry;\n" #. type: Plain text #: build/C/man3/getutent.3:263 #, no-wrap msgid " system(\"echo before adding entry:;who\");\n" msgstr " system(\"echo before adding entry:;who\");\n" #. type: Plain text #: build/C/man3/getutent.3:275 #, no-wrap msgid "" " entry.ut_type = USER_PROCESS;\n" " entry.ut_pid = getpid();\n" " strcpy(entry.ut_line, ttyname(STDIN_FILENO) + strlen(\"/dev/\"));\n" " /* only correct for ptys named /dev/tty[pqr][0-9a-z] */\n" " strcpy(entry.ut_id, ttyname(STDIN_FILENO) + strlen(\"/dev/tty\"));\n" " time(&entry.ut_time);\n" " strcpy(entry.ut_user, getpwuid(getuid())-Epw_name);\n" " memset(entry.ut_host, 0, UT_HOSTSIZE);\n" " entry.ut_addr = 0;\n" " setutent();\n" " pututline(&entry);\n" msgstr "" " entry.ut_type = USER_PROCESS;\n" " entry.ut_pid = getpid();\n" " strcpy(entry.ut_line, ttyname(STDIN_FILENO) + strlen(\"/dev/\"));\n" " /* only correct for ptys named /dev/tty[pqr][0-9a-z] */\n" " strcpy(entry.ut_id, ttyname(STDIN_FILENO) + strlen(\"/dev/tty\"));\n" " time(&entry.ut_time);\n" " strcpy(entry.ut_user, getpwuid(getuid())-Epw_name);\n" " memset(entry.ut_host, 0, UT_HOSTSIZE);\n" " entry.ut_addr = 0;\n" " setutent();\n" " pututline(&entry);\n" #. type: Plain text #: build/C/man3/getutent.3:277 #, no-wrap msgid " system(\"echo after adding entry:;who\");\n" msgstr " system(\"echo after adding entry:;who\");\n" #. type: Plain text #: build/C/man3/getutent.3:284 #, no-wrap msgid "" " entry.ut_type = DEAD_PROCESS;\n" " memset(entry.ut_line, 0, UT_LINESIZE);\n" " entry.ut_time = 0;\n" " memset(entry.ut_user, 0, UT_NAMESIZE);\n" " setutent();\n" " pututline(&entry);\n" msgstr "" " entry.ut_type = DEAD_PROCESS;\n" " memset(entry.ut_line, 0, UT_LINESIZE);\n" " entry.ut_time = 0;\n" " memset(entry.ut_user, 0, UT_NAMESIZE);\n" " setutent();\n" " pututline(&entry);\n" #. type: Plain text #: build/C/man3/getutent.3:286 #, no-wrap msgid " system(\"echo after removing entry:;who\");\n" msgstr " system(\"echo after removing entry:;who\");\n" #. type: Plain text #: build/C/man3/getutent.3:290 #, no-wrap msgid "" " endutent();\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " endutent();\n" " exit(EXIT_SUCCESS);\n" "}\n" #. .PP #. Note that the \fIutmp\fP struct from libc5 has changed in libc6. #. Because of this, #. binaries using the old libc5 struct will corrupt #. .IR /var/run/utmp " and/or " /var/log/wtmp . #. .SH BUGS #. This man page is based on the libc5 one, things may work differently now. #. type: SH #: build/C/man3/getutent.3:291 build/C/man3/getutmp.3:76 #: build/C/man3/login.3:130 build/C/man3/updwtmp.3:81 build/C/man5/utmp.5:338 #, no-wrap msgid "SEE ALSO" msgstr "関連項目" #. type: Plain text #: build/C/man3/getutent.3:294 msgid "B(3), B(5)" msgstr "B(3), B(5)" #. type: SH #: build/C/man3/getutent.3:294 build/C/man3/getutmp.3:80 #: build/C/man3/login.3:133 build/C/man3/updwtmp.3:84 build/C/man5/utmp.5:352 #, no-wrap msgid "COLOPHON" msgstr "この文書について" #. type: Plain text #: build/C/man3/getutent.3:302 build/C/man3/getutmp.3:88 #: build/C/man3/login.3:141 build/C/man3/updwtmp.3:92 build/C/man5/utmp.5:360 msgid "This page is part of release 3.78 of the Linux I project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/." msgstr "" "この man ページは Linux I プロジェクトのリリース 3.78 の一部\n" "である。プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man3/getutmp.3:26 #, no-wrap msgid "GETUTMP" msgstr "GETUTMP" #. type: TH #: build/C/man3/getutmp.3:26 #, no-wrap msgid "2014-04-08" msgstr "2014-04-08" #. type: TH #: build/C/man3/getutmp.3:26 build/C/man5/utmp.5:30 #, no-wrap msgid "Linux" msgstr "Linux" #. type: Plain text #: build/C/man3/getutmp.3:29 msgid "getutmp, getutmpx - copy utmp structure to utmpx, and vice versa" msgstr "getutmp, getutmpx - utmp 構造体から utmpx 構造体、その逆のコピーを行う" #. type: Plain text #: build/C/man3/getutmp.3:33 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" "B<#include Eutmpx.hE>\n" msgstr "" "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n" "B<#include Eutmpx.hE>\n" #. type: Plain text #: build/C/man3/getutmp.3:36 #, no-wrap msgid "" "B< void getutmp(const struct utmpx *>IB<, struct utmp *>IB<);>\n" "B< void getutmpx(const struct utmp *>IB<, struct utmpx *>IB<);>\n" msgstr "" "B< void getutmp(const struct utmpx *>IB<, struct utmp *>IB<);>\n" "B< void getutmpx(const struct utmp *>IB<, struct utmpx *>IB<);>\n" #. type: Plain text #: build/C/man3/getutmp.3:51 msgid "The B() function copies the fields of the I structure pointed to by I to the corresponding fields of the I structure pointed to by I. The B() function performs the converse operation." msgstr "" "B() 関数は、 I が指す I 構造体の各フィールドを、\n" "I が指す I 構造体の対応するフィールドにコピーする。\n" "B() 関数は逆の操作を行う。" #. type: Plain text #: build/C/man3/getutmp.3:53 msgid "These functions do not return a value." msgstr "これらの関数は値を返さない。" #. type: SH #: build/C/man3/getutmp.3:53 #, no-wrap msgid "VERSIONS" msgstr "バージョン" #. type: Plain text #: build/C/man3/getutmp.3:55 msgid "These functions first appeared in glibc in version 2.1.1." msgstr "これらの関数は glibc バージョン 2.1.1 で初めて登場した。" #. type: SH #: build/C/man3/getutmp.3:55 #, no-wrap msgid "ATTRIBUTES" msgstr "属性" #. type: SS #: build/C/man3/getutmp.3:56 #, no-wrap msgid "Multithreading (see pthreads(7))" msgstr "マルチスレッディング (pthreads(7) 参照)" #. type: Plain text #: build/C/man3/getutmp.3:62 msgid "The B() and B() functions are thread-safe." msgstr "関数 B() と B() はスレッドセーフである。" #. type: Plain text #: build/C/man3/getutmp.3:65 msgid "These functions are nonstandard, but appear on a few other systems, such as Solaris and NetBSD." msgstr "" "これらの関数は非標準である。\n" "Linux 以外にも、これらの関数が存在するシステムもいくつかある\n" "(Solaris や NetBSD など)。" #. e.g., on Solaris, the utmpx structure is rather larger than utmp. #. type: Plain text #: build/C/man3/getutmp.3:76 msgid "These functions exist primarily for compatibility with other systems where the I and I structures contain different fields, or the size of corresponding fields differs. On Linux, the two structures contain the same fields, and the fields have the same sizes." msgstr "" "これらの関数が存在する一番の目的は、\n" "I 構造体と I 構造体が異なるフィールドを持たり、\n" "対応するフィールドの大きさが異なっている、他のシステムとの\n" "互換性のためである。\n" "Linux では、これらの構造体は同じフィールドを持っており、\n" "各フィールドのサイズも同じである。" #. type: Plain text #: build/C/man3/getutmp.3:80 msgid "B(1), B(3), B(5)" msgstr "B(1), B(3), B(5)" #. type: TH #: build/C/man3/login.3:25 #, no-wrap msgid "LOGIN" msgstr "LOGIN" #. type: TH #: build/C/man3/login.3:25 #, no-wrap msgid "2004-05-06" msgstr "2004-05-06" #. type: TH #: build/C/man3/login.3:25 build/C/man3/updwtmp.3:29 #, no-wrap msgid "GNU" msgstr "GNU" #. type: Plain text #: build/C/man3/login.3:28 msgid "login, logout - write utmp and wtmp entries" msgstr "login, logout - utmp と wtmp エントリーを書き込む" #. type: Plain text #: build/C/man3/login.3:32 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/login.3:34 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/login.3:36 msgid "Link with I<-lutil>." msgstr "I<-lutil> でリンクする。" #. type: Plain text #: build/C/man3/login.3:41 msgid "The utmp file records who is currently using the system. The wtmp file records all logins and logouts. See B(5)." msgstr "utmp ファイルは現在システムを使用しているユーザーを記録する。 wtmp ファイルはすべてのログインとログアウトを記録する。 B(5) を参照すること。" #. type: Plain text #: build/C/man3/login.3:48 msgid "The function B() takes the supplied I, I, and writes it to both the utmp and the wtmp file." msgstr "関数 B() は与えられた I I を utmp と wtmp ファイルの両方に書き込む。" #. type: Plain text #: build/C/man3/login.3:52 msgid "The function B() clears the entry in the utmp file again." msgstr "関数 B() は utmp ファイルにあるエントリーをクリアする。" #. type: SS #: build/C/man3/login.3:52 #, no-wrap msgid "GNU details" msgstr "GNU 版の詳細" #. type: Plain text #: build/C/man3/login.3:78 msgid "More precisely, B() takes the argument I struct, fills the field Iut_type> (if there is such a field) with the value B, and fills the field Iut_pid> (if there is such a field) with the process ID of the calling process. Then it tries to fill the field Iut_line>. It takes the first of I, I, I that is a terminal, and stores the corresponding pathname minus a possible leading I into this field, and then writes the struct to the utmp file. On the other hand, if no terminal name was found, this field is filled with \"???\" and the struct is not written to the utmp file. After this, the struct is written to the wtmp file." msgstr "より正確には、 B() は引き数 I 構造体をとり、(もし存在するならば) フィールド Iut_type> を B という値にし、(もし存在するならば) フィールド Iut_pid> を呼び出し元プロセスのプロセス ID の値にする。 次にフィールド Iut_line> の値を設定しようとする。 この関数は、標準入力・標準出力・標準エラー出力の中から端末である最初のものをとり、対応するパス名から先頭の I を引いたものを このフィールドに格納して、この構造体を utmp ファイルに書き込む。 一方、端末名が見つからない場合は、このフィールドは \"???\" とされて、 この構造体は utmp ファイルに書き込まれない。 その後にこの構造体は wtmp ファイルに書き込まれる。" #. type: Plain text #: build/C/man3/login.3:94 msgid "The B() function searches the utmp file for an entry matching the I argument. If a record is found, it is updated by zeroing out the I and I fields, updating the I timestamp field and setting I (if there is such a field) to B." msgstr "B() 関数は utmp ファイルから I 引き数にマッチするエントリーを探す。 レコードが見つかった場合、 I と I フィールドをクリアして、 I タイムスタンプフィールドを更新し、 (もし存在するならば) I フィールドを B に更新する。" #. type: Plain text #: build/C/man3/login.3:99 msgid "The B() function returns 1 if the entry was successfully written to the database, or 0 if an error occurred." msgstr "エントリーをデータベースに書き込むのに成功した場合、 B() 関数は 1 を返す。 またエラーが起こった場合、0 を返す。" #. type: TP #: build/C/man3/login.3:100 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/login.3:106 msgid "user accounting database, configured through B<_PATH_UTMP> in Ipaths.hE>" msgstr "ユーザーアカウントデータベース。 Ipaths.hE> における B<_PATH_UTMP> で設定されている。" #. type: TP #: build/C/man3/login.3:106 build/C/man3/updwtmp.3:59 #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: build/C/man3/login.3:112 msgid "user accounting log file, configured through B<_PATH_WTMP> in Ipaths.hE>" msgstr "ユーザーアカウントログファイル。 Ipaths.hE> における B<_PATH_WTMP> で設定されている。" #. type: Plain text #: build/C/man3/login.3:115 msgid "Not in POSIX.1-2001. Present on the BSDs." msgstr "POSIX.1-2001 にはない。 BSD 系に存在する。" #. type: Plain text #: build/C/man3/login.3:130 msgid "Note that the member I of I is called I in BSD. Therefore, I is defined as an alias for I in Iutmp.hE>." msgstr "I のメンバ I は、BSD では I という名前である点に注意すること。 そのため I は Iutmp.hE> において I のエイリアスとして定義されている。" #. type: Plain text #: build/C/man3/login.3:133 msgid "B(3), B(5)" msgstr "B(3), B(5)" #. type: TH #: build/C/man3/updwtmp.3:29 #, no-wrap msgid "UPDWTMP" msgstr "UPDWTMP" #. type: Plain text #: build/C/man3/updwtmp.3:32 msgid "updwtmp, logwtmp - append an entry to the wtmp file" msgstr "updwtmp, logwtmp - wtmp ファイルにエントリーを追加する" #. type: Plain text #: build/C/man3/updwtmp.3:35 #, no-wrap msgid "B<#include Eutmp.hE>\n" msgstr "B<#include Eutmp.hE>\n" #. type: Plain text #: build/C/man3/updwtmp.3:37 #, no-wrap msgid "BIB<, const struct utmp *>IB<);>\n" msgstr "BIB<, const struct utmp *>IB<);>\n" #. type: Plain text #: build/C/man3/updwtmp.3:40 #, no-wrap msgid "BIB<, const char *>IB<, const char *>IB<);>\n" msgstr "BIB<, const char *>IB<, const char *>IB<);>\n" #. type: Plain text #: build/C/man3/updwtmp.3:45 msgid "For B(), link with I<-lutil>." msgstr "B() は I<-lutil> でリンクする。" #. type: Plain text #: build/C/man3/updwtmp.3:50 msgid "B() appends the utmp structure I to the wtmp file." msgstr "B() は、utmp 構造体 I を wtmp ファイルに追加する。" #. type: Plain text #: build/C/man3/updwtmp.3:58 msgid "B() constructs a utmp structure using I, I, I, current time and current process ID. Then it calls B() to append the structure to the wtmp file." msgstr "B() は、 I, I, I, 現在時刻、現プロセスID から utmp 構造体を作り、 B() を呼び出してその構造体を wtmp ファイルに追加する。" #. type: Plain text #: build/C/man3/updwtmp.3:62 msgid "database of past user logins" msgstr "ユーザーログインの履歴データベース" #. type: Plain text #: build/C/man3/updwtmp.3:65 msgid "Not in POSIX.1-2001. Present on Solaris, NetBSD, and perhaps other systems." msgstr "POSIX.1-2001 にはない。 Solaris, NetBSD に存在し、おそらく他のシステムにもあるだろう。" #. type: Plain text #: build/C/man3/updwtmp.3:69 msgid "For consistency with the other \"utmpx\" functions (see B(3)), glibc provides (since version 2.1):" msgstr "他の \"utmpx\" 関数群 (B(3) 参照) との一貫性のために、glibc (バージョン 2.1 以降) は以下の関数を 提供している:" #. type: Plain text #: build/C/man3/updwtmp.3:72 #, no-wrap msgid "B<#include Eutmpx.hE>\n" msgstr "B<#include Eutmpx.hE>\n" #. type: Plain text #: build/C/man3/updwtmp.3:74 #, no-wrap msgid "BIB<, const struct utmpx *>IB<);>\n" msgstr "BIB<, const struct utmpx *>IB<);>\n" #. type: Plain text #: build/C/man3/updwtmp.3:81 msgid "This function performs the same task as B(), but differs in that it takes a I structure as its last argument." msgstr "この関数は B() と同じ作業を行うが、最後の引き数として I 構造体を取るところが異なる。" #. type: Plain text #: build/C/man3/updwtmp.3:84 msgid "B(3), B(5)" msgstr "B(3), B(5)" #. type: TH #: build/C/man5/utmp.5:30 #, no-wrap msgid "UTMP" msgstr "UTMP" #. type: Plain text #: build/C/man5/utmp.5:33 msgid "utmp, wtmp - login records" msgstr "utmp, wtmp - ログイン記録" #. type: Plain text #: build/C/man5/utmp.5:42 msgid "The I file allows one to discover information about who is currently using the system. There may be more users currently using the system, because not all programs use utmp logging." msgstr "I ファイルを見ることで、現在誰がシステムを使っているかという情報 が得られる。ただすべてのプログラムが utmp ファイルを 更新しているわけではないので、実際にはそれ以上のユーザーが システムを使っている可能性がある。" #. type: Plain text #: build/C/man5/utmp.5:52 msgid "B I must not be writable by the user class \"other\", because many system programs (foolishly) depend on its integrity. You risk faked system logfiles and modifications of system files if you leave I writable to any user other than the owner and group owner of the file." msgstr "B<警告:> (愚かにも) 多くのシステムプログラムがその整合性に依存しているので、 I ファイルは \"other\" に分類されるユーザーに対して 書き込み可能にしてはならない。 ファイルの所有者とグループオーナー以外のユーザーに対して I ファイルを書き込み可能な状態にしておくと、 システムのログファイルを偽造されたり、システムファイルの 改ざんを受けるといったリスクを犯すことになる。" #. type: Plain text #: build/C/man5/utmp.5:60 msgid "The file is a sequence of I structures, declared as follows in Iutmp.hE> (note that this is only one of several definitions around; details depend on the version of libc):" msgstr "このファイルは I 構造体の繰り返しで構成される。 この構造体は Iutmp.hE> で以下のように定義されている (ここに記述してあるのは幾つかの大まかな定義のみで、 詳細は libc のバージョンにより変わることに注意が必要である)。" #. type: Plain text #: build/C/man5/utmp.5:64 #, no-wrap msgid "/* Values for ut_type field, below */\n" msgstr "/* Values for ut_type field, below */\n" #. type: Plain text #: build/C/man5/utmp.5:79 #, no-wrap msgid "" "#define EMPTY 0 /* Record does not contain valid info\n" " (formerly known as UT_UNKNOWN on Linux) */\n" "#define RUN_LVL 1 /* Change in system run-level (see\n" " B(8)) */\n" "#define BOOT_TIME 2 /* Time of system boot (in I) */\n" "#define NEW_TIME 3 /* Time after system clock change\n" " (in I) */\n" "#define OLD_TIME 4 /* Time before system clock change\n" " (in I) */\n" "#define INIT_PROCESS 5 /* Process spawned by B(8) */\n" "#define LOGIN_PROCESS 6 /* Session leader process for user login */\n" "#define USER_PROCESS 7 /* Normal process */\n" "#define DEAD_PROCESS 8 /* Terminated process */\n" "#define ACCOUNTING 9 /* Not implemented */\n" msgstr "" "#define EMPTY 0 /* Record does not contain valid info\n" " (formerly known as UT_UNKNOWN on Linux) */\n" "#define RUN_LVL 1 /* Change in system run-level (see\n" " B(8)) */\n" "#define BOOT_TIME 2 /* Time of system boot (in I) */\n" "#define NEW_TIME 3 /* Time after system clock change\n" " (in I) */\n" "#define OLD_TIME 4 /* Time before system clock change\n" " (in I) */\n" "#define INIT_PROCESS 5 /* Process spawned by B(8) */\n" "#define LOGIN_PROCESS 6 /* Session leader process for user login */\n" "#define USER_PROCESS 7 /* Normal process */\n" "#define DEAD_PROCESS 8 /* Terminated process */\n" "#define ACCOUNTING 9 /* Not implemented */\n" #. type: Plain text #: build/C/man5/utmp.5:83 #, no-wrap msgid "" "#define UT_LINESIZE 32\n" "#define UT_NAMESIZE 32\n" "#define UT_HOSTSIZE 256\n" msgstr "" "#define UT_LINESIZE 32\n" "#define UT_NAMESIZE 32\n" "#define UT_HOSTSIZE 256\n" #. type: Plain text #: build/C/man5/utmp.5:88 #, no-wrap msgid "" "struct exit_status { /* Type for ut_exit, below */\n" " short int e_termination; /* Process termination status */\n" " short int e_exit; /* Process exit status */\n" "};\n" msgstr "" "struct exit_status { /* Type for ut_exit, below */\n" " short int e_termination; /* Process termination status */\n" " short int e_exit; /* Process exit status */\n" "};\n" #. type: Plain text #: build/C/man5/utmp.5:116 #, no-wrap msgid "" "struct utmp {\n" " short ut_type; /* Type of record */\n" " pid_t ut_pid; /* PID of login process */\n" " char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n" " char ut_id[4]; /* Terminal name suffix,\n" " or inittab(5) ID */\n" " char ut_user[UT_NAMESIZE]; /* Username */\n" " char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n" " kernel version for run-level\n" " messages */\n" " struct exit_status ut_exit; /* Exit status of a process\n" " marked as DEAD_PROCESS; not\n" " used by Linux init (1 */\n" " /* The ut_session and ut_tv fields must be the same size when\n" " compiled 32- and 64-bit. This allows data files and shared\n" " memory to be shared between 32- and 64-bit applications. */\n" "#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n" " int32_t ut_session; /* Session ID (B(2)),\n" " used for windowing */\n" " struct {\n" " int32_t tv_sec; /* Seconds */\n" " int32_t tv_usec; /* Microseconds */\n" " } ut_tv; /* Time entry was made */\n" "#else\n" " long ut_session; /* Session ID */\n" " struct timeval ut_tv; /* Time entry was made */\n" "#endif\n" msgstr "" "struct utmp {\n" " short ut_type; /* Type of record */\n" " pid_t ut_pid; /* PID of login process */\n" " char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n" " char ut_id[4]; /* Terminal name suffix,\n" " or inittab(5) ID */\n" " char ut_user[UT_NAMESIZE]; /* Username */\n" " char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n" " kernel version for run-level\n" " messages */\n" " struct exit_status ut_exit; /* Exit status of a process\n" " marked as DEAD_PROCESS; not\n" " used by Linux init(1) */\n" " /* ut_session と ut_tv フィールドは、32ビットでコンパイルされた場合と\n" " 64ビットでコンパイルされた場合で同じサイズでなければならない。\n" " こうすることで、32ビットと64ビットのアプリケーションで、\n" " データファイルと共有メモリーを共有することができるようになる。 */\n" "#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n" " int32_t ut_session; /* Session ID (B(2)),\n" " used for windowing */\n" " struct {\n" " int32_t tv_sec; /* Seconds */\n" " int32_t tv_usec; /* Microseconds */\n" " } ut_tv; /* Time entry was made */\n" "#else\n" " long ut_session; /* Session ID */\n" " struct timeval ut_tv; /* Time entry was made */\n" "#endif\n" #. type: Plain text #: build/C/man5/utmp.5:122 #, no-wrap msgid "" " int32_t ut_addr_v6[4]; /* Internet address of remote\n" " host; IPv4 address uses\n" " just ut_addr_v6[0] */\n" " char __unused[20]; /* Reserved for future use */\n" "};\n" msgstr "" " int32_t ut_addr_v6[4]; /* Internet address of remote\n" " host; IPv4 address uses\n" " just ut_addr_v6[0] */\n" " char __unused[20]; /* Reserved for future use */\n" "};\n" #. type: Plain text #: build/C/man5/utmp.5:130 #, no-wrap msgid "" "/* Backward compatibility hacks */\n" "#define ut_name ut_user\n" "#ifndef _NO_UT_TIME\n" "#define ut_time ut_tv.tv_sec\n" "#endif\n" "#define ut_xtime ut_tv.tv_sec\n" "#define ut_addr ut_addr_v6[0]\n" msgstr "" "/* Backward compatibility hacks */\n" "#define ut_name ut_user\n" "#ifndef _NO_UT_TIME\n" "#define ut_time ut_tv.tv_sec\n" "#endif\n" "#define ut_xtime ut_tv.tv_sec\n" "#define ut_addr ut_addr_v6[0]\n" #. type: Plain text #: build/C/man5/utmp.5:140 msgid "This structure gives the name of the special file associated with the user's terminal, the user's login name, and the time of login in the form of B