OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.50.
[linuxjm/LDP_man-pages.git] / po4a / utmp / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2013-03-22 01:07+0900\n"
10 "PO-Revision-Date: 2012-05-28 07:43+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/getutent.3:31
20 #, no-wrap
21 msgid "GETUTENT"
22 msgstr "GETUTENT"
23
24 #. type: TH
25 #: build/C/man3/getutent.3:31
26 #, no-wrap
27 msgid "2008-06-29"
28 msgstr "2008-06-29"
29
30 #. type: TH
31 #: build/C/man3/getutent.3:31 build/C/man3/getutmp.3:26
32 #: build/C/man3/login.3:25 build/C/man3/updwtmp.3:29 build/C/man5/utmp.5:30
33 #, no-wrap
34 msgid "Linux Programmer's Manual"
35 msgstr "Linux Programmer's Manual"
36
37 #. type: SH
38 #: build/C/man3/getutent.3:32 build/C/man3/getutmp.3:27
39 #: build/C/man3/login.3:26 build/C/man3/updwtmp.3:30 build/C/man5/utmp.5:31
40 #, no-wrap
41 msgid "NAME"
42 msgstr "名前"
43
44 #. type: Plain text
45 #: build/C/man3/getutent.3:35
46 msgid ""
47 "getutent, getutid, getutline, pututline, setutent, endutent, utmpname - "
48 "access utmp file entries"
49 msgstr ""
50 "getutent, getutid, getutline, pututline, setutent, endutent, utmpname - utmp "
51 "ファイルのエントリにアクセスする"
52
53 #. type: SH
54 #: build/C/man3/getutent.3:35 build/C/man3/getutmp.3:29
55 #: build/C/man3/login.3:28 build/C/man3/updwtmp.3:32 build/C/man5/utmp.5:33
56 #, no-wrap
57 msgid "SYNOPSIS"
58 msgstr "書式"
59
60 #. type: Plain text
61 #: build/C/man3/getutent.3:37 build/C/man3/login.3:30 build/C/man5/utmp.5:35
62 msgid "B<#include E<lt>utmp.hE<gt>>"
63 msgstr "B<#include E<lt>utmp.hE<gt>>"
64
65 #. type: Plain text
66 #: build/C/man3/getutent.3:39
67 msgid "B<struct utmp *getutent(void);>"
68 msgstr "B<struct utmp *getutent(void);>"
69
70 #. type: Plain text
71 #: build/C/man3/getutent.3:41
72 msgid "B<struct utmp *getutid(struct utmp *>I<ut>B<);>"
73 msgstr "B<struct utmp *getutid(struct utmp *>I<ut>B<);>"
74
75 #. type: Plain text
76 #: build/C/man3/getutent.3:43
77 msgid "B<struct utmp *getutline(struct utmp *>I<ut>B<);>"
78 msgstr "B<struct utmp *getutline(struct utmp *>I<ut>B<);>"
79
80 #. type: Plain text
81 #: build/C/man3/getutent.3:45
82 msgid "B<struct utmp *pututline(struct utmp *>I<ut>B<);>"
83 msgstr "B<struct utmp *pututline(struct utmp *>I<ut>B<);>"
84
85 #. type: Plain text
86 #: build/C/man3/getutent.3:47
87 msgid "B<void setutent(void);>"
88 msgstr "B<void setutent(void);>"
89
90 #. type: Plain text
91 #: build/C/man3/getutent.3:49
92 msgid "B<void endutent(void);>"
93 msgstr "B<void endutent(void);>"
94
95 #. type: Plain text
96 #: build/C/man3/getutent.3:51
97 msgid "B<int utmpname(const char *>I<file>B<);>"
98 msgstr "B<int utmpname(const char *>I<file>B<);>"
99
100 #. type: SH
101 #: build/C/man3/getutent.3:51 build/C/man3/getutmp.3:37
102 #: build/C/man3/login.3:36 build/C/man3/updwtmp.3:41 build/C/man5/utmp.5:35
103 #, no-wrap
104 msgid "DESCRIPTION"
105 msgstr "説明"
106
107 #. type: Plain text
108 #: build/C/man3/getutent.3:54
109 msgid ""
110 "New applications should use the POSIX.1-specified \"utmpx\" versions of "
111 "these functions; see CONFORMING TO."
112 msgstr ""
113 "新しいアプリケーションでは、これらの関数の \"utmpx\" 版を使用すべきである。 "
114 "これらは POSIX.1 で規定されている。「準拠」の節を参照。"
115
116 #. type: Plain text
117 #: build/C/man3/getutent.3:63
118 msgid ""
119 "B<utmpname>()  sets the name of the utmp-format file for the other utmp "
120 "functions to access.  If B<utmpname>()  is not used to set the filename "
121 "before the other functions are used, they assume B<_PATH_UTMP>, as defined "
122 "in I<E<lt>paths.hE<gt>>."
123 msgstr ""
124 "B<utmpname>()  は、他の utmp 関数がアクセスする (utmp フォーマットの)  ファイ"
125 "ルの名前を指定する。他の関数を使う前に B<utmpname>()  を使って ファイル名の指"
126 "定を行わなかった場合は、 I<E<lt>path.hE<gt>> で 定義されている B<_PATH_UTMP> "
127 "がファイル名とみなされる。"
128
129 #. type: Plain text
130 #: build/C/man3/getutent.3:68
131 msgid ""
132 "B<setutent>()  rewinds the file pointer to the beginning of the utmp file.  "
133 "It is generally a good idea to call it before any of the other functions."
134 msgstr ""
135 "B<setutent>()  は、ファイルポインタを utmp ファイルの先頭に移動する。 一般的"
136 "には、他の関数を使う前にこの関数を呼び出しておくと良いだろう。"
137
138 #. type: Plain text
139 #: build/C/man3/getutent.3:73
140 msgid ""
141 "B<endutent>()  closes the utmp file.  It should be called when the user code "
142 "is done accessing the file with the other functions."
143 msgstr ""
144 "B<endutent>()  は utmp ファイルをクローズする。ユーザーコードで 他の関数を"
145 "使ってこのファイルにアクセスを行った時は、最後にこの関数を 呼び出すべきであ"
146 "る。"
147
148 #. type: Plain text
149 #: build/C/man3/getutent.3:80
150 msgid ""
151 "B<getutent>()  reads a line from the current file position in the utmp "
152 "file.  It returns a pointer to a structure containing the fields of the "
153 "line.  The definition of this structure is shown in B<utmp>(5)."
154 msgstr ""
155 "B<getutent>()  は utmp ファイルの現在のファイル位置から一行読み込み、 行の各"
156 "フィールドの内容を収めた構造体へのポインタを返す。 この構造体の定義は B<utmp>"
157 "(5)  に書かれている。"
158
159 #. type: Plain text
160 #: build/C/man3/getutent.3:96
161 msgid ""
162 "B<getutid>()  searches forward from the current file position in the utmp "
163 "file based upon I<ut>.  If I<ut-E<gt>ut_type> is one of B<RUN_LVL>, "
164 "B<BOOT_TIME>, B<NEW_TIME>, or B<OLD_TIME>, B<getutid>()  will find the first "
165 "entry whose I<ut_type> field matches I<ut-E<gt>ut_type>.  If I<ut-"
166 "E<gt>ut_type> is one of B<INIT_PROCESS>, B<LOGIN_PROCESS>, B<USER_PROCESS>, "
167 "or B<DEAD_PROCESS>, B<getutid>()  will find the first entry whose I<ut_id> "
168 "field matches I<ut-E<gt>ut_id>."
169 msgstr ""
170 "B<getutid>()  は、 utmp ファイル中の現在の位置から順方向 (末尾に向かう方向) "
171 "へ I<ut> に基く検索を行う。 I<ut>-E<gt>ut_type が B<RUN_LVL>, B<BOOT_TIME>, "
172 "B<NEW_TIME>, B<OLD_TIME> の いずれかなら、 B<getutid>()  は B<ut_type> フィー"
173 "ルドが I<ut>-E<gt>ut_type に一致する最初のエントリを探す。 I<ut>-"
174 "E<gt>ut_type が B<INIT_PROCESS>, B<LOGIN_PROCESS>, B<USER_PROCESS>, "
175 "B<DEAD_PROCESS> のいずれかなら、 B<getutid>()  は I<ut_id> フィールドが "
176 "I<ut>-E<gt>ut_id に 一致する最初のエントリを探す。"
177
178 #. type: Plain text
179 #: build/C/man3/getutent.3:106
180 msgid ""
181 "B<getutline>()  searches forward from the current file position in the utmp "
182 "file.  It scans entries whose I<ut_type> is B<USER_PROCESS> or "
183 "B<LOGIN_PROCESS> and returns the first one whose I<ut_line> field matches "
184 "I<ut-E<gt>ut_line>."
185 msgstr ""
186 "B<getutline>()  は、 utmp ファイルの現在の位置から末尾に向かって検索を行う。 "
187 "I<ut_type> が B<USER_PROCESS> または B<LOGIN_PROCESS> で、 I<ut_line> フィー"
188 "ルドが I<ut>-E<gt>ut_line にマッチする最初の行を返す。"
189
190 #. type: Plain text
191 #: build/C/man3/getutent.3:118
192 msgid ""
193 "B<pututline>()  writes the I<utmp> structure I<ut> into the utmp file.  It "
194 "uses B<getutid>()  to search for the proper place in the file to insert the "
195 "new entry.  If it cannot find an appropriate slot for I<ut>, B<pututline>()  "
196 "will append the new entry to the end of the file."
197 msgstr ""
198 "B<pututline>()  は I<utmp> 構造体 I<ut> の内容を utmp ファイルに書き出す。 "
199 "B<pututline>()  は B<getutid>()  を用いて、新たなエントリを 挿入するのにふさ"
200 "わしい場所を探す。 I<ut> を挿入するふさわしい場所が 見つからない場合は、新た"
201 "なエントリをファイルの末尾に追加する。"
202
203 #. type: SH
204 #: build/C/man3/getutent.3:118 build/C/man3/getutmp.3:51
205 #: build/C/man3/login.3:88
206 #, no-wrap
207 msgid "RETURN VALUE"
208 msgstr "返り値"
209
210 #. type: Plain text
211 #: build/C/man3/getutent.3:127
212 msgid ""
213 "B<getutent>(), B<getutid>(), and B<getutline>()  return a pointer to a "
214 "I<struct utmp> on success, and NULL on failure (which includes the \"record "
215 "not found\" case).  This I<struct utmp> is allocated in static storage, and "
216 "may be overwritten by subsequent calls."
217 msgstr ""
218 "B<getutent>(), B<getutid>(), B<getutline>()  は、成功すると I<struct utmp> へ"
219 "のポインタを返す。 失敗すると NULL を返す (レコードが見つからなかった場合も失"
220 "敗となる)。 この I<struct utmp> は静的な記憶領域に確保され、次にこれらの関数"
221 "を 呼び出した際に上書きされるかもしれない。"
222
223 #. type: Plain text
224 #: build/C/man3/getutent.3:133
225 msgid "On success B<pututline>()  returns I<ut>; on failure, it returns NULL."
226 msgstr "B<pututline>()  は成功すると I<ut> を返す。失敗すると NULL を返す。"
227
228 #. type: Plain text
229 #: build/C/man3/getutent.3:136
230 msgid ""
231 "B<utmpname>()  returns 0 if the new name was successfully stored, or -1 on "
232 "failure."
233 msgstr ""
234 "B<utmpname>()  は、新しい名前の格納に成功すると 0 を返し、失敗すると -1 を返"
235 "す。"
236
237 #. type: SH
238 #: build/C/man3/getutent.3:136
239 #, no-wrap
240 msgid "ERRORS"
241 msgstr "エラー"
242
243 #. type: TP
244 #: build/C/man3/getutent.3:137
245 #, no-wrap
246 msgid "B<ENOMEM>"
247 msgstr "B<ENOMEM>"
248
249 #. type: Plain text
250 #: build/C/man3/getutent.3:140
251 msgid "Out of memory."
252 msgstr "メモリ不足。"
253
254 #. type: TP
255 #: build/C/man3/getutent.3:140
256 #, no-wrap
257 msgid "B<ESRCH>"
258 msgstr "B<ESRCH>"
259
260 #. type: Plain text
261 #: build/C/man3/getutent.3:143
262 msgid "Record not found."
263 msgstr "レコードが見つからなかった。"
264
265 #. type: Plain text
266 #: build/C/man3/getutent.3:150
267 msgid ""
268 "B<setutent>(), B<pututline>(), and the B<getut* ()> functions can also fail "
269 "for the reasons described in B<open>(2)."
270 msgstr ""
271 "関数 B<setutent>(), B<pututline>(), B<getut*>()  は B<open>(2)  に書かれてい"
272 "る理由でも失敗することがある。"
273
274 #. type: SH
275 #: build/C/man3/getutent.3:150 build/C/man3/login.3:93
276 #: build/C/man3/updwtmp.3:54 build/C/man5/utmp.5:224
277 #, no-wrap
278 msgid "FILES"
279 msgstr "ファイル"
280
281 #. type: Plain text
282 #: build/C/man3/getutent.3:152
283 msgid "/var/run/utmp\tdatabase of currently logged-in users"
284 msgstr "/var/run/utmp 現在ログイン中のユーザーのデータベース"
285
286 #. type: Plain text
287 #: build/C/man3/getutent.3:154
288 msgid "/var/log/wtmp\tdatabase of past user logins"
289 msgstr "/var/log/wtmp 過去のユーザーログインのデータベース"
290
291 #. type: SH
292 #: build/C/man3/getutent.3:154 build/C/man3/getutmp.3:55
293 #: build/C/man3/login.3:106 build/C/man3/updwtmp.3:58 build/C/man5/utmp.5:228
294 #, no-wrap
295 msgid "CONFORMING TO"
296 msgstr "準拠"
297
298 #. type: Plain text
299 #: build/C/man3/getutent.3:156
300 msgid "XPG2, SVr4."
301 msgstr "XPG2, SVr4."
302
303 #. type: Plain text
304 #: build/C/man3/getutent.3:166
305 msgid ""
306 "In XPG2 and SVID 2 the function B<pututline>()  is documented to return "
307 "void, and that is what it does on many systems (AIX, HP-UX, Linux libc5).  "
308 "HP-UX introduces a new function B<_pututline>()  with the prototype given "
309 "above for B<pututline>()  (also found in Linux libc5)."
310 msgstr ""
311 "XPG2 と SVID 2 では、 B<pututline>()  関数は値を返さないとされており、 (AIX, "
312 "HP-UX, Linux libc5 などの) 多くのシステムではそうなっている。 HP-UX では、上"
313 "述の B<pututline>()  と同じプロトタイプを持つ 新しい関数 B<_pututline>()  が"
314 "導入されている (この関数は Linux libc5 にもある)。"
315
316 #. type: Plain text
317 #: build/C/man3/getutent.3:170
318 msgid ""
319 "All these functions are obsolete now on non-Linux systems.  POSIX.1-2001, "
320 "following SUSv1, does not have any of these functions, but instead uses"
321 msgstr ""
322 "現在では、Linux 以外のシステムでは、これらの関数は全て廃止されている。 SUSv1 "
323 "の後に出てきた POSIX.1-2001 では、もはやこれらの関数はなく、 代わりに以下のも"
324 "のを使う。"
325
326 #. type: Plain text
327 #: build/C/man3/getutent.3:172
328 msgid "B<#include E<lt>utmpx.hE<gt>>"
329 msgstr "B<#include E<lt>utmpx.hE<gt>>"
330
331 #. type: Plain text
332 #: build/C/man3/getutent.3:174
333 msgid "B<struct utmpx *getutxent(void);>"
334 msgstr "B<struct utmpx *getutxent(void);>"
335
336 #. type: Plain text
337 #: build/C/man3/getutent.3:176
338 msgid "B<struct utmpx *getutxid(const struct utmpx *);>"
339 msgstr "B<struct utmpx *getutxid(const struct utmpx *);>"
340
341 #. type: Plain text
342 #: build/C/man3/getutent.3:178
343 msgid "B<struct utmpx *getutxline(const struct utmpx *);>"
344 msgstr "B<struct utmpx *getutxline(const struct utmpx *);>"
345
346 #. type: Plain text
347 #: build/C/man3/getutent.3:180
348 msgid "B<struct utmpx *pututxline(const struct utmpx *);>"
349 msgstr "B<struct utmpx *pututxline(const struct utmpx *);>"
350
351 #. type: Plain text
352 #: build/C/man3/getutent.3:182
353 msgid "B<void setutxent(void);>"
354 msgstr "B<void setutxent(void);>"
355
356 #. type: Plain text
357 #: build/C/man3/getutent.3:184
358 msgid "B<void endutxent(void);>"
359 msgstr "B<void endutxent(void);>"
360
361 #. type: Plain text
362 #: build/C/man3/getutent.3:193
363 msgid ""
364 "These functions are provided by glibc, and perform the same task as their "
365 "equivalents without the \"x\", but use I<struct utmpx>, defined on Linux to "
366 "be the same as I<struct utmp>.  For completeness, glibc also provides "
367 "B<utmpxname>(), although this function is not specified by POSIX.1."
368 msgstr ""
369 "これらの関数は glibc により提供されており、 \"x\" がない関数と同じ処理を行う"
370 "が、 I<struct utmpx> を使用する。 Linux では、この構造体の定義は I<struct "
371 "utmp> と同じになっている。 完全を期すために、glibc では B<utmpxname>()  も提"
372 "供している。この関数は POSIX.1 では規定されていない。"
373
374 #. type: Plain text
375 #: build/C/man3/getutent.3:201
376 msgid ""
377 "On some other systems, the I<utmpx> structure is a superset of the I<utmp> "
378 "structure, with additional fields, and larger versions of the existing "
379 "fields, and parallel files are maintained, often I</var/*/utmpx> and I</var/"
380 "*/wtmpx>."
381 msgstr ""
382 "Linux 以外のシステムでは、 I<utmpx> 構造体は I<utmp> 構造体の上位集合 "
383 "(superset) になっていて、 追加のフィールドがあったり、既存のフィールドのサイ"
384 "ズが大きくなっていたり するものもある。複数のファイルが使用されている場合もあ"
385 "り、多くの場合 I</var/*/utmpx> と I</var/*/wtmpx> というファイルが使われる。"
386
387 #. type: Plain text
388 #: build/C/man3/getutent.3:209
389 #, fuzzy
390 #| msgid ""
391 #| "Linux glibc on the other hand does not use a parallel I<utmpx> file since "
392 #| "its I<utmp> structure is already large enough.  The \"x\" functions "
393 #| "listed above are just aliases for their counterparts without the \"x\" (e."
394 #| "g., B<getutxent>()  is an alias for B<gettutent>())."
395 msgid ""
396 "Linux glibc on the other hand does not use a parallel I<utmpx> file since "
397 "its I<utmp> structure is already large enough.  The \"x\" functions listed "
398 "above are just aliases for their counterparts without the \"x\" (e.g., "
399 "B<getutxent>()  is an alias for B<getutent>())."
400 msgstr ""
401 "一方、 Linux glibc では複数の I<utmpx> ファイル は使われていない。\n"
402 "I<utmp> 構造体が十分に大きいからである。\n"
403 "上記の名前に \"x\" が付いた関数は \"x\" が付いていない対応する関数の別名と\n"
404 "なっている (例えば I<getutxent>() は I<getutent>() の別名である)。"
405
406 #. type: SH
407 #: build/C/man3/getutent.3:209 build/C/man3/getutmp.3:58
408 #: build/C/man3/login.3:109 build/C/man3/updwtmp.3:71 build/C/man5/utmp.5:280
409 #, no-wrap
410 msgid "NOTES"
411 msgstr "注意"
412
413 #. type: SS
414 #: build/C/man3/getutent.3:210
415 #, fuzzy, no-wrap
416 #| msgid "Glibc Notes"
417 msgid "Glibc notes"
418 msgstr "glibc での注意"
419
420 #. type: Plain text
421 #: build/C/man3/getutent.3:213
422 msgid "The above functions are not thread-safe.  Glibc adds reentrant versions"
423 msgstr ""
424 "上記の関数群はスレッド・セーフではない。 glibc にはリエントラント版 "
425 "(reentrant) が追加されている。"
426
427 #. type: Plain text
428 #: build/C/man3/getutent.3:218
429 #, fuzzy, no-wrap
430 #| msgid ""
431 #| "B<#define _GNU_SOURCE>    /* or _SVID_SOURCE or _BSD_SOURCE;\n"
432 #| "\\&                          see B<feature_test_macros(7)> */\n"
433 #| "B<#include E<lt>utmp.hE<gt>>\n"
434 msgid ""
435 "B<#define _GNU_SOURCE>    /* or _SVID_SOURCE or _BSD_SOURCE;\n"
436 "\\&                          see B<feature_test_macros>(7) */\n"
437 "B<#include E<lt>utmp.hE<gt>>\n"
438 msgstr ""
439 "B<#define _GNU_SOURCE>    /* or _SVID_SOURCE or _BSD_SOURCE;\n"
440 "\\&                          B<feature_test_macros(7)> 参照 */\n"
441 "B<#include E<lt>utmp.hE<gt>>\n"
442
443 #. type: Plain text
444 #: build/C/man3/getutent.3:220
445 #, no-wrap
446 msgid "B<int getutent_r(struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
447 msgstr "B<int getutent_r(struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
448
449 #. type: Plain text
450 #: build/C/man3/getutent.3:223
451 #, no-wrap
452 msgid ""
453 "B<int getutid_r(struct utmp *>I<ut>B<,>\n"
454 "B<              struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
455 msgstr ""
456 "B<int getutid_r(struct utmp *>I<ut>B<,>\n"
457 "B<              struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
458
459 #. type: Plain text
460 #: build/C/man3/getutent.3:226
461 #, no-wrap
462 msgid ""
463 "B<int getutline_r(struct utmp *>I<ut>B<,>\n"
464 "B<                struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
465 msgstr ""
466 "B<int getutline_r(struct utmp *>I<ut>B<,>\n"
467 "B<                struct utmp *>I<ubuf>B<, struct utmp **>I<ubufp>B<);>\n"
468
469 #. type: Plain text
470 #: build/C/man3/getutent.3:238
471 msgid ""
472 "These functions are GNU extensions, analogs of the functions of the same "
473 "name without the _r suffix.  The I<ubuf> argument gives these functions a "
474 "place to store their result.  On success they return 0, and a pointer to the "
475 "result is written in I<*ubufp>.  On error these functions return -1.  There "
476 "are no utmpx equivalents of the above functions.  (POSIX.1 does not specify "
477 "such functions.)"
478 msgstr ""
479 "これらの関数は GNU での拡張であり、末尾の _r をとった名前の関数と 同様の機能"
480 "を持つ。 I<ubuf> パラメータは結果を格納する場所を指定する。 成功すると 0 を返"
481 "し、結果へのポインタを I<*ubufp> に書き込む。エラーの場合 -1 を返す。 上記の"
482 "関数に対応する utmpx 版は存在しない (POSIX.1 ではこれらの関数を規定されていな"
483 "い)。"
484
485 #. type: SH
486 #: build/C/man3/getutent.3:238
487 #, no-wrap
488 msgid "EXAMPLE"
489 msgstr "例"
490
491 #. type: Plain text
492 #: build/C/man3/getutent.3:246
493 msgid ""
494 "The following example adds and removes a utmp record, assuming it is run "
495 "from within a pseudo terminal.  For usage in a real application, you should "
496 "check the return values of B<getpwuid>(3)  and B<ttyname>(3)."
497 msgstr ""
498 "以下の例では、 utmp のレコードの追加・削除を行っている。このコードは、 擬似端"
499 "末 (pseudo terminal) から実行されることを想定している。 実際のアプリケーショ"
500 "ンでは B<getpwuid>(3)  と B<ttyname>(3)  の戻り値を検査するべきである。"
501
502 #. type: Plain text
503 #: build/C/man3/getutent.3:253
504 #, no-wrap
505 msgid ""
506 "#include E<lt>string.hE<gt>\n"
507 "#include E<lt>stdlib.hE<gt>\n"
508 "#include E<lt>pwd.hE<gt>\n"
509 "#include E<lt>unistd.hE<gt>\n"
510 "#include E<lt>utmp.hE<gt>\n"
511 msgstr ""
512 "#include E<lt>string.hE<gt>\n"
513 "#include E<lt>stdlib.hE<gt>\n"
514 "#include E<lt>pwd.hE<gt>\n"
515 "#include E<lt>unistd.hE<gt>\n"
516 "#include E<lt>utmp.hE<gt>\n"
517
518 #. type: Plain text
519 #: build/C/man3/getutent.3:258
520 #, no-wrap
521 msgid ""
522 "int\n"
523 "main(int argc, char *argv[])\n"
524 "{\n"
525 "    struct utmp entry;\n"
526 msgstr ""
527 "int\n"
528 "main(int argc, char *argv[])\n"
529 "{\n"
530 "    struct utmp entry;\n"
531
532 #. type: Plain text
533 #: build/C/man3/getutent.3:260
534 #, no-wrap
535 msgid "    system(\"echo before adding entry:;who\");\n"
536 msgstr "    system(\"echo before adding entry:;who\");\n"
537
538 #. type: Plain text
539 #: build/C/man3/getutent.3:272
540 #, no-wrap
541 msgid ""
542 "    entry.ut_type = USER_PROCESS;\n"
543 "    entry.ut_pid = getpid();\n"
544 "    strcpy(entry.ut_line, ttyname(STDIN_FILENO) + strlen(\"/dev/\"));\n"
545 "    /* only correct for ptys named /dev/tty[pqr][0-9a-z] */\n"
546 "    strcpy(entry.ut_id, ttyname(STDIN_FILENO) + strlen(\"/dev/tty\"));\n"
547 "    time(&entry.ut_time);\n"
548 "    strcpy(entry.ut_user, getpwuid(getuid())-E<gt>pw_name);\n"
549 "    memset(entry.ut_host, 0, UT_HOSTSIZE);\n"
550 "    entry.ut_addr = 0;\n"
551 "    setutent();\n"
552 "    pututline(&entry);\n"
553 msgstr ""
554 "    entry.ut_type = USER_PROCESS;\n"
555 "    entry.ut_pid = getpid();\n"
556 "    strcpy(entry.ut_line, ttyname(STDIN_FILENO) + strlen(\"/dev/\"));\n"
557 "    /* only correct for ptys named /dev/tty[pqr][0-9a-z] */\n"
558 "    strcpy(entry.ut_id, ttyname(STDIN_FILENO) + strlen(\"/dev/tty\"));\n"
559 "    time(&entry.ut_time);\n"
560 "    strcpy(entry.ut_user, getpwuid(getuid())-E<gt>pw_name);\n"
561 "    memset(entry.ut_host, 0, UT_HOSTSIZE);\n"
562 "    entry.ut_addr = 0;\n"
563 "    setutent();\n"
564 "    pututline(&entry);\n"
565
566 #. type: Plain text
567 #: build/C/man3/getutent.3:274
568 #, no-wrap
569 msgid "    system(\"echo after adding entry:;who\");\n"
570 msgstr "    system(\"echo after adding entry:;who\");\n"
571
572 #. type: Plain text
573 #: build/C/man3/getutent.3:281
574 #, no-wrap
575 msgid ""
576 "    entry.ut_type = DEAD_PROCESS;\n"
577 "    memset(entry.ut_line, 0, UT_LINESIZE);\n"
578 "    entry.ut_time = 0;\n"
579 "    memset(entry.ut_user, 0, UT_NAMESIZE);\n"
580 "    setutent();\n"
581 "    pututline(&entry);\n"
582 msgstr ""
583 "    entry.ut_type = DEAD_PROCESS;\n"
584 "    memset(entry.ut_line, 0, UT_LINESIZE);\n"
585 "    entry.ut_time = 0;\n"
586 "    memset(entry.ut_user, 0, UT_NAMESIZE);\n"
587 "    setutent();\n"
588 "    pututline(&entry);\n"
589
590 #. type: Plain text
591 #: build/C/man3/getutent.3:283
592 #, no-wrap
593 msgid "    system(\"echo after removing entry:;who\");\n"
594 msgstr "    system(\"echo after removing entry:;who\");\n"
595
596 #. type: Plain text
597 #: build/C/man3/getutent.3:287
598 #, no-wrap
599 msgid ""
600 "    endutent();\n"
601 "    exit(EXIT_SUCCESS);\n"
602 "}\n"
603 msgstr ""
604 "    endutent();\n"
605 "    exit(EXIT_SUCCESS);\n"
606 "}\n"
607
608 #. type: SH
609 #: build/C/man3/getutent.3:288 build/C/man3/getutmp.3:69
610 #: build/C/man3/login.3:124 build/C/man3/updwtmp.3:87 build/C/man5/utmp.5:338
611 #, no-wrap
612 msgid "SEE ALSO"
613 msgstr "関連項目"
614
615 #. type: Plain text
616 #: build/C/man3/getutent.3:291
617 msgid "B<getutmp>(3), B<utmp>(5)"
618 msgstr "B<getutmp>(3), B<utmp>(5)"
619
620 #. type: SH
621 #: build/C/man3/getutent.3:291 build/C/man3/getutmp.3:72
622 #: build/C/man3/login.3:127 build/C/man3/updwtmp.3:90 build/C/man5/utmp.5:352
623 #, no-wrap
624 msgid "COLOPHON"
625 msgstr "この文書について"
626
627 #. type: Plain text
628 #: build/C/man3/getutent.3:298 build/C/man3/getutmp.3:79
629 #: build/C/man3/login.3:134 build/C/man3/updwtmp.3:97 build/C/man5/utmp.5:359
630 #, fuzzy
631 #| msgid ""
632 #| "This page is part of release 3.41 of the Linux I<man-pages> project.  A "
633 #| "description of the project, and information about reporting bugs, can be "
634 #| "found at http://www.kernel.org/doc/man-pages/."
635 msgid ""
636 "This page is part of release 3.50 of the Linux I<man-pages> project.  A "
637 "description of the project, and information about reporting bugs, can be "
638 "found at http://www.kernel.org/doc/man-pages/."
639 msgstr ""
640 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.41 の一部\n"
641 "である。プロジェクトの説明とバグ報告に関する情報は\n"
642 "http://www.kernel.org/doc/man-pages/ に書かれている。"
643
644 #. type: TH
645 #: build/C/man3/getutmp.3:26
646 #, no-wrap
647 msgid "GETUTMP"
648 msgstr "GETUTMP"
649
650 #. type: TH
651 #: build/C/man3/getutmp.3:26
652 #, no-wrap
653 msgid "2010-09-10"
654 msgstr "2010-09-10"
655
656 #. type: TH
657 #: build/C/man3/getutmp.3:26 build/C/man5/utmp.5:30
658 #, no-wrap
659 msgid "Linux"
660 msgstr "Linux"
661
662 #. type: Plain text
663 #: build/C/man3/getutmp.3:29
664 msgid "getutmp, getutmpx - copy utmp structure to utmpx, and vice versa"
665 msgstr "getutmp, getutmpx - utmp 構造体から utmpx 構造体、その逆のコピーを行う"
666
667 #. type: Plain text
668 #: build/C/man3/getutmp.3:33
669 #, no-wrap
670 msgid ""
671 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
672 "B<#include E<lt>utmpx.hE<gt>>\n"
673 msgstr ""
674 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
675 "B<#include E<lt>utmpx.hE<gt>>\n"
676
677 #. type: Plain text
678 #: build/C/man3/getutmp.3:36
679 #, no-wrap
680 msgid ""
681 "B< void getutmp(const struct utmpx *>I<ux>B<, struct utmp *>I<u>B<);>\n"
682 "B< void getutmpx(const struct utmp *>I<u>B<, struct utmpx *>I<ux>B<);>\n"
683 msgstr ""
684 "B< void getutmp(const struct utmpx *>I<ux>B<, struct utmp *>I<u>B<);>\n"
685 "B< void getutmpx(const struct utmp *>I<u>B<, struct utmpx *>I<ux>B<);>\n"
686
687 #. type: Plain text
688 #: build/C/man3/getutmp.3:51
689 msgid ""
690 "The B<getutmp>()  function copies the fields of the I<utmpx> structure "
691 "pointed to by I<ux> to the corresponding fields of the I<utmp> structure "
692 "pointed to by I<u>.  The B<getutmpx>()  function performs the converse "
693 "operation."
694 msgstr ""
695 "B<getutmp>() 関数は、 I<ux> が指す I<utmpx> 構造体の各フィールドを、\n"
696 "I<u> が指す I<utmp> 構造体の対応するフィールドにコピーする。\n"
697 "B<getutmpx>() 関数は逆の操作を行う。"
698
699 #. type: Plain text
700 #: build/C/man3/getutmp.3:53
701 msgid "These functions do not return a value."
702 msgstr "これらの関数は値を返さない。"
703
704 #. type: SH
705 #: build/C/man3/getutmp.3:53
706 #, no-wrap
707 msgid "VERSIONS"
708 msgstr "バージョン"
709
710 #. type: Plain text
711 #: build/C/man3/getutmp.3:55
712 msgid "These functions first appeared in glibc in version 2.1.1."
713 msgstr "これらの関数は glibc バージョン 2.1.1 で初めて登場した。"
714
715 #. type: Plain text
716 #: build/C/man3/getutmp.3:58
717 msgid ""
718 "These functions are nonstandard, but appear on a few other systems, such as "
719 "Solaris and NetBSD."
720 msgstr ""
721 "これらの関数は非標準である。\n"
722 "Linux 以外にも、これらの関数が存在するシステムもいくつかある\n"
723 "(Solaris や NetBSD など)。"
724
725 #.  e.g., on Solaris, the utmpx structure is rather larger than utmp.
726 #. type: Plain text
727 #: build/C/man3/getutmp.3:69
728 msgid ""
729 "These functions exist primarily for compatibility with other systems where "
730 "the I<utmp> and I<utmpx> structures contain different fields, or the size of "
731 "corresponding fields differs.  On Linux, the two structures contain the same "
732 "fields, and the fields have the same sizes."
733 msgstr ""
734 "これらの関数が存在する一番の目的は、\n"
735 "I<utmp> 構造体と I<utmpx> 構造体が異なるフィールドを持たり、\n"
736 "対応するフィールドの大きさが異なっている、他のシステムとの\n"
737 "互換性のためである。\n"
738 "Linux では、これらの構造体は同じフィールドを持っており、\n"
739 "各フィールドのサイズも同じである。"
740
741 #. type: Plain text
742 #: build/C/man3/getutmp.3:72 build/C/man3/login.3:127
743 msgid "B<getutent>(3), B<utmp>(5)"
744 msgstr "B<getutent>(3), B<utmp>(5)"
745
746 #. type: TH
747 #: build/C/man3/login.3:25
748 #, no-wrap
749 msgid "LOGIN"
750 msgstr "LOGIN"
751
752 #. type: TH
753 #: build/C/man3/login.3:25
754 #, no-wrap
755 msgid "2004-05-06"
756 msgstr "2004-05-06"
757
758 #. type: TH
759 #: build/C/man3/login.3:25 build/C/man3/updwtmp.3:29
760 #, no-wrap
761 msgid "GNU"
762 msgstr "GNU"
763
764 #. type: Plain text
765 #: build/C/man3/login.3:28
766 msgid "login, logout - write utmp and wtmp entries"
767 msgstr "login, logout - utmp と wtmp エントリを書き込む"
768
769 #. type: Plain text
770 #: build/C/man3/login.3:32
771 msgid "B<void login(const struct utmp *>I<ut>B<);>"
772 msgstr "B<void login(const struct utmp *>I<ut>B<);>"
773
774 #. type: Plain text
775 #: build/C/man3/login.3:34
776 msgid "B<int logout(const char *>I<ut_line>B<);>"
777 msgstr "B<int logout(const char *>I<ut_line>B<);>"
778
779 #. type: Plain text
780 #: build/C/man3/login.3:36
781 msgid "Link with I<-lutil>."
782 msgstr "I<-lutil> でリンクする。"
783
784 #. type: Plain text
785 #: build/C/man3/login.3:41
786 msgid ""
787 "The utmp file records who is currently using the system.  The wtmp file "
788 "records all logins and logouts.  See B<utmp>(5)."
789 msgstr ""
790 "utmp ファイルは現在システムを使用しているユーザを記録する。 wtmp ファイルはす"
791 "べてのログインとログアウトを記録する。 B<utmp>(5)  を参照すること。"
792
793 #. type: Plain text
794 #: build/C/man3/login.3:47
795 msgid ""
796 "The function B<login>()  takes the supplied I<struct utmp>, I<ut>, and "
797 "writes it to both the utmp and the wtmp file."
798 msgstr ""
799 "関数 B<login>()  は与えられた I<struct utmp> I<ut> を utmp と wtmp ファイルの"
800 "両方に書き込む。"
801
802 #. type: Plain text
803 #: build/C/man3/login.3:51
804 msgid "The function B<logout>()  clears the entry in the utmp file again."
805 msgstr "関数 B<logout>()  は utmp ファイルにあるエントリをクリアする。"
806
807 #. type: SS
808 #: build/C/man3/login.3:51
809 #, fuzzy, no-wrap
810 #| msgid "GNU Details"
811 msgid "GNU details"
812 msgstr "GNU 版の詳細"
813
814 #. type: Plain text
815 #: build/C/man3/login.3:72
816 #, fuzzy
817 #| msgid ""
818 #| "More precisely, B<login>()  takes the argument I<ut> struct, fills the "
819 #| "field I<ut-E<gt>ut_type> (if there is such a field) with the value "
820 #| "B<USER_PROCESS>, and fills the field I<ut-E<gt>ut_pid> (if there is such "
821 #| "a field) with the process ID of the calling process.  Then it tries to "
822 #| "fill the field I<ut-E<gt>ut_line>.  It takes the first of I<stdin>, "
823 #| "I<stdout>, I<stderr> that is a tty, and stores the corresponding pathname "
824 #| "minus a possible leading I</dev/> into this field, and then writes the "
825 #| "struct to the utmp file.  On the other hand, if no tty name was found, "
826 #| "this field is filled with \"???\" and the struct is not written to the "
827 #| "utmp file.  After this, the struct is written to the wtmp file."
828 msgid ""
829 "More precisely, B<login>()  takes the argument I<ut> struct, fills the field "
830 "I<ut-E<gt>ut_type> (if there is such a field) with the value "
831 "B<USER_PROCESS>, and fills the field I<ut-E<gt>ut_pid> (if there is such a "
832 "field) with the process ID of the calling process.  Then it tries to fill "
833 "the field I<ut-E<gt>ut_line>.  It takes the first of I<stdin>, I<stdout>, "
834 "I<stderr> that is a terminal, and stores the corresponding pathname minus a "
835 "possible leading I</dev/> into this field, and then writes the struct to the "
836 "utmp file.  On the other hand, if no terminal name was found, this field is "
837 "filled with \"???\" and the struct is not written to the utmp file.  After "
838 "this, the struct is written to the wtmp file."
839 msgstr ""
840 "より正確には、 B<login>()  は引き数 I<ut> 構造体をとり、(もし存在するならば) "
841 "フィールド I<ut-E<gt>ut_type> を B<USER_PROCESS> という値にし、(もし存在する"
842 "ならば) フィールド I<ut-E<gt>ut_pid> を呼び出し元プロセスのプロセス ID の値に"
843 "する。 次にフィールド I<ut-E<gt>ut_line> の値を設定しようとする。 この関数"
844 "は、標準入力・標準出力・標準エラー出力の中から 端末 (tty) である最初のものを"
845 "とり、 対応するパス名から先頭の I</dev/> を引いたものを このフィールドに格納"
846 "して、この構造体を utmp ファイルに書き込む。 一方、端末名が見つからない場合"
847 "は、このフィールドは \"???\" とされて、 この構造体は utmp ファイルに書き込ま"
848 "れない。 その後にこの構造体は wtmp ファイルに書き込まれる。"
849
850 #. type: Plain text
851 #: build/C/man3/login.3:88
852 msgid ""
853 "The B<logout>()  function searches the utmp file for an entry matching the "
854 "I<ut_line> argument.  If a record is found, it is updated by zeroing out the "
855 "I<ut_name> and I<ut_host> fields, updating the I<ut_tv> timestamp field and "
856 "setting I<ut_type> (if there is such a field) to B<DEAD_PROCESS>."
857 msgstr ""
858 "B<logout>()  関数は utmp ファイルから I<ut_line> 引き数にマッチするエントリを"
859 "探す。 レコードが見つかった場合、 I<ut_name> と I<ut_host> フィールドをクリア"
860 "して、 I<ut_tv> タイムスタンプフィールドを更新し、 (もし存在するならば)  "
861 "I<ut_type> フィールドを B<DEAD_PROCESS> に更新する。"
862
863 #. type: Plain text
864 #: build/C/man3/login.3:93
865 msgid ""
866 "The B<logout>()  function returns 1 if the entry was successfully written to "
867 "the database, or 0 if an error occurred."
868 msgstr ""
869 "エントリをデータベースに書き込むのに成功した場合、 B<logout>()  関数は 1 を返"
870 "す。 またエラーが起こった場合、0 を返す。"
871
872 #. type: TP
873 #: build/C/man3/login.3:94
874 #, no-wrap
875 msgid "I</var/run/utmp>"
876 msgstr "I</var/run/utmp>"
877
878 #. type: Plain text
879 #: build/C/man3/login.3:100
880 msgid ""
881 "user accounting database, configured through B<_PATH_UTMP> in I<E<lt>paths."
882 "hE<gt>>"
883 msgstr ""
884 "ユーザアカウントデータベース。 I<E<lt>paths.hE<gt>> における B<_PATH_UTMP> で"
885 "設定されている。"
886
887 #. type: TP
888 #: build/C/man3/login.3:100 build/C/man3/updwtmp.3:55
889 #, no-wrap
890 msgid "I</var/log/wtmp>"
891 msgstr "I</var/log/wtmp>"
892
893 #. type: Plain text
894 #: build/C/man3/login.3:106
895 msgid ""
896 "user accounting log file, configured through B<_PATH_WTMP> in I<E<lt>paths."
897 "hE<gt>>"
898 msgstr ""
899 "ユーザアカウントログファイル。 I<E<lt>paths.hE<gt>> における B<_PATH_WTMP> で"
900 "設定されている。"
901
902 #. type: Plain text
903 #: build/C/man3/login.3:109
904 msgid "Not in POSIX.1-2001.  Present on the BSDs."
905 msgstr "POSIX.1-2001 にはない。 BSD 系に存在する。"
906
907 #. type: Plain text
908 #: build/C/man3/login.3:124
909 msgid ""
910 "Note that the member I<ut_user> of I<struct utmp> is called I<ut_name> in "
911 "BSD.  Therefore, I<ut_name> is defined as an alias for I<ut_user> in "
912 "I<E<lt>utmp.hE<gt>>."
913 msgstr ""
914 "I<struct utmp> のメンバ I<ut_user> は、BSD では I<ut_name> という名前である点"
915 "に注意すること。 そのため I<ut_name> は I<E<lt>utmp.hE<gt>> において "
916 "I<ut_user> のエイリアスとして定義されている。"
917
918 #. type: TH
919 #: build/C/man3/updwtmp.3:29
920 #, no-wrap
921 msgid "UPDWTMP"
922 msgstr "UPDWTMP"
923
924 #. type: TH
925 #: build/C/man3/updwtmp.3:29
926 #, no-wrap
927 msgid "2008-07-02"
928 msgstr "2008-07-02"
929
930 #. type: Plain text
931 #: build/C/man3/updwtmp.3:32
932 msgid "updwtmp, logwtmp - append an entry to the wtmp file"
933 msgstr "updwtmp, logwtmp - wtmp ファイルにエントリを追加する"
934
935 #. type: Plain text
936 #: build/C/man3/updwtmp.3:35
937 #, no-wrap
938 msgid "B<#include E<lt>utmp.hE<gt>>\n"
939 msgstr "B<#include E<lt>utmp.hE<gt>>\n"
940
941 #. type: Plain text
942 #: build/C/man3/updwtmp.3:37
943 #, no-wrap
944 msgid "B<void updwtmp(const char *>I<wtmp_file>B<, const struct utmp *>I<ut>B<);>\n"
945 msgstr "B<void updwtmp(const char *>I<wtmp_file>B<, const struct utmp *>I<ut>B<);>\n"
946
947 #. type: Plain text
948 #: build/C/man3/updwtmp.3:40
949 #, no-wrap
950 msgid "B<void logwtmp(const char *>I<line>B<, const char *>I<name>B<, const char *>I<host>B<);>\n"
951 msgstr "B<void logwtmp(const char *>I<line>B<, const char *>I<name>B<, const char *>I<host>B<);>\n"
952
953 #. type: Plain text
954 #: build/C/man3/updwtmp.3:46
955 msgid "B<updwtmp>()  appends the utmp structure I<ut> to the wtmp file."
956 msgstr "B<updwtmp>()  は、utmp 構造体 I<ut> を wtmp ファイルに追加する。"
957
958 #. type: Plain text
959 #: build/C/man3/updwtmp.3:54
960 msgid ""
961 "B<logwtmp>()  constructs a utmp structure using I<line>, I<name>, I<host>, "
962 "current time and current process ID.  Then it calls B<updwtmp>()  to append "
963 "the structure to the wtmp file."
964 msgstr ""
965 "B<logwtmp>()  は、 I<line>, I<name>, I<host>, 現在時刻、現プロセスID から "
966 "utmp 構造体を作り、 B<updwtmp>()  を呼び出してその構造体を wtmp ファイルに追"
967 "加する。"
968
969 #. type: Plain text
970 #: build/C/man3/updwtmp.3:58
971 msgid "database of past user logins"
972 msgstr "ユーザログインの履歴データベース"
973
974 #. type: Plain text
975 #: build/C/man3/updwtmp.3:61
976 msgid ""
977 "Not in POSIX.1-2001.  Present on Solaris, NetBSD, and perhaps other systems."
978 msgstr ""
979 "POSIX.1-2001 にはない。 Solaris, NetBSD に存在し、おそらく他のシステムにもあ"
980 "るだろう。"
981
982 #. type: SH
983 #: build/C/man3/updwtmp.3:61
984 #, no-wrap
985 msgid "AVAILABILITY"
986 msgstr "利用可能な環境"
987
988 #. type: Plain text
989 #: build/C/man3/updwtmp.3:71
990 msgid ""
991 "Both functions are available under glibc2, but not under libc5.  However, "
992 "B<logwtmp>()  used to occur in the old libbsd.  These days, the B<logwtmp>"
993 "()  function is included in libutil.  (Hence you'll need to add I<-lutil> to "
994 "your compiler command line to get it.)"
995 msgstr ""
996 "glibc2 の下ではどちらの関数も利用可能である。 libc5 の下ではどちらも使えない"
997 "が、 B<logwtmp>()  は古い libbsd にあった。 最近では、 B<logwtmp>()  関数は "
998 "libutil に含まれている (したがって、この関数を使うためにはコンパイラのコマン"
999 "ドラインに I<-lutil> を追加する必要がある)。"
1000
1001 #. type: Plain text
1002 #: build/C/man3/updwtmp.3:75
1003 msgid ""
1004 "For consistency with the other \"utmpx\" functions (see B<getutxent>(3)), "
1005 "glibc provides (since version 2.1):"
1006 msgstr ""
1007 "他の \"utmpx\" 関数群 (B<getutxent>(3)  参照) との一貫性のために、glibc (バー"
1008 "ジョン 2.1 以降) は以下の関数を 提供している:"
1009
1010 #. type: Plain text
1011 #: build/C/man3/updwtmp.3:78
1012 #, no-wrap
1013 msgid "B<#include E<lt>utmpx.hE<gt>>\n"
1014 msgstr "B<#include E<lt>utmpx.hE<gt>>\n"
1015
1016 #. type: Plain text
1017 #: build/C/man3/updwtmp.3:80
1018 #, no-wrap
1019 msgid "B<void updwtmpx (const char *>I<wtmpx_file>B<, const struct utmpx *>I<utx>B<);>\n"
1020 msgstr "B<void updwtmpx (const char *>I<wtmpx_file>B<, const struct utmpx *>I<utx>B<);>\n"
1021
1022 #. type: Plain text
1023 #: build/C/man3/updwtmp.3:87
1024 msgid ""
1025 "This function performs the same task as B<updwtmp>(), but differs in that it "
1026 "takes a I<utmpx> structure as its last argument."
1027 msgstr ""
1028 "この関数は B<updwtmp>()  と同じ作業を行うが、最後の引き数として I<utmpx> 構造"
1029 "体を取るところが異なる。"
1030
1031 #. type: Plain text
1032 #: build/C/man3/updwtmp.3:90
1033 msgid "B<getutxent>(3), B<wtmp>(5)"
1034 msgstr "B<getutxent>(3), B<wtmp>(5)"
1035
1036 #. type: TH
1037 #: build/C/man5/utmp.5:30
1038 #, no-wrap
1039 msgid "UTMP"
1040 msgstr "UTMP"
1041
1042 #. type: TH
1043 #: build/C/man5/utmp.5:30
1044 #, no-wrap
1045 msgid "2013-02-11"
1046 msgstr ""
1047
1048 #. type: Plain text
1049 #: build/C/man5/utmp.5:33
1050 msgid "utmp, wtmp - login records"
1051 msgstr "utmp, wtmp - ログイン記録"
1052
1053 #. type: Plain text
1054 #: build/C/man5/utmp.5:42
1055 msgid ""
1056 "The I<utmp> file allows one to discover information about who is currently "
1057 "using the system.  There may be more users currently using the system, "
1058 "because not all programs use utmp logging."
1059 msgstr ""
1060 "I<utmp> ファイルを見ることで、現在誰がシステムを使っているかという情報 が得ら"
1061 "れる。ただすべてのプログラムが utmp ファイルを 更新しているわけではないので、"
1062 "実際にはそれ以上のユーザーが システムを使っている可能性がある。"
1063
1064 #. type: Plain text
1065 #: build/C/man5/utmp.5:52
1066 msgid ""
1067 "B<Warning:> I<utmp> must not be writable by the user class \"other\", "
1068 "because many system programs (foolishly)  depend on its integrity.  You risk "
1069 "faked system logfiles and modifications of system files if you leave I<utmp> "
1070 "writable to any user other than the owner and group owner of the file."
1071 msgstr ""
1072 "B<警告:> (愚かにも) 多くのシステムプログラムがその整合性に依存しているので、 "
1073 "I<utmp> ファイルは \"other\" に分類されるユーザに対して 書き込み可能にしては"
1074 "ならない。 ファイルの所有者とグループオーナー以外のユーザに対して I<utmp> "
1075 "ファイルを書き込み可能な状態にしておくと、 システムのログファイルを偽造された"
1076 "り、システムファイルの 改ざんを受けるといったリスクを犯すことになる。"
1077
1078 #. type: Plain text
1079 #: build/C/man5/utmp.5:60
1080 msgid ""
1081 "The file is a sequence of I<utmp> structures, declared as follows in "
1082 "I<E<lt>utmp.hE<gt>> (note that this is only one of several definitions "
1083 "around; details depend on the version of libc):"
1084 msgstr ""
1085 "このファイルは I<utmp> 構造体の繰り返しで構成される。 この構造体は "
1086 "I<E<lt>utmp.hE<gt>> で以下のように定義されている (ここに記述してあるのは幾つ"
1087 "かの大まかな定義のみで、 詳細は libc のバージョンにより変わることに注意が必要"
1088 "である)。"
1089
1090 #. type: Plain text
1091 #: build/C/man5/utmp.5:64
1092 #, no-wrap
1093 msgid "/* Values for ut_type field, below */\n"
1094 msgstr "/* Values for ut_type field, below */\n"
1095
1096 #. type: Plain text
1097 #: build/C/man5/utmp.5:79
1098 #, no-wrap
1099 msgid ""
1100 "#define EMPTY         0 /* Record does not contain valid info\n"
1101 "                           (formerly known as UT_UNKNOWN on Linux) */\n"
1102 "#define RUN_LVL       1 /* Change in system run-level (see\n"
1103 "                           B<init>(8)) */\n"
1104 "#define BOOT_TIME     2 /* Time of system boot (in I<ut_tv>) */\n"
1105 "#define NEW_TIME      3 /* Time after system clock change\n"
1106 "                           (in I<ut_tv>) */\n"
1107 "#define OLD_TIME      4 /* Time before system clock change\n"
1108 "                           (in I<ut_tv>) */\n"
1109 "#define INIT_PROCESS  5 /* Process spawned by B<init>(8) */\n"
1110 "#define LOGIN_PROCESS 6 /* Session leader process for user login */\n"
1111 "#define USER_PROCESS  7 /* Normal process */\n"
1112 "#define DEAD_PROCESS  8 /* Terminated process */\n"
1113 "#define ACCOUNTING    9 /* Not implemented */\n"
1114 msgstr ""
1115 "#define EMPTY         0 /* Record does not contain valid info\n"
1116 "                           (formerly known as UT_UNKNOWN on Linux) */\n"
1117 "#define RUN_LVL       1 /* Change in system run-level (see\n"
1118 "                           B<init>(8)) */\n"
1119 "#define BOOT_TIME     2 /* Time of system boot (in I<ut_tv>) */\n"
1120 "#define NEW_TIME      3 /* Time after system clock change\n"
1121 "                           (in I<ut_tv>) */\n"
1122 "#define OLD_TIME      4 /* Time before system clock change\n"
1123 "                           (in I<ut_tv>) */\n"
1124 "#define INIT_PROCESS  5 /* Process spawned by B<init>(8) */\n"
1125 "#define LOGIN_PROCESS 6 /* Session leader process for user login */\n"
1126 "#define USER_PROCESS  7 /* Normal process */\n"
1127 "#define DEAD_PROCESS  8 /* Terminated process */\n"
1128 "#define ACCOUNTING    9 /* Not implemented */\n"
1129
1130 #. type: Plain text
1131 #: build/C/man5/utmp.5:83
1132 #, no-wrap
1133 msgid ""
1134 "#define UT_LINESIZE      32\n"
1135 "#define UT_NAMESIZE      32\n"
1136 "#define UT_HOSTSIZE     256\n"
1137 msgstr ""
1138 "#define UT_LINESIZE      32\n"
1139 "#define UT_NAMESIZE      32\n"
1140 "#define UT_HOSTSIZE     256\n"
1141
1142 #. type: Plain text
1143 #: build/C/man5/utmp.5:88
1144 #, no-wrap
1145 msgid ""
1146 "struct exit_status {              /* Type for ut_exit, below */\n"
1147 "    short int e_termination;      /* Process termination status */\n"
1148 "    short int e_exit;             /* Process exit status */\n"
1149 "};\n"
1150 msgstr ""
1151 "struct exit_status {              /* Type for ut_exit, below */\n"
1152 "    short int e_termination;      /* Process termination status */\n"
1153 "    short int e_exit;             /* Process exit status */\n"
1154 "};\n"
1155
1156 #. type: Plain text
1157 #: build/C/man5/utmp.5:116
1158 #, no-wrap
1159 msgid ""
1160 "struct utmp {\n"
1161 "    short   ut_type;              /* Type of record */\n"
1162 "    pid_t   ut_pid;               /* PID of login process */\n"
1163 "    char    ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n"
1164 "    char    ut_id[4];             /* Terminal name suffix,\n"
1165 "                                     or inittab(5) ID */\n"
1166 "    char    ut_user[UT_NAMESIZE]; /* Username */\n"
1167 "    char    ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n"
1168 "                                     kernel version for run-level\n"
1169 "                                     messages */\n"
1170 "    struct  exit_status ut_exit;  /* Exit status of a process\n"
1171 "                                     marked as DEAD_PROCESS; not\n"
1172 "                                     used by Linux init(8) */\n"
1173 "    /* The ut_session and ut_tv fields must be the same size when\n"
1174 "       compiled 32- and 64-bit.  This allows data files and shared\n"
1175 "       memory to be shared between 32- and 64-bit applications. */\n"
1176 "#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
1177 "    int32_t ut_session;           /* Session ID (B<getsid>(2)),\n"
1178 "                                     used for windowing */\n"
1179 "    struct {\n"
1180 "        int32_t tv_sec;           /* Seconds */\n"
1181 "        int32_t tv_usec;          /* Microseconds */\n"
1182 "    } ut_tv;                      /* Time entry was made */\n"
1183 "#else\n"
1184 "     long   ut_session;           /* Session ID */\n"
1185 "     struct timeval ut_tv;        /* Time entry was made */\n"
1186 "#endif\n"
1187 msgstr ""
1188 "struct utmp {\n"
1189 "    short   ut_type;              /* Type of record */\n"
1190 "    pid_t   ut_pid;               /* PID of login process */\n"
1191 "    char    ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n"
1192 "    char    ut_id[4];             /* Terminal name suffix,\n"
1193 "                                     or inittab(5) ID */\n"
1194 "    char    ut_user[UT_NAMESIZE]; /* Username */\n"
1195 "    char    ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n"
1196 "                                     kernel version for run-level\n"
1197 "                                     messages */\n"
1198 "    struct  exit_status ut_exit;  /* Exit status of a process\n"
1199 "                                     marked as DEAD_PROCESS; not\n"
1200 "                                     used by Linux init(8) */\n"
1201 "    /* ut_session と ut_tv フィールドは、32ビットでコンパイルされた場合と\n"
1202 "       64ビットでコンパイルされた場合で同じサイズでなければならない。\n"
1203 "       こうすることで、32ビットと64ビットのアプリケーションで、\n"
1204 "       データファイルと共有メモリを共有することができるようになる。 */\n"
1205 "#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n"
1206 "    int32_t ut_session;           /* Session ID (B<getsid>(2)),\n"
1207 "                                     used for windowing */\n"
1208 "    struct {\n"
1209 "        int32_t tv_sec;           /* Seconds */\n"
1210 "        int32_t tv_usec;          /* Microseconds */\n"
1211 "    } ut_tv;                      /* Time entry was made */\n"
1212 "#else\n"
1213 "     long   ut_session;           /* Session ID */\n"
1214 "     struct timeval ut_tv;        /* Time entry was made */\n"
1215 "#endif\n"
1216
1217 #. type: Plain text
1218 #: build/C/man5/utmp.5:122
1219 #, no-wrap
1220 msgid ""
1221 "    int32_t ut_addr_v6[4];        /* Internet address of remote\n"
1222 "                                     host; IPv4 address uses\n"
1223 "                                     just ut_addr_v6[0] */\n"
1224 "    char __unused[20];            /* Reserved for future use */\n"
1225 "};\n"
1226 msgstr ""
1227 "    int32_t ut_addr_v6[4];        /* Internet address of remote\n"
1228 "                                     host; IPv4 address uses\n"
1229 "                                     just ut_addr_v6[0] */\n"
1230 "    char __unused[20];            /* Reserved for future use */\n"
1231 "};\n"
1232
1233 #. type: Plain text
1234 #: build/C/man5/utmp.5:130
1235 #, no-wrap
1236 msgid ""
1237 "/* Backward compatibility hacks */\n"
1238 "#define ut_name ut_user\n"
1239 "#ifndef _NO_UT_TIME\n"
1240 "#define ut_time ut_tv.tv_sec\n"
1241 "#endif\n"
1242 "#define ut_xtime ut_tv.tv_sec\n"
1243 "#define ut_addr ut_addr_v6[0]\n"
1244 msgstr ""
1245 "/* Backward compatibility hacks */\n"
1246 "#define ut_name ut_user\n"
1247 "#ifndef _NO_UT_TIME\n"
1248 "#define ut_time ut_tv.tv_sec\n"
1249 "#endif\n"
1250 "#define ut_xtime ut_tv.tv_sec\n"
1251 "#define ut_addr ut_addr_v6[0]\n"
1252
1253 #. type: Plain text
1254 #: build/C/man5/utmp.5:140
1255 msgid ""
1256 "This structure gives the name of the special file associated with the user's "
1257 "terminal, the user's login name, and the time of login in the form of B<time>"
1258 "(2).  String fields are terminated by a null byte (\\(aq\\e0\\(aq)  if they "
1259 "are shorter than the size of the field."
1260 msgstr ""
1261 "この構造体からユーザーの使っている端末のスペシャルファイル名、 ユーザーのログ"
1262 "イン名、 (B<time>(2)  形式での)ログイン時刻がわかる。文字列フィールドは、 "
1263 "フィールドの長さより文字列が短い場合には、 NULL バイト (\\(aq\\e0\\(aq) に"
1264 "よって終端される。"
1265
1266 #. type: Plain text
1267 #: build/C/man5/utmp.5:157
1268 msgid ""
1269 "The first entries ever created result from B<init>(8)  processing B<inittab>"
1270 "(5).  Before an entry is processed, though, B<init>(8)  cleans up utmp by "
1271 "setting I<ut_type> to B<DEAD_PROCESS>, clearing I<ut_user>, I<ut_host>, and "
1272 "I<ut_time> with null bytes for each record which I<ut_type> is not "
1273 "B<DEAD_PROCESS> or B<RUN_LVL> and where no process with PID I<ut_pid> "
1274 "exists.  If no empty record with the needed I<ut_id> can be found, B<init>"
1275 "(8)  creates a new one.  It sets I<ut_id> from the inittab, I<ut_pid> and "
1276 "I<ut_time> to the current values, and I<ut_type> to B<INIT_PROCESS>."
1277 msgstr ""
1278 "最初のエントリは B<init>(8)  コマンドが B<inittab>(5)  を処理することで作られ"
1279 "る。 あるエントリを処理する前に、 B<init>(8)  は I<ut_type> を "
1280 "B<DEAD_PROCESS> に初期化する。 レコードの I<ut_type> が B<DEAD_PROCESS> と "
1281 "B<RUN_LVL> のいずれでもなく、 かつ PID が I<ut_pid> であるプロセスがいない場"
1282 "合は、I<ut_user>, I<ut_host>, I<ut_time> をヌルバイトでクリアして初期化を行"
1283 "う。 必要な I<ut_id> を持つ空のレコードを見つけられなかった場合、 B<init>"
1284 "(8)  は新しいレコードを作る。inittab から I<ut_id> を設定し、 I<ut_pid> およ"
1285 "び I<ut_time> を現在値に、 I<ut_type> を B<INIT_PROCESS> に設定する。"
1286
1287 #. type: Plain text
1288 #: build/C/man5/utmp.5:176
1289 msgid ""
1290 "B<mingetty>(8)  (or B<agetty>(8))  locates the entry by the PID, changes "
1291 "I<ut_type> to B<LOGIN_PROCESS>, changes I<ut_time>, sets I<ut_line>, and "
1292 "waits for connection to be established.  B<login>(1), after a user has been "
1293 "authenticated, changes I<ut_type> to B<USER_PROCESS>, changes I<ut_time>, "
1294 "and sets I<ut_host> and I<ut_addr>.  Depending on B<mingetty>(8)  (or "
1295 "B<agetty>(8))  and B<login>(1), records may be located by I<ut_line> instead "
1296 "of the preferable I<ut_pid>."
1297 msgstr ""
1298 "B<mingetty>(8)  (または B<agetty>(8))  は pid でエントリを特定し、 "
1299 "I<ut_type> を B<LOGIN_PROCESS> に変更し、 I<ut_time> を更新し、I<ut_line>を設"
1300 "定した後、接続が確立されるのを待つ。 B<login>(1)  はユーザー認証が終了する"
1301 "と、 I<ut_type> を B<USER_PROCESS> に変更し、 I<ut_time> を更新し、"
1302 "I<ut_host> と I<ut_addr>を設定する。 B<mingetty>(8)  (または B<agetty>(8))  "
1303 "と B<login>(1)  により異なるが、 I<ut_pid> の代わりに I<ut_line> を使ってレ"
1304 "コードの特定が行われることもある (I<ut_pid> を使う方が望ましい) 。"
1305
1306 #. type: Plain text
1307 #: build/C/man5/utmp.5:182
1308 msgid ""
1309 "When B<init>(8)  finds that a process has exited, it locates its utmp entry "
1310 "by I<ut_pid>, sets I<ut_type> to B<DEAD_PROCESS>, and clears I<ut_user>, "
1311 "I<ut_host> and I<ut_time> with null bytes."
1312 msgstr ""
1313 "B<init>(8)  はプロセスの終了を検出した場合、 I<ut_pid> をキーとして utmp のエ"
1314 "ントリを特定し、 I<ut_type> を B<DEAD_PROCESS> に設定し、 I<ut_user>, "
1315 "I<ut_host>, I<ut_time> をヌルバイトでクリアする。"
1316
1317 #. type: Plain text
1318 #: build/C/man5/utmp.5:194
1319 msgid ""
1320 "B<xterm>(1)  and other terminal emulators directly create a B<USER_PROCESS> "
1321 "record and generate the I<ut_id> by using the string that suffix part of the "
1322 "terminal name (the characters following I</dev/[pt]ty>).  If they find a "
1323 "B<DEAD_PROCESS> for this ID, they recycle it, otherwise they create a new "
1324 "entry.  If they can, they will mark it as B<DEAD_PROCESS> on exiting and it "
1325 "is advised that they null I<ut_line>, I<ut_time>, I<ut_user>, and I<ut_host> "
1326 "as well."
1327 msgstr ""
1328 "B<xterm>(1)  コマンドや他の端末エミュレータは 直接 B<USER_PROCESS> のレコード"
1329 "を作り、 端末名のサフィックス文字列 (I</dev/[pt]ty> に続く文字列)  を使って "
1330 "I<ut_id> の値を生成する。 この id を持つエントリが B<DEAD_PROCESS> であった場"
1331 "合には再利用し、 それ以外の場合には新しいエントリが作られる。 可能な場合には"
1332 "プロセス終了時に B<DEAD_PROCESS> と設定し、 さらに I<ut_line>, I<ut_time>, "
1333 "I<ut_user>, I<ut_host> をヌルバイトでクリアすることが奨励されている。"
1334
1335 #. type: Plain text
1336 #: build/C/man5/utmp.5:202
1337 msgid ""
1338 "B<telnetd>(8)  sets up a B<LOGIN_PROCESS> entry and leaves the rest to "
1339 "B<login>(1)  as usual.  After the telnet session ends, B<telnetd>(8)  cleans "
1340 "up utmp in the described way."
1341 msgstr ""
1342 "B<telnetd>(8)  は B<LOGIN_PROCESS> を設定するだけでよく、 残りの処理は通常通"
1343 "り B<login>(1)  に任せればよい。 telnet のセッションが終了した後、前述のよう"
1344 "に B<telnetd>(8)  が utmp のエントリを初期化する。"
1345
1346 #. type: Plain text
1347 #: build/C/man5/utmp.5:224
1348 msgid ""
1349 "The I<wtmp> file records all logins and logouts.  Its format is exactly like "
1350 "I<utmp> except that a null username indicates a logout on the associated "
1351 "terminal.  Furthermore, the terminal name B<~> with username B<shutdown> or "
1352 "B<reboot> indicates a system shutdown or reboot and the pair of terminal "
1353 "names B<|>/B<}> logs the old/new system time when B<date>(1)  changes it.  "
1354 "I<wtmp> is maintained by B<login>(1), B<init>(8), and some versions of "
1355 "B<getty>(8)  (e.g., B<mingetty>(8)  or B<agetty>(8)).  None of these "
1356 "programs creates the file, so if it is removed, record-keeping is turned off."
1357 msgstr ""
1358 "I<wtmp> ファイルには、すべてのログインとログアウトが記録される。 そのフォー"
1359 "マットは、ログアウト済の端末でユーザー名がヌルとなること以外は I<utmp> とまっ"
1360 "たく同じである。 ユーザー名が B<shutdown> もしくは B<reboot> である 端末名 "
1361 "B<~> はシステムの停止 (shutdown) または再起動 (reboot)  を意味する。またその"
1362 "端末名が B<|> と B<}> の対は B<date>(1)  コマンドで変更した新/旧のシステム時"
1363 "刻を記録している。 I<wtmp> ファイルは B<login>(1), B<init>(8)  やいくつかの"
1364 "バージョンの B<getty>(8)  (B<mingetty>(8)  または B<agetty>(8))  により管理さ"
1365 "れている。 これらのプログラムはどれもファイルを新たに作成しないので、 ファイ"
1366 "ルを削除することで情報の記録 (record-keeping) を止めることができる。"
1367
1368 #. type: Plain text
1369 #: build/C/man5/utmp.5:226
1370 msgid "/var/run/utmp"
1371 msgstr "/var/run/utmp"
1372
1373 #. type: Plain text
1374 #: build/C/man5/utmp.5:228
1375 msgid "/var/log/wtmp"
1376 msgstr "/var/log/wtmp"
1377
1378 #. type: Plain text
1379 #: build/C/man5/utmp.5:247
1380 msgid ""
1381 "POSIX.1 does not specify a I<utmp> structure, but rather one named I<utmpx>, "
1382 "with specifications for the fields I<ut_type>, I<ut_pid>, I<ut_line>, "
1383 "I<ut_id>, I<ut_user>, and I<ut_tv>.  POSIX.1 does not specify the lengths of "
1384 "the I<ut_line> and I<ut_user> fields."
1385 msgstr ""
1386 "POSIX.1 では、 I<utmp> 構造体ではなく、 I<utmpx> 構造体を規定している。 "
1387 "I<utmpx> 構造体で規定されているのは、フィールド I<ut_type>, I<ut_pid>, "
1388 "I<ut_line>, I<ut_id>, I<ut_user>, I<ut_tv> である。 POSIX.1 では、フィールド "
1389 "I<ut_line> と I<ut_user> の長さは規定されていない。"
1390
1391 #. type: Plain text
1392 #: build/C/man5/utmp.5:253
1393 msgid ""
1394 "Linux defines the I<utmpx> structure to be the same as the I<utmp> structure."
1395 msgstr "Linux では、 I<utmpx> 構造体の定義は I<utmp> 構造体と同じである。"
1396
1397 #. type: SS
1398 #: build/C/man5/utmp.5:253
1399 #, fuzzy, no-wrap
1400 #| msgid "Comparison with Historical Systems"
1401 msgid "Comparison with historical systems"
1402 msgstr "過去のシステムとの比較"
1403
1404 #. type: Plain text
1405 #: build/C/man5/utmp.5:256
1406 msgid ""
1407 "Linux utmp entries conform neither to v7/BSD nor to System V; they are a mix "
1408 "of the two."
1409 msgstr ""
1410 "Linux での utmp のエントリは v7/BSD や System V のいずれにも準拠しておらず、 "
1411 "その両方が混在したものである。"
1412
1413 #. type: Plain text
1414 #: build/C/man5/utmp.5:263
1415 msgid ""
1416 "v7/BSD has fewer fields; most importantly it lacks I<ut_type>, which causes "
1417 "native v7/BSD-like programs to display (for example) dead or login entries.  "
1418 "Further, there is no configuration file which allocates slots to sessions.  "
1419 "BSD does so because it lacks I<ut_id> fields."
1420 msgstr ""
1421 "v7/BSD ではより少しの項目しかない; もっとも重要なことは、I<ut_type> が無いこ"
1422 "とである。 そのため v7/BSD 系のプログラムでは (たとえば) 死んだ状態のエントリ"
1423 "や ログイン状態のエントリまで表示されてしまうことになった。 さらにセッション"
1424 "用のスロットを割り当てるための設定ファイルがない。 BSD に設定ファイルがあるの"
1425 "は I<ut_id> がないからである。"
1426
1427 #. type: Plain text
1428 #: build/C/man5/utmp.5:275
1429 msgid ""
1430 "In Linux (as in System V), the I<ut_id> field of a record will never change "
1431 "once it has been set, which reserves that slot without needing a "
1432 "configuration file.  Clearing I<ut_id> may result in race conditions leading "
1433 "to corrupted utmp entries and potential security holes.  Clearing the "
1434 "abovementioned fields by filling them with null bytes is not required by "
1435 "System V semantics, but makes it possible to run many programs which assume "
1436 "BSD semantics and which do not modify utmp.  Linux uses the BSD conventions "
1437 "for line contents, as documented above."
1438 msgstr ""
1439 "Linux (System V 系)では、設定ファイルを必要とせず セッション用のスロットを割"
1440 "り当てるので、一旦設定 されてしまうとレコードの I<ut_id> は決して変更されな"
1441 "い。 I<ut_id> をクリアすると競合状態におちいり、 utmp のエントリを壊したり、"
1442 "潜在的なセキュリティホールになる可能性がある。 上述のフィールドを NULL バイト"
1443 "で埋めてクリアしておくのは、 System V での取り決めでは必要とはされていない"
1444 "が、 BSD での取り決めを前提としていて、かつ utmp を更新しない多くのプログラム"
1445 "が 動作するようにするためである。 Linux ではここまで記述してきたように、行内"
1446 "容の表示は BSD の慣例に従っている。"
1447
1448 #.  mtk: What is the referrent of "them" in the following sentence?
1449 #.  System V only uses the type field to mark them and logs
1450 #.  informative messages such as \fB"new time"\fP in the line field.
1451 #. type: Plain text
1452 #: build/C/man5/utmp.5:280
1453 msgid "System V has no I<ut_host> or I<ut_addr_v6> fields."
1454 msgstr ""
1455 "B<UT_UNKNOWN> は Linux で作られたもののようである。 System V には I<ut_host> "
1456 "も I<ut_addr_v6> も存在しない。"
1457
1458 #. type: Plain text
1459 #: build/C/man5/utmp.5:288
1460 msgid ""
1461 "Unlike various other systems, where utmp logging can be disabled by removing "
1462 "the file, utmp must always exist on Linux.  If you want to disable B<who>"
1463 "(1)  then do not make utmp world readable."
1464 msgstr ""
1465 "ファイルを削除することで utmp への記録を止められる 他の様々なシステムとは違"
1466 "い、Linux では utmp ファイルを必ずおいて おく必要がある。 B<who>(1)  コマンド"
1467 "が機能しないようにしたい場合には、 utmp ファイルの全ユーザーに対する読み取り"
1468 "許可を設定しないようにする。"
1469
1470 #. type: Plain text
1471 #: build/C/man5/utmp.5:291
1472 msgid ""
1473 "The file format is machine-dependent, so it is recommended that it be "
1474 "processed only on the machine architecture where it was created."
1475 msgstr ""
1476 "ファイルのフォーマットはマシンに依存するので、ファイルが作られた マシンもしく"
1477 "は同一アーキテクチャのマシン上でのみ処理することを推奨する。"
1478
1479 #. type: Plain text
1480 #: build/C/man5/utmp.5:312
1481 msgid ""
1482 "Note that on I<biarch> platforms, that is, systems which can run both 32-bit "
1483 "and 64-bit applications (x86-64, ppc64, s390x, etc.), I<ut_tv> is the same "
1484 "size in 32-bit mode as in 64-bit mode.  The same goes for I<ut_session> and "
1485 "I<ut_time> if they are present.  This allows data files and shared memory to "
1486 "be shared between 32-bit and 64-bit applications.  This is achieved by "
1487 "changing the type of I<ut_session> to I<int32_t>, and that of I<ut_tv> to a "
1488 "struct with two I<int32_t> fields I<tv_sec> and I<tv_usec>.  Since I<ut_tv> "
1489 "may not be the same as I<struct timeval>, then instead of the call:"
1490 msgstr ""
1491 "注意すべき点としては、 I<biarch> なプラットフォーム、つまり 32ビットと 64ビッ"
1492 "トの両方の アプリケーションを実行できるシステム (x86-64, ppc64, s390x など) "
1493 "では、 I<ut_tv> のサイズは 32ビットモードと 64ビットモードで同じである。 "
1494 "I<ut_session> と I<ut_time> も、存在する場合には同様に同じサイズ である。これ"
1495 "により、32ビットアプリケーションと 64ビットアプリケーション の間でデータファ"
1496 "イルと共有メモリを共有することが可能になる。 そのためには、 I<ut_session> を "
1497 "I<int32_t> 型に、 I<ut_tv> を 2つの I<int32_t> 型のフィールド I<tv_sec>, "
1498 "I<tv_usec> を持つ構造体に変更すればよい I<ut_tv> は I<struct timeval> と同じ"
1499 "サイズとは限らないので、"
1500
1501 #. type: Plain text
1502 #: build/C/man5/utmp.5:316
1503 #, no-wrap
1504 msgid "gettimeofday((struct timeval *) &ut.ut_tv, NULL);\n"
1505 msgstr "gettimeofday((struct timeval *) &ut.ut_tv, NULL);\n"
1506
1507 #. type: Plain text
1508 #: build/C/man5/utmp.5:320
1509 msgid "the following method of setting this field is recommended:"
1510 msgstr ""
1511 "のような呼び出しをするのではなく、 以下のように各フィールドを設定する方法が推"
1512 "奨される:"
1513
1514 #. type: Plain text
1515 #: build/C/man5/utmp.5:325
1516 #, no-wrap
1517 msgid ""
1518 "struct utmp ut;\n"
1519 "struct timeval tv;\n"
1520 msgstr ""
1521 "struct utmp ut;\n"
1522 "struct timeval tv;\n"
1523
1524 #. type: Plain text
1525 #: build/C/man5/utmp.5:329
1526 #, no-wrap
1527 msgid ""
1528 "gettimeofday(&tv, NULL);\n"
1529 "ut.ut_tv.tv_sec = tv.tv_sec;\n"
1530 "ut.ut_tv.tv_usec = tv.tv_usec;\n"
1531 msgstr ""
1532 "gettimeofday(&tv, NULL);\n"
1533 "ut.ut_tv.tv_sec = tv.tv_sec;\n"
1534 "ut.ut_tv.tv_usec = tv.tv_usec;\n"
1535
1536 #. type: Plain text
1537 #: build/C/man5/utmp.5:336
1538 msgid ""
1539 "Note that the I<utmp> struct from libc5 has changed in libc6.  Because of "
1540 "this, binaries using the old libc5 struct will corrupt I</var/run/utmp> and/"
1541 "or I</var/log/wtmp>."
1542 msgstr ""
1543 "utmp 構造体は libc5 から libc6 で変更された。そのため昔の libc5 の構造体 を"
1544 "使ったプログラムは I</var/run/utmp> や I</var/log/wtmp> ファイルを壊してしま"
1545 "う。"
1546
1547 #. type: SH
1548 #: build/C/man5/utmp.5:336
1549 #, no-wrap
1550 msgid "BUGS"
1551 msgstr "バグ"
1552
1553 #. type: Plain text
1554 #: build/C/man5/utmp.5:338
1555 msgid ""
1556 "This man page is based on the libc5 one, things may work differently now."
1557 msgstr ""
1558 "この man ページは libc5 に基づいて作られていて、 最新のものでは違っているかも"
1559 "しれない。"
1560
1561 #. type: Plain text
1562 #: build/C/man5/utmp.5:352
1563 #, fuzzy
1564 #| msgid ""
1565 #| "B<ac>(1), B<date>(1), B<last>(1), B<login>(1), B<who>(1), B<getutent>(3), "
1566 #| "B<getutmp>(3), B<login>(3), B<logout>(3), B<logwtmp>(3), B<updwtmp>(3), "
1567 #| "B<init>(8)"
1568 msgid ""
1569 "B<ac>(1), B<date>(1), B<last>(1), B<login>(1), B<utmpdump>(1), B<who>(1), "
1570 "B<getutent>(3), B<getutmp>(3), B<login>(3), B<logout>(3), B<logwtmp>(3), "
1571 "B<updwtmp>(3), B<init>(8)"
1572 msgstr ""
1573 "B<ac>(1), B<date>(1), B<last>(1), B<login>(1), B<who>(1), B<getutent>(3), "
1574 "B<getutmp>(3), B<login>(3), B<logout>(3), B<logwtmp>(3), B<updwtmp>(3), "
1575 "B<init>(8)"
1576
1577 #~ msgid "2011-09-28"
1578 #~ msgstr "2011-09-28"