OSDN Git Service

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