OSDN Git Service

エントリ -> エントリー
[linuxjm/LDP_man-pages.git] / po4a / filesystem / 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-01-23 22:24+0900\n"
10 "PO-Revision-Date: 2015-01-25 07:18+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/man5/filesystems.5:26
20 #, no-wrap
21 msgid "FILESYSTEMS"
22 msgstr "FILESYSTEMS"
23
24 #. type: TH
25 #: build/C/man5/filesystems.5:26
26 #, no-wrap
27 msgid "2014-01-15"
28 msgstr "2014-01-15"
29
30 #. type: TH
31 #: build/C/man5/filesystems.5:26 build/C/man3/fts.3:40 build/C/man3/ftw.3:35
32 #: build/C/man2/getxattr.2:25 build/C/man3/isfdtype.3:26
33 #: build/C/man2/listxattr.2:25 build/C/man2/mount.2:40
34 #: build/C/man7/path_resolution.7:25 build/C/man2/removexattr.2:25
35 #: build/C/man2/setxattr.2:25 build/C/man2/spu_create.2:25
36 #: build/C/man2/spu_run.2:26 build/C/man7/spufs.7:27 build/C/man2/stat.2:40
37 #: build/C/man2/statfs.2:28 build/C/man3/statvfs.3:30 build/C/man2/sysfs.2:27
38 #: build/C/man2/umount.2:30 build/C/man2/ustat.2:30
39 #, no-wrap
40 msgid "Linux"
41 msgstr "Linux"
42
43 #. type: TH
44 #: build/C/man5/filesystems.5:26 build/C/man3/fts.3:40 build/C/man3/ftw.3:35
45 #: build/C/man3/getfsent.3:27 build/C/man3/getmntent.3:32
46 #: build/C/man2/getxattr.2:25 build/C/man3/isfdtype.3:26
47 #: build/C/man2/listxattr.2:25 build/C/man2/mount.2:40
48 #: build/C/man7/path_resolution.7:25 build/C/man2/removexattr.2:25
49 #: build/C/man2/setxattr.2:25 build/C/man2/spu_create.2:25
50 #: build/C/man2/spu_run.2:26 build/C/man7/spufs.7:27 build/C/man2/stat.2:40
51 #: build/C/man2/statfs.2:28 build/C/man3/statvfs.3:30 build/C/man2/sysfs.2:27
52 #: build/C/man2/umount.2:30 build/C/man2/ustat.2:30
53 #, no-wrap
54 msgid "Linux Programmer's Manual"
55 msgstr "Linux Programmer's Manual"
56
57 #. type: SH
58 #: build/C/man5/filesystems.5:28 build/C/man3/fts.3:41 build/C/man3/ftw.3:36
59 #: build/C/man3/getfsent.3:28 build/C/man3/getmntent.3:33
60 #: build/C/man2/getxattr.2:26 build/C/man3/isfdtype.3:27
61 #: build/C/man2/listxattr.2:26 build/C/man2/mount.2:41
62 #: build/C/man7/path_resolution.7:26 build/C/man2/removexattr.2:26
63 #: build/C/man2/setxattr.2:26 build/C/man2/spu_create.2:26
64 #: build/C/man2/spu_run.2:27 build/C/man7/spufs.7:28 build/C/man2/stat.2:41
65 #: build/C/man2/statfs.2:29 build/C/man3/statvfs.3:31 build/C/man2/sysfs.2:28
66 #: build/C/man2/umount.2:31 build/C/man2/ustat.2:31
67 #, no-wrap
68 msgid "NAME"
69 msgstr "名前"
70
71 #. type: Plain text
72 #: build/C/man5/filesystems.5:32
73 msgid "filesystems - Linux filesystem types: minix, ext, ext2, ext3, ext4, Reiserfs, XFS, JFS, xia, msdos, umsdos, vfat, ntfs, proc, nfs, iso9660, hpfs, sysv, smb, ncpfs"
74 msgstr ""
75 "filesystems - Linux のファイルシステム種別: minix, ext, ext2, ext3, ext4,\n"
76 "Reiserfs, XFS, JFS, xia, msdos, umsdos, vfat, ntfs, proc, nfs, iso9660,\n"
77 "hpfs, sysv, smb, ncpfs"
78
79 #. type: SH
80 #: build/C/man5/filesystems.5:32 build/C/man3/fts.3:61 build/C/man3/ftw.3:55
81 #: build/C/man3/getfsent.3:42 build/C/man3/getmntent.3:65
82 #: build/C/man2/getxattr.2:42 build/C/man3/isfdtype.3:55
83 #: build/C/man2/listxattr.2:41 build/C/man2/mount.2:51
84 #: build/C/man7/path_resolution.7:28 build/C/man2/removexattr.2:39
85 #: build/C/man2/setxattr.2:42 build/C/man2/spu_create.2:40
86 #: build/C/man2/spu_run.2:39 build/C/man7/spufs.7:30 build/C/man2/stat.2:97
87 #: build/C/man2/statfs.2:37 build/C/man3/statvfs.3:39 build/C/man2/sysfs.2:36
88 #: build/C/man2/umount.2:41 build/C/man2/ustat.2:43
89 #, no-wrap
90 msgid "DESCRIPTION"
91 msgstr "説明"
92
93 #. type: Plain text
94 #: build/C/man5/filesystems.5:45
95 msgid "When, as is customary, the B<proc> filesystem is mounted on I</proc>, you can find in the file I</proc/filesystems> which filesystems your kernel currently supports; see B<proc>(5)  for more details.  If you need a currently unsupported filesystem, insert the corresponding module or recompile the kernel."
96 msgstr "B<proc> ファイルシステムが慣習どおりに I</proc> にマウントされている場合、 現在のカーネルがどのファイルシステムをサポートしているか 知るためにはファイル I</proc/filesystems> を見ればよい。 詳細は B<proc>(5) 参照。 必要なファイルシステムが現在のカーネルにサポートされて いない場合、適切なモジュールを組み込むか、それもだめならば カーネルを再コンパイルすること。"
97
98 #. type: Plain text
99 #: build/C/man5/filesystems.5:50
100 msgid "In order to use a filesystem, you have to I<mount> it; see B<mount>(8)."
101 msgstr "ファイルシステムを使うためには、 I<マウント> する必要がある。 B<mount>(8)  を参照のこと。"
102
103 #. type: Plain text
104 #: build/C/man5/filesystems.5:52
105 msgid "Below a short description of a few of the available filesystems."
106 msgstr "以下は利用可能なファイルシステムのうち、いくつかの簡単な説明である。"
107
108 #. type: TP
109 #: build/C/man5/filesystems.5:52
110 #, no-wrap
111 msgid "B<minix>"
112 msgstr "B<minix>"
113
114 #. type: Plain text
115 #: build/C/man5/filesystems.5:59
116 msgid "is the filesystem used in the Minix operating system, the first to run under Linux.  It has a number of shortcomings, including a 64MB partition size limit, short filenames, and a single timestamp.  It remains useful for floppies and RAM disks."
117 msgstr "Minix オペレーティングシステムのファイルシステム。 Linux で動いた最初のファイルシステムでもある。これには多くの欠点がある。 パーティションのサイズが最大 64MB であること、短いファイル名しか使えない、タイムスタンプが一つだけである、などなど。 フロッピーや RAM ディスクに便利なのでまだ残っている。"
118
119 #. type: TP
120 #: build/C/man5/filesystems.5:59
121 #, no-wrap
122 msgid "B<ext>"
123 msgstr "B<ext>"
124
125 #. type: Plain text
126 #: build/C/man5/filesystems.5:68
127 msgid "is an elaborate extension of the B<minix> filesystem.  It has been completely superseded by the second version of the extended filesystem (B<ext2>)  and has been removed from the kernel (in 2.1.21)."
128 msgstr "B<minix> ファイルシステムの手の込んだ拡張である。これは第二拡張ファイルシステム (second extended filesystem : B<ext2>)  に完全にとって代わられ、カーネル 2.1.21 で取り除かれた。"
129
130 #. type: TP
131 #: build/C/man5/filesystems.5:68
132 #, no-wrap
133 msgid "B<ext2>"
134 msgstr "B<ext2>"
135
136 #. type: Plain text
137 #: build/C/man5/filesystems.5:78
138 msgid "is the high performance disk filesystem used by Linux for fixed disks as well as removable media.  The second extended filesystem was designed as an extension of the extended filesystem (B<ext>).  B<ext2> offers the best performance (in terms of speed and CPU usage) of the filesystems supported under Linux."
139 msgstr "Linux の高性能なファイルシステムである。これは固定ディスクだけではなく リムーバブルディスクにもよく使われる。 拡張ファイルシステム (B<ext>)  の発展として第二拡張ファイルシステム (B<ext2>)  が設計された。この B<ext2> は Linux のファイルシステムの中で (スピードおよび CPU の使用量の面で) 最も よいパフォーマンスを発揮する。"
140
141 #. type: TP
142 #: build/C/man5/filesystems.5:78
143 #, no-wrap
144 msgid "B<ext3>"
145 msgstr "B<ext3>"
146
147 #. type: Plain text
148 #: build/C/man5/filesystems.5:83
149 msgid "is a journaling version of the ext2 filesystem.  It is easy to switch back and forth between ext2 and ext3."
150 msgstr ""
151 "ext2 ファイルシステムにジャーナル機能をつけたものである。\n"
152 "ext2 と ext3 は簡単に行きつ戻りつできる。"
153
154 #. type: TP
155 #: build/C/man5/filesystems.5:83
156 #, no-wrap
157 msgid "B<ext4>"
158 msgstr "B<ext4>"
159
160 #. type: Plain text
161 #: build/C/man5/filesystems.5:88
162 msgid "is a set of upgrades to ext3 including substantial performance and reliability enhancements, plus large increases in volume, file, and directory size limits."
163 msgstr ""
164 "ext3 の改良版であり、性能と信頼性のかなりの改善と、ボリューム、ファイル、\n"
165 "ディレクトリのサイズの上限の大幅な拡張が行われている。"
166
167 #. type: TP
168 #: build/C/man5/filesystems.5:88
169 #, no-wrap
170 msgid "B<Reiserfs>"
171 msgstr "B<Reiserfs>"
172
173 #. type: Plain text
174 #: build/C/man5/filesystems.5:92
175 msgid "is a journaling filesystem, designed by Hans Reiser, that was integrated into Linux in kernel 2.4.1."
176 msgstr ""
177 "Hans Reiser によって設計されたジャーナリングファイルシステムである。\n"
178 "カーネル 2.4.1 で Linux に統合された。"
179
180 #. type: TP
181 #: build/C/man5/filesystems.5:92
182 #, no-wrap
183 msgid "B<XFS>"
184 msgstr "B<XFS>"
185
186 #. type: Plain text
187 #: build/C/man5/filesystems.5:96
188 msgid "is a journaling filesystem, developed by SGI, that was integrated into Linux in kernel 2.4.20."
189 msgstr ""
190 "SGI により開発されたジャーナリングファイルシステムである。\n"
191 "カーネル 2.4.20 で Linux に統合された。"
192
193 #. type: TP
194 #: build/C/man5/filesystems.5:96
195 #, no-wrap
196 msgid "B<JFS>"
197 msgstr "B<JFS>"
198
199 #. type: Plain text
200 #: build/C/man5/filesystems.5:100
201 msgid "is a journaling filesystem, developed by IBM, that was integrated into Linux in kernel 2.4.24."
202 msgstr ""
203 "IBM により開発されたジャーナリングファイルシステムである。\n"
204 "カーネル 2.4.24 で Linux に統合された。"
205
206 #. type: TP
207 #: build/C/man5/filesystems.5:100
208 #, no-wrap
209 msgid "B<xiafs>"
210 msgstr "B<xiafs>"
211
212 #. type: Plain text
213 #: build/C/man5/filesystems.5:110
214 msgid "was designed and implemented to be a stable, safe filesystem by extending the Minix filesystem code.  It provides the basic most requested features without undue complexity.  The B<xia> filesystem is no longer actively developed or maintained.  It was removed from the kernel in 2.1.21."
215 msgstr "は Minix ファイルシステムの拡張で、より安定し安全なファイルシステムとして 設計、実装された。これは、いらない複雑さは避けつつ必要な基本的機能を 備えている。 B<xia> ファイルシステムは、もはや開発もメンテナンスも行われていない。 カーネル 2.1.21 で取り除かれた。"
216
217 #. type: TP
218 #: build/C/man5/filesystems.5:110
219 #, no-wrap
220 msgid "B<msdos>"
221 msgstr "B<msdos>"
222
223 #. type: Plain text
224 #: build/C/man5/filesystems.5:116
225 msgid "is the filesystem used by DOS, Windows, and some OS/2 computers.  B<msdos> filenames can be no longer than 8 characters, followed by an optional period and 3 character extension."
226 msgstr "は DOS や Windows、いくらかの OS/2 コンピュータが使っているファイル システムである。 この B<msdos> ファイルシステムでは「8 文字の名前+ピリオド+3 文字の拡張子」より 長いファイル名はつけることができない。"
227
228 #. type: TP
229 #: build/C/man5/filesystems.5:116
230 #, no-wrap
231 msgid "B<umsdos>"
232 msgstr "B<umsdos>"
233
234 #. type: Plain text
235 #: build/C/man5/filesystems.5:123
236 msgid "is an extended DOS filesystem used by Linux.  It adds capability for long filenames, UID/GID, POSIX permissions, and special files (devices, named pipes, etc.)  under the DOS filesystem, without sacrificing compatibility with DOS."
237 msgstr "は DOS ファイルシステムを拡張した Linux のファイルシステムである。 これは DOS ファイルシステムのもとで、長いファイル名や UID/GID、POSIX 形式の パーミッション、(デバイスファイルや名前付きパイプなどの) 特殊ファイルを 使えるようにしたものである。DOS との互換性がある。"
238
239 #. type: TP
240 #: build/C/man5/filesystems.5:123
241 #, no-wrap
242 msgid "B<vfat>"
243 msgstr "B<vfat>"
244
245 #. type: Plain text
246 #: build/C/man5/filesystems.5:127
247 msgid "is an extended DOS filesystem used by Microsoft Windows95 and Windows NT.  VFAT adds the capability to use long filenames under the MSDOS filesystem."
248 msgstr "は Microsoft Windows95 と Windows NT が使う DOS ファイルシステムの拡張である。 長いファイル名が使えるようになっている。"
249
250 #. type: TP
251 #: build/C/man5/filesystems.5:127
252 #, no-wrap
253 msgid "B<ntfs>"
254 msgstr "B<ntfs>"
255
256 #. type: Plain text
257 #: build/C/man5/filesystems.5:132
258 msgid "replaces Microsoft Window's FAT filesystems (VFAT, FAT32).  It has reliability, performance, and space-utilization enhancements plus features like ACLs, journaling, encryption, and so on."
259 msgstr ""
260 "Microsoft Windows の FAT ファイルシステム (VFAT, FAT32) を置き換えるものである。\n"
261 "信頼性、性能、容量効率の向上に加えて、ACL、ジャーナリング、暗号化などの機能が\n"
262 "追加されている。"
263
264 #. type: TP
265 #: build/C/man5/filesystems.5:132
266 #, no-wrap
267 msgid "B<proc>"
268 msgstr "B<proc>"
269
270 #. type: Plain text
271 #: build/C/man5/filesystems.5:140
272 msgid "is a pseudo filesystem which is used as an interface to kernel data structures rather than reading and interpreting I</dev/kmem>.  In particular, its files do not take disk space.  See B<proc>(5)."
273 msgstr "はカーネルデータ構造へのインターフェイスとなる疑似ファイルシステムである。 これは I</dev/kmem> を読んで解釈することの代わりとして使うことができる。 このファイルシステムのファイルはディスクスペースを使用しない。 B<proc>(5)  を参照のこと。"
274
275 #. type: TP
276 #: build/C/man5/filesystems.5:140
277 #, no-wrap
278 msgid "B<iso9660>"
279 msgstr "B<iso9660>"
280
281 #. type: Plain text
282 #: build/C/man5/filesystems.5:143
283 msgid "is a CD-ROM filesystem type conforming to the ISO 9660 standard."
284 msgstr "は ISO 9660 標準に沿った CD-ROM のファイルシステムである。"
285
286 #. type: TP
287 #: build/C/man5/filesystems.5:144
288 #, no-wrap
289 msgid "B<High Sierra>"
290 msgstr "B<High Sierra>"
291
292 #. type: Plain text
293 #: build/C/man5/filesystems.5:151
294 msgid "Linux supports High Sierra, the precursor to the ISO 9660 standard for CD-ROM filesystems.  It is automatically recognized within the B<iso9660> filesystem support under Linux."
295 msgstr "Linux はハイシェラ (High Sierra) をサポートしている。これは ISO 9660 標準が 決まるより前に使われていた CD-ROM ファイルシステムである。Linux の B<iso9660> ファイルシステムサポートがハイシェラファイルシステムを自動で 認識することができる。"
296
297 #. type: TP
298 #: build/C/man5/filesystems.5:151
299 #, no-wrap
300 msgid "B<Rock Ridge>"
301 msgstr "B<Rock Ridge>"
302
303 #. type: Plain text
304 #: build/C/man5/filesystems.5:162
305 msgid "Linux also supports the System Use Sharing Protocol records specified by the Rock Ridge Interchange Protocol.  They are used to further describe the files in the B<iso9660> filesystem to a UNIX host, and provide information such as long filenames, UID/GID, POSIX permissions, and devices.  It is automatically recognized within the B<iso9660> filesystem support under Linux."
306 msgstr ""
307 "Linux はロックリッジ (Rock Ridge) 変換プロトコルで規定された システム使用\n"
308 "共有プロトコルもサポートしている。これは UNIX ホ ストのファイルを B<iso9660> \n"
309 "ファイルシステムでより詳しく記述するために使用され、長いファイル名や UID/GID、\n"
310 "POSIX 形式のパーミッション、デバイスファイル などの情報を提供する。Linux の\n"
311 "B<iso9660> ファイルシステムサポートがロックリッジファイルシステムを自動で\n"
312 "認識することができる。"
313
314 #. type: TP
315 #: build/C/man5/filesystems.5:163
316 #, no-wrap
317 msgid "B<hpfs>"
318 msgstr "B<hpfs>"
319
320 #. type: Plain text
321 #: build/C/man5/filesystems.5:168
322 msgid "is the High Performance Filesystem, used in OS/2.  This filesystem is read-only under Linux due to the lack of available documentation."
323 msgstr "は OS/2 で使われる高性能ファイルシステム(High Performance Filesystem)である。 このファイルシステムはドキュメントが入手できないため、 Linux では読み込み専用 (Read-only) でしか使用できない。"
324
325 #. type: TP
326 #: build/C/man5/filesystems.5:168
327 #, no-wrap
328 msgid "B<sysv>"
329 msgstr "B<sysv>"
330
331 #. type: Plain text
332 #: build/C/man5/filesystems.5:172
333 msgid "is an implementation of the SystemV/Coherent filesystem for Linux.  It implements all of Xenix FS, SystemV/386 FS, and Coherent FS."
334 msgstr "は SystemV/Coherent ファイルシステムの Linux での実装である。 Xenix, SystemV/386, Coherent 各ファイルシステムを使うことができる。"
335
336 #. type: TP
337 #: build/C/man5/filesystems.5:172
338 #, no-wrap
339 msgid "B<nfs>"
340 msgstr "B<nfs>"
341
342 #. type: Plain text
343 #: build/C/man5/filesystems.5:175
344 msgid "is the network filesystem used to access disks located on remote computers."
345 msgstr "はネットワークファイルシステムである。 離れたコンピュータのディスクを使うことができる。"
346
347 #. type: TP
348 #: build/C/man5/filesystems.5:175
349 #, no-wrap
350 msgid "B<smb>"
351 msgstr "B<smb>"
352
353 #. type: Plain text
354 #: build/C/man5/filesystems.5:179
355 msgid "is a network filesystem that supports the SMB protocol, used by Windows for Workgroups, Windows NT, and Lan Manager."
356 msgstr "は SMB プロトコルをサポートしたネットワークファイルシステムである。 Windows for Workgroups, Windows NT, Lan Manager が使っている。"
357
358 #. type: Plain text
359 #: build/C/man5/filesystems.5:186
360 msgid "To use B<smb> fs, you need a special mount program, which can be found in the ksmbfs package, found at E<.UR ftp://sunsite.unc.edu\\:/pub\\:/Linux\\:/system\\:/Filesystems\\:/smbfs> E<.UE .>"
361 msgstr "B<smb> ファイルシステムを使うためには ksmbfs パッケージに含まれる 特殊なマウントプログラムが必要である。 ksmbfs は E<.UR ftp://sunsite.unc.edu\\:/pub\\:/Linux\\:/system\\:/Filesystems\\:/smbfs> E<.UE> にある。"
362
363 #. type: TP
364 #: build/C/man5/filesystems.5:186
365 #, no-wrap
366 msgid "B<ncpfs>"
367 msgstr "B<ncpfs>"
368
369 #. type: Plain text
370 #: build/C/man5/filesystems.5:190
371 msgid "is a network filesystem that supports the NCP protocol, used by Novell NetWare."
372 msgstr "は NCP プロトコルをサポートしたファイルシステムである。Novell NetWare が 使っている。"
373
374 #. type: Plain text
375 #: build/C/man5/filesystems.5:196
376 msgid "To use B<ncpfs>, you need special programs, which can be found at E<.UR ftp://linux01.gwdg.de\\:/pub\\:/ncpfs> E<.UE .>"
377 msgstr "B<ncpfs> を使うためには E<.UR ftp://linux01.gwdg.de\\:/pub\\:/ncpfs> E<.UE> にある特殊なプログラムが必要である。"
378
379 #. type: SH
380 #: build/C/man5/filesystems.5:196 build/C/man3/fts.3:790
381 #: build/C/man3/ftw.3:422 build/C/man3/getfsent.3:139
382 #: build/C/man3/getmntent.3:220 build/C/man2/getxattr.2:141
383 #: build/C/man3/isfdtype.3:102 build/C/man2/listxattr.2:153
384 #: build/C/man2/mount.2:488 build/C/man7/path_resolution.7:237
385 #: build/C/man2/removexattr.2:110 build/C/man2/setxattr.2:152
386 #: build/C/man2/spu_create.2:270 build/C/man2/spu_run.2:264
387 #: build/C/man7/spufs.7:766 build/C/man2/stat.2:920 build/C/man2/statfs.2:314
388 #: build/C/man3/statvfs.3:188 build/C/man2/umount.2:176
389 #: build/C/man2/ustat.2:118
390 #, no-wrap
391 msgid "SEE ALSO"
392 msgstr "関連項目"
393
394 #. type: Plain text
395 #: build/C/man5/filesystems.5:201
396 msgid "B<proc>(5), B<fsck>(8), B<mkfs>(8), B<mount>(8)"
397 msgstr "B<proc>(5), B<fsck>(8), B<mkfs>(8), B<mount>(8)"
398
399 #. type: SH
400 #: build/C/man5/filesystems.5:201 build/C/man3/fts.3:796
401 #: build/C/man3/ftw.3:426 build/C/man3/getfsent.3:142
402 #: build/C/man3/getmntent.3:224 build/C/man2/getxattr.2:151
403 #: build/C/man3/isfdtype.3:104 build/C/man2/listxattr.2:163
404 #: build/C/man2/mount.2:495 build/C/man7/path_resolution.7:242
405 #: build/C/man2/removexattr.2:120 build/C/man2/setxattr.2:162
406 #: build/C/man2/spu_create.2:275 build/C/man2/spu_run.2:269
407 #: build/C/man7/spufs.7:773 build/C/man2/stat.2:930 build/C/man2/statfs.2:318
408 #: build/C/man3/statvfs.3:190 build/C/man2/sysfs.2:104
409 #: build/C/man2/umount.2:181 build/C/man2/ustat.2:121
410 #, no-wrap
411 msgid "COLOPHON"
412 msgstr "この文書について"
413
414 #. type: Plain text
415 #: build/C/man5/filesystems.5:209 build/C/man3/fts.3:804
416 #: build/C/man3/ftw.3:434 build/C/man3/getfsent.3:150
417 #: build/C/man3/getmntent.3:232 build/C/man2/getxattr.2:159
418 #: build/C/man3/isfdtype.3:112 build/C/man2/listxattr.2:171
419 #: build/C/man2/mount.2:503 build/C/man7/path_resolution.7:250
420 #: build/C/man2/removexattr.2:128 build/C/man2/setxattr.2:170
421 #: build/C/man2/spu_create.2:283 build/C/man2/spu_run.2:277
422 #: build/C/man7/spufs.7:781 build/C/man2/stat.2:938 build/C/man2/statfs.2:326
423 #: build/C/man3/statvfs.3:198 build/C/man2/sysfs.2:112
424 #: build/C/man2/umount.2:189 build/C/man2/ustat.2:129
425 msgid "This page is part of release 3.78 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/."
426 msgstr ""
427 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
428 "である。プロジェクトの説明とバグ報告に関する情報は\n"
429 "http://www.kernel.org/doc/man-pages/ に書かれている。"
430
431 #. type: TH
432 #: build/C/man3/fts.3:40
433 #, no-wrap
434 msgid "FTS"
435 msgstr "FTS"
436
437 #. type: TH
438 #: build/C/man3/fts.3:40
439 #, no-wrap
440 msgid "2014-03-18"
441 msgstr "2014-03-18"
442
443 #. type: Plain text
444 #: build/C/man3/fts.3:44
445 msgid "fts, fts_open, fts_read, fts_children, fts_set, fts_close - traverse a file hierarchy"
446 msgstr "fts, fts_open, fts_read, fts_children, fts_set, fts_close - ファイル階層をたどる"
447
448 #. type: SH
449 #: build/C/man3/fts.3:44 build/C/man3/ftw.3:38 build/C/man3/getfsent.3:30
450 #: build/C/man3/getmntent.3:36 build/C/man2/getxattr.2:28
451 #: build/C/man3/isfdtype.3:29 build/C/man2/listxattr.2:28
452 #: build/C/man2/mount.2:43 build/C/man2/removexattr.2:28
453 #: build/C/man2/setxattr.2:28 build/C/man2/spu_create.2:28
454 #: build/C/man2/spu_run.2:29 build/C/man2/stat.2:43 build/C/man2/statfs.2:31
455 #: build/C/man3/statvfs.3:33 build/C/man2/sysfs.2:30 build/C/man2/umount.2:33
456 #: build/C/man2/ustat.2:33
457 #, no-wrap
458 msgid "SYNOPSIS"
459 msgstr "書式"
460
461 #. type: Plain text
462 #: build/C/man3/fts.3:49
463 #, no-wrap
464 msgid ""
465 "B<#include E<lt>sys/types.hE<gt>>\n"
466 "B<#include E<lt>sys/stat.hE<gt>>\n"
467 "B<#include E<lt>fts.hE<gt>>\n"
468 msgstr ""
469 "B<#include E<lt>sys/types.hE<gt>>\n"
470 "B<#include E<lt>sys/stat.hE<gt>>\n"
471 "B<#include E<lt>fts.hE<gt>>\n"
472
473 #. type: Plain text
474 #: build/C/man3/fts.3:52
475 #, no-wrap
476 msgid ""
477 "B<FTS *fts_open(char * const *>I<path_argv>B<, int >I<options>B<, >\n"
478 "B<              int (*>I<compar>B<)(const FTSENT **, const FTSENT **));>\n"
479 msgstr ""
480 "B<FTS *fts_open(char * const *>I<path_argv>B<, int >I<options>B<, >\n"
481 "B<              int (*>I<compar>B<)(const FTSENT **, const FTSENT **));>\n"
482
483 #. type: Plain text
484 #: build/C/man3/fts.3:54
485 #, no-wrap
486 msgid "B<FTSENT *fts_read(FTS *>I<ftsp>B<);>\n"
487 msgstr "B<FTSENT *fts_read(FTS *>I<ftsp>B<);>\n"
488
489 #. type: Plain text
490 #: build/C/man3/fts.3:56
491 #, no-wrap
492 msgid "B<FTSENT *fts_children(FTS *>I<ftsp>B<, int >I<options>B<);>\n"
493 msgstr "B<FTSENT *fts_children(FTS *>I<ftsp>B<, int >I<options>B<);>\n"
494
495 #. type: Plain text
496 #: build/C/man3/fts.3:58
497 #, no-wrap
498 msgid "B<int fts_set(FTS *>I<ftsp>B<, FTSENT *>I<f>B<, int >I<options>B<);>\n"
499 msgstr "B<int fts_set(FTS *>I<ftsp>B<, FTSENT *>I<f>B<, int >I<options>B<);>\n"
500
501 #. type: Plain text
502 #: build/C/man3/fts.3:60
503 #, no-wrap
504 msgid "B<int fts_close(FTS *>I<ftsp>B<);>\n"
505 msgstr "B<int fts_close(FTS *>I<ftsp>B<);>\n"
506
507 #. type: Plain text
508 #: build/C/man3/fts.3:87
509 msgid "The fts functions are provided for traversing file hierarchies.  A simple overview is that the B<fts_open>()  function returns a \"handle\" on a file hierarchy, which is then supplied to the other fts functions.  The function B<fts_read>()  returns a pointer to a structure describing one of the files in the file hierarchy.  The function B<fts_children>()  returns a pointer to a linked list of structures, each of which describes one of the files contained in a directory in the hierarchy.  In general, directories are visited two distinguishable times; in preorder (before any of their descendants are visited) and in postorder (after all of their descendants have been visited).  Files are visited once.  It is possible to walk the hierarchy \"logically\" (visiting the files that symbolic links point to)  or physically (visiting the symbolic links themselves), order the walk of the hierarchy or prune and/or revisit portions of the hierarchy."
510 msgstr "fts 関数群は、ファイル階層をたどるために提供されている。 簡単に概略すると次のようになる。 B<fts_open>()  関数は、他の fts 関数群に渡すための、ファイル階層の「ハンドル」を返す。 B<fts_read>()  関数は、ファイル階層中にある 1 つのファイルを記述する構造体へのポインターを返す。 B<fts_children>()  関数は、階層中のディレクトリにあるファイルを記述する構造体の リンクリストへのポインターを返す。 一般にディレクトリは、 preorder (正方向:下の階層のディレクトリをたどる前) と postorder (逆方向:下の階層のディレクトリをすべてたどった後) という、 異なる方向で 2 回たどられる。ファイルは 1 回たどられる。 ディレクトリ階層を「論理的に」(シンボリックリングが指すファイルを見て) 辿ることも、 物理的に (シンボリックリンク自身を見て) 辿ることも可能である。 また、階層中の移動の道筋を指示すること・ 余分なものを取り除くこと・階層の一部を再びたどることが可能である。"
511
512 #. type: Plain text
513 #: build/C/man3/fts.3:108
514 msgid "Two structures are defined (and typedef'd) in the include file I<E<lt>fts.hE<gt>>.  The first is I<FTS>, the structure that represents the file hierarchy itself.  The second is I<FTSENT>, the structure that represents a file in the file hierarchy.  Normally, an I<FTSENT> structure is returned for every file in the file hierarchy.  In this manual page, \"file\" and \"FTSENT structure\" are generally interchangeable.  The I<FTSENT> structure contains at least the following fields, which are described in greater detail below:"
515 msgstr "2 つの構造体がインクルードファイル I<E<lt>fts.hE<gt>> で定義されている (さらに typedef されている)。 1 つ目は、ファイル階層そのものを表現する I<FTS> 構造体である。 2 つ目は、ファイル階層中のファイルを表現する I<FTSENT> 構造体である。 I<FTSENT> 構造体は通常、ファイル階層中のすべてのファイルに対して返される。 この man ページでは、「ファイル」と 「I<FTSENT> 構造体」を一般に読み変えることができる。 I<FTSENT> 構造体は、少なくとも次のようなフィールドを持っており、 以下でより詳しく説明されている。"
516
517 #. type: Plain text
518 #: build/C/man3/fts.3:127
519 #, no-wrap
520 msgid ""
521 "typedef struct _ftsent {\n"
522 "    unsigned short fts_info;     /* flags for FTSENT structure */\n"
523 "    char          *fts_accpath;  /* access path */\n"
524 "    char          *fts_path;     /* root path */\n"
525 "    short          fts_pathlen;  /* strlen(fts_path) */\n"
526 "    char          *fts_name;     /* filename */\n"
527 "    short          fts_namelen;  /* strlen(fts_name) */\n"
528 "    short          fts_level;    /* depth (-1 to N) */\n"
529 "    int            fts_errno;    /* file errno */\n"
530 "    long           fts_number;   /* local numeric value */\n"
531 "    void          *fts_pointer;  /* local address value */\n"
532 "    struct ftsent *fts_parent;   /* parent directory */\n"
533 "    struct ftsent *fts_link;     /* next file structure */\n"
534 "    struct ftsent *fts_cycle;    /* cycle structure */\n"
535 "    struct stat   *fts_statp;    /* stat(2) information */\n"
536 "} FTSENT;\n"
537 msgstr ""
538 "typedef struct _ftsent {\n"
539 "    unsigned short fts_info;     /* FTSENT 構造体のためのフラグ */\n"
540 "    char          *fts_accpath;  /* アクセスパス */\n"
541 "    char          *fts_path;     /* ルートパス */\n"
542 "    short          fts_pathlen;  /* fts_path の長さ */\n"
543 "    char          *fts_name;     /* ファイル名 */\n"
544 "    short          fts_namelen;  /* fts_name の長さ */\n"
545 "    short          fts_level;    /* 深さ (-1 〜 N) */\n"
546 "    int            fts_errno;    /* ファイルのエラー番号 */\n"
547 "    long           fts_number;   /* ローカルな番号 */\n"
548 "    void          *fts_pointer;  /* ローカルなアドレス番号 */\n"
549 "    struct ftsent *fts_parent;   /* 親ディレクトリ */\n"
550 "    struct ftsent *fts_link;     /* 次のファイル構造体 */\n"
551 "    struct ftsent *fts_cycle;    /* 循環している構造体 */\n"
552 "    struct stat   *fts_statp;    /* stat(2) の情報 */\n"
553 "} FTSENT;\n"
554
555 #.  .Bl -tag -width "fts_namelen"
556 #. type: Plain text
557 #: build/C/man3/fts.3:132
558 msgid "These fields are defined as follows:"
559 msgstr "これらのフィールドは、次のように定義されている。"
560
561 #. type: TP
562 #: build/C/man3/fts.3:132
563 #, no-wrap
564 msgid "I<fts_info>"
565 msgstr "I<fts_info>"
566
567 #.  .Bl  -tag -width FTS_DEFAULT
568 #. type: Plain text
569 #: build/C/man3/fts.3:144
570 msgid "One of the following flags describing the returned I<FTSENT> structure and the file it represents.  With the exception of directories without errors (B<FTS_D>), all of these entries are terminal, that is, they will not be revisited, nor will any of their descendants be visited."
571 msgstr "このフィールドは、返された I<FTSENT> 構造体とファイルを説明する以下のフラグのいずれかを表している。 エラーのないディレクトリ (B<FTS_D>), の場合は例外として、それ以外のすべてのエントリーは終端である。 つまり、エントリーは再びたどられることもなく、 それより下の階層がたどられることもない。"
572
573 #. type: TP
574 #: build/C/man3/fts.3:145
575 #, no-wrap
576 msgid "B<FTS_D>"
577 msgstr "B<FTS_D>"
578
579 #. type: Plain text
580 #: build/C/man3/fts.3:148
581 msgid "A directory being visited in preorder."
582 msgstr "preorder でたどられるディレクトリ。"
583
584 #. type: TP
585 #: build/C/man3/fts.3:148
586 #, no-wrap
587 msgid "B<FTS_DC>"
588 msgstr "B<FTS_DC>"
589
590 #. type: Plain text
591 #: build/C/man3/fts.3:156
592 msgid "A directory that causes a cycle in the tree.  (The I<fts_cycle> field of the I<FTSENT> structure will be filled in as well.)"
593 msgstr "ツリーの中で循環しているディレクトリ。 (I<FTSENT> 構造体の I<fts_cycle> フィールドも同様に埋められる。)"
594
595 #. type: TP
596 #: build/C/man3/fts.3:156
597 #, no-wrap
598 msgid "B<FTS_DEFAULT>"
599 msgstr "B<FTS_DEFAULT>"
600
601 #. type: Plain text
602 #: build/C/man3/fts.3:164
603 msgid "Any I<FTSENT> structure that represents a file type not explicitly described by one of the other I<fts_info> values."
604 msgstr "ファイルタイプを表現する I<FTSENT> 構造体が、 I<fts_info> の他のいずれかの値で明示的に説明されていない。"
605
606 #. type: TP
607 #: build/C/man3/fts.3:164
608 #, no-wrap
609 msgid "B<FTS_DNR>"
610 msgstr "B<FTS_DNR>"
611
612 #. type: Plain text
613 #: build/C/man3/fts.3:170
614 msgid "A directory which cannot be read.  This is an error return, and the I<fts_errno> field will be set to indicate what caused the error."
615 msgstr "読み込みができないディレクトリ。 これはエラーの場合の返り値であり、 何がエラーを起こしたかを示すために I<fts_errno> フィールドが設定される。"
616
617 #. type: TP
618 #: build/C/man3/fts.3:170
619 #, no-wrap
620 msgid "B<FTS_DOT>"
621 msgstr "B<FTS_DOT>"
622
623 #. type: Plain text
624 #: build/C/man3/fts.3:180
625 msgid "A file named \".\" or \"..\" which was not specified as a filename to B<fts_open>()  (see B<FTS_SEEDOT>)."
626 msgstr "B<fts_open>()  へのファイル名として指定されなかった \".\" または \"..\" という名前のファイル (B<FTS_SEEDOT> を参照すること)。"
627
628 #. type: TP
629 #: build/C/man3/fts.3:180
630 #, no-wrap
631 msgid "B<FTS_DP>"
632 msgstr "B<FTS_DP>"
633
634 #. type: Plain text
635 #: build/C/man3/fts.3:190
636 msgid "A directory being visited in postorder.  The contents of the I<FTSENT> structure will be unchanged from when it was returned in preorder, that is, with the I<fts_info> field set to B<FTS_D>."
637 msgstr "postorder でたどられるディレクトリ。 I<FTSENT> 構造体の内容は、preorder のときに返された状態 (つまり、 I<fts_info> フィールドが B<FTS_D> に設定されている状態) から変更されない。"
638
639 #. type: TP
640 #: build/C/man3/fts.3:190
641 #, no-wrap
642 msgid "B<FTS_ERR>"
643 msgstr "B<FTS_ERR>"
644
645 #. type: Plain text
646 #: build/C/man3/fts.3:195
647 msgid "This is an error return, and the I<fts_errno> field will be set to indicate what caused the error."
648 msgstr "これはエラーの場合の返り値であり、 I<fts_errno> フィールドは、何がエラーを起こしたかを示す値に設定される。"
649
650 #. type: TP
651 #: build/C/man3/fts.3:195
652 #, no-wrap
653 msgid "B<FTS_F>"
654 msgstr "B<FTS_F>"
655
656 #. type: Plain text
657 #: build/C/man3/fts.3:198
658 msgid "A regular file."
659 msgstr "通常のファイル。"
660
661 #. type: TP
662 #: build/C/man3/fts.3:198
663 #, no-wrap
664 msgid "B<FTS_NS>"
665 msgstr "B<FTS_NS>"
666
667 #. type: Plain text
668 #: build/C/man3/fts.3:209
669 msgid "A file for which no B<stat>(2)  information was available.  The contents of the I<fts_statp> field are undefined.  This is an error return, and the I<fts_errno> field will be set to indicate what caused the error."
670 msgstr "B<stat>(2)  情報が得られなかったファイル。 I<fts_statp> フィールドの内容は定義されない。 これはエラーの場合の返り値であり、 I<fts_errno> フィールドは、何がエラーを起こしたかを示す値に設定される。"
671
672 #. type: TP
673 #: build/C/man3/fts.3:209
674 #, no-wrap
675 msgid "B<FTS_NSOK>"
676 msgstr "B<FTS_NSOK>"
677
678 #. type: Plain text
679 #: build/C/man3/fts.3:217
680 msgid "A file for which no B<stat>(2)  information was requested.  The contents of the I<fts_statp> field are undefined."
681 msgstr "B<stat>(2)  情報が要求されなかったファイル。 I<fts_statp> フィールドの内容は定義されない。"
682
683 #. type: TP
684 #: build/C/man3/fts.3:217
685 #, no-wrap
686 msgid "B<FTS_SL>"
687 msgstr "B<FTS_SL>"
688
689 #. type: Plain text
690 #: build/C/man3/fts.3:220
691 msgid "A symbolic link."
692 msgstr "シンボリックリンク。"
693
694 #. type: TP
695 #: build/C/man3/fts.3:220
696 #, no-wrap
697 msgid "B<FTS_SLNONE>"
698 msgstr "B<FTS_SLNONE>"
699
700 #.  .El
701 #. type: Plain text
702 #: build/C/man3/fts.3:228
703 msgid "A symbolic link with a nonexistent target.  The contents of the I<fts_statp> field reference the file characteristic information for the symbolic link itself."
704 msgstr "リンク先の存在しないシンボリックリンク。 I<fts_statp> フィールドの内容は、シンボリックリンクそのもののファイル特性情報を参照する。"
705
706 #. type: TP
707 #: build/C/man3/fts.3:229
708 #, no-wrap
709 msgid "I<fts_accpath>"
710 msgstr "I<fts_accpath>"
711
712 #. type: Plain text
713 #: build/C/man3/fts.3:232
714 msgid "A path for accessing the file from the current directory."
715 msgstr "現在のディレクトリからファイルにアクセスするためのパス。"
716
717 #. type: TP
718 #: build/C/man3/fts.3:232
719 #, no-wrap
720 msgid "I<fts_path>"
721 msgstr "I<fts_path>"
722
723 #. type: Plain text
724 #: build/C/man3/fts.3:238
725 msgid "The path for the file relative to the root of the traversal.  This path contains the path specified to B<fts_open>()  as a prefix."
726 msgstr "階層をたどるときのルートからみたファイルの相対的なパス。 このパスには、 B<fts_open>()  に指定したパスがプレフィックスとして含まれる。"
727
728 #. type: TP
729 #: build/C/man3/fts.3:238
730 #, no-wrap
731 msgid "I<fts_pathlen>"
732 msgstr "I<fts_pathlen>"
733
734 #. type: Plain text
735 #: build/C/man3/fts.3:242
736 msgid "The length of the string referenced by I<fts_path>."
737 msgstr "I<fts_path> で参照される文字列の長さ。"
738
739 #. type: TP
740 #: build/C/man3/fts.3:242
741 #, no-wrap
742 msgid "I<fts_name>"
743 msgstr "I<fts_name>"
744
745 #. type: Plain text
746 #: build/C/man3/fts.3:245
747 msgid "The name of the file."
748 msgstr "ファイルの名前。"
749
750 #. type: TP
751 #: build/C/man3/fts.3:245
752 #, no-wrap
753 msgid "I<fts_namelen>"
754 msgstr "I<fts_namelen>"
755
756 #. type: Plain text
757 #: build/C/man3/fts.3:249
758 msgid "The length of the string referenced by I<fts_name>."
759 msgstr "I<fts_name> で参照される文字列の長さ。"
760
761 #. type: TP
762 #: build/C/man3/fts.3:249
763 #, no-wrap
764 msgid "I<fts_level>"
765 msgstr "I<fts_level>"
766
767 #. type: Plain text
768 #: build/C/man3/fts.3:260
769 msgid "The depth of the traversal, numbered from -1 to N, where this file was found.  The I<FTSENT> structure representing the parent of the starting point (or root)  of the traversal is numbered -1, and the I<FTSENT> structure for the root itself is numbered 0."
770 msgstr "階層をたどって、このファイルがみつかった深さ。 -1 〜 N の数値で表される。 階層をたどるときの出発点 (ルート) の親ディレクトリを表す I<FTSENT> 構造体では -1 となる。 また、ルート自身の I<FTSENT> 構造体では 0 になる。"
771
772 #. type: TP
773 #: build/C/man3/fts.3:260
774 #, no-wrap
775 msgid "I<fts_errno>"
776 msgstr "I<fts_errno>"
777
778 #. type: Plain text
779 #: build/C/man3/fts.3:283
780 msgid "Upon return of a I<FTSENT> structure from the B<fts_children>()  or B<fts_read>()  functions, with its I<fts_info> field set to B<FTS_DNR>, B<FTS_ERR> or B<FTS_NS>, the I<fts_errno> field contains the value of the external variable I<errno> specifying the cause of the error.  Otherwise, the contents of the I<fts_errno> field are undefined."
781 msgstr "関数 B<fts_children>()  と B<fts_read>()  から返される I<FTSENT> 構造体の I<fts_info> フィールドが B<FTS_DNR>, B<FTS_ERR>, B<FTS_NS> に設定されている場合、 I<fts_errno> フィールドにはエラーの原因を示す外部変数 I<errno> の値が入る。 それ以外の場合、 I<fts_errno> フィールドの内容は定義されない。"
782
783 #. type: TP
784 #: build/C/man3/fts.3:283
785 #, no-wrap
786 msgid "I<fts_number>"
787 msgstr "I<fts_number>"
788
789 #. type: Plain text
790 #: build/C/man3/fts.3:289
791 msgid "This field is provided for the use of the application program and is not modified by the fts functions.  It is initialized to 0."
792 msgstr "このフィールドは、アプリケーションプログラムから使用するために提供され、 fts 関数群では変更されない。 このフィールドは 0 で初期化される。"
793
794 #. type: TP
795 #: build/C/man3/fts.3:289
796 #, no-wrap
797 msgid "I<fts_pointer>"
798 msgstr "I<fts_pointer>"
799
800 #. type: Plain text
801 #: build/C/man3/fts.3:296
802 msgid "This field is provided for the use of the application program and is not modified by the fts functions.  It is initialized to NULL."
803 msgstr "このフィールドは、アプリケーションプログラムから使用するために提供され、 fts 関数群では変更されない。 このフィールドは B<NULL> で初期化される。"
804
805 #. type: TP
806 #: build/C/man3/fts.3:296
807 #, no-wrap
808 msgid "I<fts_parent>"
809 msgstr "I<fts_parent>"
810
811 #. type: Plain text
812 #: build/C/man3/fts.3:310
813 msgid "A pointer to the I<FTSENT> structure referencing the file in the hierarchy immediately above the current file, that is, the directory of which this file is a member.  A parent structure for the initial entry point is provided as well, however, only the I<fts_level>, I<fts_number> and I<fts_pointer> fields are guaranteed to be initialized."
814 msgstr "現在のファイルのすぐ上の階層にあるファイル (つまり、現在のファイルがメンバーになっているディレクトリ) を参照する I<FTSENT> 構造体へのポインター。 最初の出発点に対しても、親となる構造体は与えられる。 しかし、 I<fts_level>, I<fts_number>, I<fts_pointer> フィールドのみの初期化しか保証されない。"
815
816 #. type: TP
817 #: build/C/man3/fts.3:310
818 #, no-wrap
819 msgid "I<fts_link>"
820 msgstr "I<fts_link>"
821
822 #. type: Plain text
823 #: build/C/man3/fts.3:321
824 msgid "Upon return from the B<fts_children>()  function, the I<fts_link> field points to the next structure in the NULL-terminated linked list of directory members.  Otherwise, the contents of the I<fts_link> field are undefined."
825 msgstr "B<fts_children>()  から返される場合、 I<fts_link> フィールドはディレクトリメンバーのヌル終端されたリンクリストの形式で、 次の構造体を指し示す。 それ以外の場合、 I<fts_link> フィールドは定義されない。"
826
827 #. type: TP
828 #: build/C/man3/fts.3:321
829 #, no-wrap
830 msgid "I<fts_cycle>"
831 msgstr "I<fts_cycle>"
832
833 #. type: Plain text
834 #: build/C/man3/fts.3:337
835 msgid "If a directory causes a cycle in the hierarchy (see B<FTS_DC>), either because of a hard link between two directories, or a symbolic link pointing to a directory, the I<fts_cycle> field of the structure will point to the I<FTSENT> structure in the hierarchy that references the same file as the current I<FTSENT> structure.  Otherwise, the contents of the I<fts_cycle> field are undefined."
836 msgstr "2 つのディレクトリにハードリンクが張られているため、 または、シンボリックリンクがあるディレクトリを指しているために、 ディレクトリが循環する階層構造を作っている場合 (B<FTS_DC> を参照)、 構造体の I<fts_cycle> フィールドは、階層中で現在の I<FTSENT> 構造体と同じファイルを参照している I<FTSENT> 構造体を指し示す。 それ以外の場合、 I<fts_cycle> フィールドは定義されない。"
837
838 #. type: TP
839 #: build/C/man3/fts.3:337
840 #, no-wrap
841 msgid "I<fts_statp>"
842 msgstr "I<fts_statp>"
843
844 #.  .El
845 #. type: Plain text
846 #: build/C/man3/fts.3:343
847 msgid "A pointer to B<stat>(2)  information for the file."
848 msgstr "このファイルの B<stat>(2)  情報へのポインター。"
849
850 #. type: Plain text
851 #: build/C/man3/fts.3:370
852 msgid "A single buffer is used for all of the paths of all of the files in the file hierarchy.  Therefore, the I<fts_path> and I<fts_accpath> fields are guaranteed to be null-terminated I<only> for the file most recently returned by B<fts_read>().  To use these fields to reference any files represented by other I<FTSENT> structures will require that the path buffer be modified using the information contained in that I<FTSENT> structure's I<fts_pathlen> field.  Any such modifications should be undone before further calls to B<fts_read>()  are attempted.  The I<fts_name> field is always null-terminated."
853 msgstr "ファイル階層中のすべてのファイルのパスに対して、 ただ 1 つのバッファーが使われる。 したがって、 I<fts_path> と I<fts_accpath> フィールドは、 B<fts_read>()  によって返された最も新しいファイルに対して「のみ」ヌル終端されることが保証される。 これらのフィールドを、他の I<FTSENT> 構造体で表現されるファイルを参照するために使うには、 I<FTSENT> 構造体の I<fts_pathlen> フィールドにある情報を使ってパスのバッファーを修正する必要がある。 これらの修正は、さらに B<fts_read>()  を呼び出そうとする場合には、元に戻しておかなければならない。 I<fts_name> フィールドは、常に B<NUL> 終端される。"
854
855 #. type: SS
856 #: build/C/man3/fts.3:370
857 #, no-wrap
858 msgid "fts_open()"
859 msgstr "fts_open()"
860
861 #. type: Plain text
862 #: build/C/man3/fts.3:377
863 msgid "The B<fts_open>()  function takes a pointer to an array of character pointers naming one or more paths which make up a logical file hierarchy to be traversed.  The array must be terminated by a null pointer."
864 msgstr "B<fts_open>()  関数は、文字列ポインターの配列へのポインターを引き数に取る。 この文字列ポインターは、論理ファイル階層をつくる 1 つ以上のパスの名前になる。 配列は、 null ポインターで終端されなければならない。"
865
866 #.  .Bl -tag -width "FTS_PHYSICAL"
867 #. type: Plain text
868 #: build/C/man3/fts.3:387
869 msgid "There are a number of options, at least one of which (either B<FTS_LOGICAL> or B<FTS_PHYSICAL>)  must be specified.  The options are selected by ORing the following values:"
870 msgstr "多くのオプションがあり、少なくとも 1 つ (B<FTS_LOGICAL> または B<FTS_PHYSICAL>)  が指定されなければならない。 オプションは以下の値の論理和をとって選択する。"
871
872 #. type: TP
873 #: build/C/man3/fts.3:387
874 #, no-wrap
875 msgid "B<FTS_COMFOLLOW>"
876 msgstr "B<FTS_COMFOLLOW>"
877
878 #. type: Plain text
879 #: build/C/man3/fts.3:393
880 msgid "This option causes any symbolic link specified as a root path to be followed immediately whether or not B<FTS_LOGICAL> is also specified."
881 msgstr "このオプションは、 B<FTS_LOGICAL> の指定にかかわらず、 ルートパスに指定されたシンボリックリンクをすぐにたどらせる。"
882
883 #. type: TP
884 #: build/C/man3/fts.3:393
885 #, no-wrap
886 msgid "B<FTS_LOGICAL>"
887 msgstr "B<FTS_LOGICAL>"
888
889 #. type: Plain text
890 #: build/C/man3/fts.3:412
891 msgid "This option causes the fts routines to return I<FTSENT> structures for the targets of symbolic links instead of the symbolic links themselves.  If this option is set, the only symbolic links for which I<FTSENT> structures are returned to the application are those referencing nonexistent files.  Either B<FTS_LOGICAL> or B<FTS_PHYSICAL> I<must> be provided to the B<fts_open>()  function."
892 msgstr "このオプションは、 fts ルーチンにシンボリックリンクそのものではなく、 シンボリックリンクが指しているファイルの I<FTSENT> 構造体を返させる。 このオプションが設定された場合、 I<FTSENT> 構造体がアプリケーションに返されるような シンボリックリンクのみが、存在しないファイルを参照している。 B<FTS_LOGICAL> または B<FTS_PHYSICAL> のどちらかを、 B<fts_open>()  関数に与えなければ「ならない」。"
893
894 #. type: TP
895 #: build/C/man3/fts.3:412
896 #, no-wrap
897 msgid "B<FTS_NOCHDIR>"
898 msgstr "B<FTS_NOCHDIR>"
899
900 #. type: Plain text
901 #: build/C/man3/fts.3:428
902 msgid "As a performance optimization, the fts functions change directories as they walk the file hierarchy.  This has the side-effect that an application cannot rely on being in any particular directory during the traversal.  The B<FTS_NOCHDIR> option turns off this optimization, and the fts functions will not change the current directory.  Note that applications should not themselves change their current directory and try to access files unless B<FTS_NOCHDIR> is specified and absolute pathnames were provided as arguments to B<fts_open>()."
903 msgstr "パフォーマンスの最適化のため、 fts 関数群はファイル階層をたどるときディレクトリを変える。 これには、階層をたどっている間は アプリケーションがある特定のディレクトリにいるということに 依存できない、という副作用がある。 B<FTS_NOCHDIR> オプションで最適化を無効にすると、 fts 関数群は現在のディレクトリを変更しない。 B<FTS_NOCHDIR> が指定され、かつ B<fts_open>()  の引き数として絶対パス名が与えられたとき以外、アプリケーションは、 自らカレントディレクトリを変更したり、 ファイルにアクセスしたりすべきではない、という点に注意すること。"
904
905 #. type: TP
906 #: build/C/man3/fts.3:428
907 #, no-wrap
908 msgid "B<FTS_NOSTAT>"
909 msgstr "B<FTS_NOSTAT>"
910
911 #. type: Plain text
912 #: build/C/man3/fts.3:444
913 msgid "By default, returned I<FTSENT> structures reference file characteristic information (the I<statp> field) for each file visited.  This option relaxes that requirement as a performance optimization, allowing the fts functions to set the I<fts_info> field to B<FTS_NSOK> and leave the contents of the I<statp> field undefined."
914 msgstr "デフォルトでは、返された I<FTSENT> 構造体は、たどられた各ファイルについてのファイル特徴情報 I<( statp> フィールド) を参照する。 このオプションは、 fts 関数群が I<fts_info> フィールドを B<FTS_NSOK> に設定し I<statp> の内容を定義されないままにすることを許すことにより、 パフォーマンスの最適化に必要なものを緩和する。"
915
916 #. type: TP
917 #: build/C/man3/fts.3:444
918 #, no-wrap
919 msgid "B<FTS_PHYSICAL>"
920 msgstr "B<FTS_PHYSICAL>"
921
922 #. type: Plain text
923 #: build/C/man3/fts.3:463
924 msgid "This option causes the fts routines to return I<FTSENT> structures for symbolic links themselves instead of the target files they point to.  If this option is set, I<FTSENT> structures for all symbolic links in the hierarchy are returned to the application.  Either B<FTS_LOGICAL> or B<FTS_PHYSICAL> I<must> be provided to the B<fts_open>()  function."
925 msgstr "このオプションは、 fts ルーチンにシンボリックリンクが指しているファイルではなく、 シンボリックリンク自身の I<FTSENT> 構造体を返させる。 このオプションが設定されると、階層中のすべてのシンボリックリンクの I<FTSENT> 構造体がアプリケーションに返される。 B<FTS_LOGICAL> または B<FTS_PHYSICAL> のどちらかを B<fts_open>()  関数に与えなければ「ならない」。"
926
927 #. type: TP
928 #: build/C/man3/fts.3:463
929 #, no-wrap
930 msgid "B<FTS_SEEDOT>"
931 msgstr "B<FTS_SEEDOT>"
932
933 #. type: Plain text
934 #: build/C/man3/fts.3:476
935 msgid "By default, unless they are specified as path arguments to B<fts_open>(), any files named \".\" or \"..\" encountered in the file hierarchy are ignored.  This option causes the fts routines to return I<FTSENT> structures for them."
936 msgstr "デフォルトでは、 B<fts_open>()  のパス引き数として指定されない限り、ファイル階層中にある \".\" または \"..\" という名前のファイルは無視される。 このオプションは、 fts ルーチンにこれらのファイルの I<FTSENT> 構造体を返させる。"
937
938 #. type: TP
939 #: build/C/man3/fts.3:476
940 #, no-wrap
941 msgid "B<FTS_XDEV>"
942 msgstr "B<FTS_XDEV>"
943
944 #.  .El
945 #. type: Plain text
946 #: build/C/man3/fts.3:482
947 msgid "This option prevents fts from descending into directories that have a different device number than the file from which the descent began."
948 msgstr "このオプションは、 fts が下り始めのファイルとは異なるデバイス番号を持っている ディレクトリに下りるのを阻止する。"
949
950 #. type: Plain text
951 #: build/C/man3/fts.3:521
952 msgid "The argument B<compar>()  specifies a user-defined function which may be used to order the traversal of the hierarchy.  It takes two pointers to pointers to I<FTSENT> structures as arguments and should return a negative value, zero, or a positive value to indicate if the file referenced by its first argument comes before, in any order with respect to, or after, the file referenced by its second argument.  The I<fts_accpath>, I<fts_path> and I<fts_pathlen> fields of the I<FTSENT> structures may I<never> be used in this comparison.  If the I<fts_info> field is set to B<FTS_NS> or B<FTS_NSOK>, the I<fts_statp> field may not either.  If the B<compar>()  argument is NULL, the directory traversal order is in the order listed in I<path_argv> for the root paths, and in the order listed in the directory for everything else."
953 msgstr "引き数 B<compar>()  は、階層をたどる順番を決めるのに使われるユーザー定義関数を指定する。 この関数は、引き数として I<FTSENT> 構造体のポインターのポインターを 2 つとり、 1 番目の引き数で参照されているファイルが 2 番目の引き数で参照されているファイルより 前にある場合は負の値・同じ場合はゼロ・後にある場合は正の値を 返さなければならない。 I<FTSENT> 構造体の I<fts_accpath>, I<fts_path>, I<fts_pathlen> フィールドは、この比較に「絶対」使ってはいけない。 I<fts_info> フィールドが B<FTS_NS> または B<FTS_NSOK> に設定される場合、 I<fts_statp> フィールドはこれらのどちらでもない。 B<compar>()  引き数が B<NULL> の場合、ディレクトリをたどる順番は、ルートパスについては I<path_argv> のなかでリストされた順番で、 その他のファイルについてはディレクトリ内でリストされた順番となる。"
954
955 #. type: SS
956 #: build/C/man3/fts.3:521
957 #, no-wrap
958 msgid "fts_read()"
959 msgstr "fts_read()"
960
961 #. type: Plain text
962 #: build/C/man3/fts.3:534
963 msgid "The B<fts_read>()  function returns a pointer to an I<FTSENT> structure describing a file in the hierarchy.  Directories (that are readable and do not cause cycles) are visited at least twice, once in preorder and once in postorder.  All other files are visited at least once.  (Hard links between directories that do not cause cycles or symbolic links to symbolic links may cause files to be visited more than once, or directories more than twice.)"
964 msgstr "B<fts_read>()  関数は、階層中のファイルを記述する I<FTSENT> 構造体へのポインターを返す。 (読み込み可能で、循環していない) ディレクトリは、 1 回は preorder で、もう 1 回は postorder で、少なくとも 2 回たどられる。 他のファイルは、少なくとも 1 回たどられる。 (ディレクトリ間のハードリンクによって 循環やシンボリックリンクへのシンボリックリンクが起こらない場合、 ファイルは 2 回以上、ディレクトリは 3 回以上たどられる。)"
965
966 #. type: Plain text
967 #: build/C/man3/fts.3:555
968 msgid "If all the members of the hierarchy have been returned, B<fts_read>()  returns NULL and sets the external variable I<errno> to 0.  If an error unrelated to a file in the hierarchy occurs, B<fts_read>()  returns NULL and sets I<errno> appropriately.  If an error related to a returned file occurs, a pointer to an I<FTSENT> structure is returned, and I<errno> may or may not have been set (see I<fts_info>)."
969 msgstr "階層中のすべてのメンバーが返された場合、 B<fts_read>()  は B<NULL> を返し、外部変数 I<errno> を 0 にする。 階層中のファイルに関係しないエラーが起こった場合、 B<fts_read>()  は B<NULL> を返し、 I<errno> をエラーに対応した値にする。 階層中のファイルに関係したエラーが起こった場合、 I<FTSENT> 構造体へのポインターが返され、 I<errno> は設定される場合と設定されない場合がある (I<fts_info> を参照すること)。"
970
971 #. type: Plain text
972 #: build/C/man3/fts.3:572
973 msgid "The I<FTSENT> structures returned by B<fts_read>()  may be overwritten after a call to B<fts_close>()  on the same file hierarchy stream, or, after a call to B<fts_read>()  on the same file hierarchy stream unless they represent a file of type directory, in which case they will not be overwritten until after a call to B<fts_read>()  after the I<FTSENT> structure has been returned by the function B<fts_read>()  in postorder."
974 msgstr "B<fts_read>()  によって返される I<FTSENT> 構造体は、同じファイル階層ストリームへの B<fts_close>()  の呼出しの後に上書きされる。 また、同じファイル階層ストリームへの B<fts_read>()  の呼出しの後でも、構造体がディレクトリを表現していない限り上書きされる。 この場合、 B<fts_read>()  関数によって postorder で I<FTSENT> 構造体が返された後、 B<fts_read>()  の呼出しがあるまで、 これらの構造体は上書きされない。"
975
976 #. type: SS
977 #: build/C/man3/fts.3:572
978 #, no-wrap
979 msgid "fts_children()"
980 msgstr "fts_children()"
981
982 #. type: Plain text
983 #: build/C/man3/fts.3:590
984 msgid "The B<fts_children>()  function returns a pointer to an I<FTSENT> structure describing the first entry in a NULL-terminated linked list of the files in the directory represented by the I<FTSENT> structure most recently returned by B<fts_read>().  The list is linked through the I<fts_link> field of the I<FTSENT> structure, and is ordered by the user-specified comparison function, if any.  Repeated calls to B<fts_children>()  will re-create this linked list."
985 msgstr "B<fts_children>()  関数は、 I<FTSENT> 構造体へのポインターを返す。 この構造体は、( B<fts_read>()  で最も新しく返された I<FTSENT> 構造体で表現されるディレクトリにあるファイルの) ヌル終端されたリンクリストの最初のエントリーを記述する。 このリストは、 I<FTSENT> 構造体の I<fts_link> フィールドを使ってリンクされ、 ユーザー指定の比較関数がある場合は、それで順序づけられる。 B<fts_children>()  の呼出しを繰り返すことで、 このリンクリストは再生成される。"
986
987 #. type: Plain text
988 #: build/C/man3/fts.3:618
989 msgid "As a special case, if B<fts_read>()  has not yet been called for a hierarchy, B<fts_children>()  will return a pointer to the files in the logical directory specified to B<fts_open>(), that is, the arguments specified to B<fts_open>().  Otherwise, if the I<FTSENT> structure most recently returned by B<fts_read>()  is not a directory being visited in preorder, or the directory does not contain any files, B<fts_children>()  returns NULL and sets I<errno> to zero.  If an error occurs, B<fts_children>()  returns NULL and sets I<errno> appropriately."
990 msgstr "特別な場合として、 B<fts_read>()  がファイル階層について呼ばれていない場合、 B<fts_children>()  は B<fts_open>()  に指定された論理ディレクトリ (つまり、 B<fts_open>()  に指定された引き数) の中にあるファイルへのポインターを返す。 それ以外の場合で、 B<fts_read>()  によって最も新しく返された I<FTSENT> 構造体が preorder でたどられたディレクトリでない場合や 何も含んでいないディレクトリの場合は、 B<fts_children>()  は B<NULL> を返し、 I<errno> を 0 にする。 エラーが起こった場合、 B<fts_children>()  は B<NULL> を返し、 I<errno> をエラーに対応した値にする。"
991
992 #. type: Plain text
993 #: build/C/man3/fts.3:629
994 msgid "The I<FTSENT> structures returned by B<fts_children>()  may be overwritten after a call to B<fts_children>(), B<fts_close>()  or B<fts_read>()  on the same file hierarchy stream."
995 msgstr "B<fts_children>()  によって返される I<FTSENT> 構造体は、同じファイル階層ストリームへの B<fts_children>(), B<fts_close>(), B<fts_read>()  の呼出しの後に上書きされる場合がある。"
996
997 #.  .Bl -tag -width FTS_NAMEONLY
998 #. type: Plain text
999 #: build/C/man3/fts.3:633
1000 msgid "I<Option> may be set to the following value:"
1001 msgstr "I<option> は、次の値に設定できる。"
1002
1003 #. type: TP
1004 #: build/C/man3/fts.3:633
1005 #, no-wrap
1006 msgid "B<FTS_NAMEONLY>"
1007 msgstr "B<FTS_NAMEONLY>"
1008
1009 #.  .El
1010 #. type: Plain text
1011 #: build/C/man3/fts.3:643
1012 msgid "Only the names of the files are needed.  The contents of all the fields in the returned linked list of structures are undefined with the exception of the I<fts_name> and I<fts_namelen> fields."
1013 msgstr "ファイル名のみが必要とされている。 返された構造体のリンクリストの I<fts_name>, I<fts_namelen> フィールド以外の すべてのフィールドの内容は定義されない。"
1014
1015 #. type: SS
1016 #: build/C/man3/fts.3:643
1017 #, no-wrap
1018 msgid "fts_set()"
1019 msgstr "fts_set()"
1020
1021 #.  .Bl -tag -width FTS_PHYSICAL
1022 #. type: Plain text
1023 #: build/C/man3/fts.3:658
1024 msgid "The function B<fts_set>()  allows the user application to determine further processing for the file I<f> of the stream I<ftsp>.  The B<fts_set>()  function returns 0 on success, and -1 if an error occurs.  I<Option> must be set to one of the following values:"
1025 msgstr "関数 B<fts_set>()  は、ユーザーアプリケーションが ストリーム I<ftsp> のファイル I<f> について更なる処理を決定すること許す。 B<fts_set>()  関数は、成功した場合は 0 を、エラーが起こった場合は -1 を返す。 I<option> は、次の値のいずれか 1 つに設定されなければならない。"
1026
1027 #. type: TP
1028 #: build/C/man3/fts.3:658
1029 #, no-wrap
1030 msgid "B<FTS_AGAIN>"
1031 msgstr "B<FTS_AGAIN>"
1032
1033 #. type: Plain text
1034 #: build/C/man3/fts.3:676
1035 msgid "Revisit the file; any file type may be revisited.  The next call to B<fts_read>()  will return the referenced file.  The I<fts_stat> and I<fts_info> fields of the structure will be reinitialized at that time, but no other fields will have been changed.  This option is meaningful only for the most recently returned file from B<fts_read>().  Normal use is for postorder directory visits, where it causes the directory to be revisited (in both preorder and postorder) as well as all of its descendants."
1036 msgstr "ファイルを再びたどる。すべてのファイルタイプが再びたどられる。 次の B<fts_read>()  の呼出しにより、参照されているファイルが返される。 構造体の I<fts_stat>, I<fts_info> フィールドはこの時に初期化されるが、他のフィールドは変更されない。 このオプションは、 B<fts_read>()  によって最も新しく返されたファイルについてのみ意味を持つ。 通常は、postorder でディレクトリをたどる場合に使用し、 その下の階層と同様に、 ディレクトリを (preorder と postorder の両方で) 再びたどらせる。"
1037
1038 #. type: TP
1039 #: build/C/man3/fts.3:676
1040 #, no-wrap
1041 msgid "B<FTS_FOLLOW>"
1042 msgstr "B<FTS_FOLLOW>"
1043
1044 #. type: Plain text
1045 #: build/C/man3/fts.3:704
1046 msgid "The referenced file must be a symbolic link.  If the referenced file is the one most recently returned by B<fts_read>(), the next call to B<fts_read>()  returns the file with the I<fts_info> and I<fts_statp> fields reinitialized to reflect the target of the symbolic link instead of the symbolic link itself.  If the file is one of those most recently returned by B<fts_children>(), the I<fts_info> and I<fts_statp> fields of the structure, when returned by B<fts_read>(), will reflect the target of the symbolic link instead of the symbolic link itself.  In either case, if the target of the symbolic link does not exist, the fields of the returned structure will be unchanged and the I<fts_info> field will be set to B<FTS_SLNONE>."
1047 msgstr "参照されてるファイルは、シンボリックリンクでなければならない。 参照されているファイルが B<fts_read>()  によって最も新しく返されたものである場合、次の B<fts_read>()  の呼出しでは、シンボリックリンクそのものではなく、 シンボリックリンクが指している先を反映するように I<fts_info>, I<fts_statp> を再び初期化したファイルが返される。 ファイルが B<fts_children>()  によって最も新しく返されたものの 1 つである場合、 B<fts_read>()  によって返されたとき、構造体の I<fts_info>, I<fts_statp> フィールドは、シンボリックリンクそのものではなく、 シンボリックリンクが指している先を反映する。 どちらの場合でも、シンボリックリンクが指している先がないときは、 返された構造体のフィールドは変更されず、 I<fts_info> フィールドが B<FTS_SLNONE> に設定される。"
1048
1049 #. type: Plain text
1050 #: build/C/man3/fts.3:708
1051 msgid "If the target of the link is a directory, the preorder return, followed by the return of all of its descendants, followed by a postorder return, is done."
1052 msgstr "リンク先がディレクトリの場合、 ファイルが preorder で返された後、下の階層のすべてファイルが返され、 その後で postorder で返される。"
1053
1054 #. type: TP
1055 #: build/C/man3/fts.3:708
1056 #, no-wrap
1057 msgid "B<FTS_SKIP>"
1058 msgstr "B<FTS_SKIP>"
1059
1060 #.  .El
1061 #. type: Plain text
1062 #: build/C/man3/fts.3:716
1063 msgid "No descendants of this file are visited.  The file may be one of those most recently returned by either B<fts_children>()  or B<fts_read>()."
1064 msgstr "このファイルの下の階層はたどられない。 このファイルは、 B<fts_children>()  または B<fts_read>()  のどちらかによって最も新しく返されたものの 1 つである。"
1065
1066 #. type: SS
1067 #: build/C/man3/fts.3:716
1068 #, no-wrap
1069 msgid "fts_close()"
1070 msgstr "fts_close()"
1071
1072 #. type: Plain text
1073 #: build/C/man3/fts.3:729
1074 msgid "The B<fts_close>()  function closes a file hierarchy stream I<ftsp> and restores the current directory to the directory from which B<fts_open>()  was called to open I<ftsp>.  The B<fts_close>()  function returns 0 on success, and -1 if an error occurs."
1075 msgstr "B<fts_close>()  関数は、ファイル階層ストリーム I<ftsp> を閉じる。そして、現在のディレクトリを I<ftsp> を開くために B<fts_open>()  が呼ばれたディレクトリに復元する。 B<fts_close>()  関数は、成功した場合は 0 を、エラーが起こった場合は -1 を返す。"
1076
1077 #. type: SH
1078 #: build/C/man3/fts.3:729 build/C/man2/getxattr.2:106
1079 #: build/C/man3/isfdtype.3:83 build/C/man2/listxattr.2:127
1080 #: build/C/man2/mount.2:318 build/C/man2/removexattr.2:83
1081 #: build/C/man2/setxattr.2:110 build/C/man2/spu_create.2:172
1082 #: build/C/man2/spu_run.2:153 build/C/man2/stat.2:522
1083 #: build/C/man2/statfs.2:162 build/C/man3/statvfs.3:101
1084 #: build/C/man2/sysfs.2:79 build/C/man2/umount.2:104 build/C/man2/ustat.2:79
1085 #, no-wrap
1086 msgid "ERRORS"
1087 msgstr "エラー"
1088
1089 #. type: Plain text
1090 #: build/C/man3/fts.3:738
1091 msgid "The function B<fts_open>()  may fail and set I<errno> for any of the errors specified for B<open>(2)  and B<malloc>(3)."
1092 msgstr "関数 B<fts_open>()  が失敗した場合、 I<errno> は、ライブラリ関数 B<open>(2)  と B<malloc>(3)  に対して指定されるエラーに設定される。"
1093
1094 #. type: Plain text
1095 #: build/C/man3/fts.3:747
1096 msgid "The function B<fts_close>()  may fail and set I<errno> for any of the errors specified for B<chdir>(2)  and B<close>(2)."
1097 msgstr "関数 B<fts_close>()  が失敗した場合、 I<errno> は、ライブラリ関数 B<chdir>(2)  と B<close>(2)  に対して指定されるエラーに設定される。"
1098
1099 #. type: Plain text
1100 #: build/C/man3/fts.3:761
1101 msgid "The functions B<fts_read>()  and B<fts_children>()  may fail and set I<errno> for any of the errors specified for B<chdir>(2), B<malloc>(3), B<opendir>(3), B<readdir>(3), and B<stat>(2)."
1102 msgstr "関数 B<fts_read>()  と B<fts_children>()  が失敗した場合、 I<errno> は、ライブラリ関数 B<chdir>(2), B<malloc>(3), B<opendir>(3), B<readdir>(3), B<stat>(2)  に対して指定されるエラーに設定される。"
1103
1104 #. type: Plain text
1105 #: build/C/man3/fts.3:770
1106 msgid "In addition, B<fts_children>(), B<fts_open>(), and B<fts_set>()  may fail and set I<errno> as follows:"
1107 msgstr "更に、 B<fts_children>(), B<fts_open>(), B<fts_set>()  が失敗した場合、 I<errno> が次の値にされる。"
1108
1109 #. type: TP
1110 #: build/C/man3/fts.3:770 build/C/man2/mount.2:354
1111 #: build/C/man2/spu_create.2:186 build/C/man2/spu_run.2:174
1112 #: build/C/man2/stat.2:585 build/C/man2/sysfs.2:84 build/C/man2/umount.2:125
1113 #: build/C/man2/umount.2:129 build/C/man2/ustat.2:84
1114 #, no-wrap
1115 msgid "B<EINVAL>"
1116 msgstr "B<EINVAL>"
1117
1118 #. type: Plain text
1119 #: build/C/man3/fts.3:773
1120 msgid "The options were invalid."
1121 msgstr "オプションが無効であった。"
1122
1123 #. type: SH
1124 #: build/C/man3/fts.3:773 build/C/man3/ftw.3:339 build/C/man2/getxattr.2:130
1125 #: build/C/man2/listxattr.2:142 build/C/man2/mount.2:412
1126 #: build/C/man2/removexattr.2:99 build/C/man2/setxattr.2:141
1127 #: build/C/man2/spu_create.2:246 build/C/man2/spu_run.2:188
1128 #: build/C/man2/stat.2:595 build/C/man2/umount.2:156
1129 #, no-wrap
1130 msgid "VERSIONS"
1131 msgstr "バージョン"
1132
1133 #. type: Plain text
1134 #: build/C/man3/fts.3:775
1135 msgid "These functions are available in Linux since glibc2."
1136 msgstr "これらの関数は、Linux では glibc2 から使用可能である。"
1137
1138 #. type: SH
1139 #: build/C/man3/fts.3:775 build/C/man3/ftw.3:342 build/C/man3/getfsent.3:115
1140 #: build/C/man3/getmntent.3:202 build/C/man2/getxattr.2:133
1141 #: build/C/man3/isfdtype.3:88 build/C/man2/listxattr.2:145
1142 #: build/C/man2/mount.2:423 build/C/man2/removexattr.2:102
1143 #: build/C/man2/setxattr.2:144 build/C/man2/spu_create.2:250
1144 #: build/C/man2/spu_run.2:192 build/C/man2/stat.2:599
1145 #: build/C/man2/statfs.2:218 build/C/man3/statvfs.3:164
1146 #: build/C/man2/sysfs.2:92 build/C/man2/umount.2:162 build/C/man2/ustat.2:94
1147 #, no-wrap
1148 msgid "CONFORMING TO"
1149 msgstr "準拠"
1150
1151 #. type: Plain text
1152 #: build/C/man3/fts.3:777
1153 msgid "4.4BSD."
1154 msgstr "4.4BSD."
1155
1156 #. type: SH
1157 #: build/C/man3/fts.3:777 build/C/man2/statfs.2:305 build/C/man2/sysfs.2:101
1158 #, no-wrap
1159 msgid "BUGS"
1160 msgstr "バグ"
1161
1162 #.  https://sourceware.org/bugzilla/show_bug.cgi?id=15838
1163 #.  https://sourceware.org/bugzilla/show_bug.cgi?id=11460
1164 #.  The following statement is years old, and seems no closer to
1165 #.  being true -- mtk
1166 #.  The
1167 #.  .I fts
1168 #.  utility is expected to be included in a future
1169 #.  POSIX.1
1170 #.  revision.
1171 #. type: Plain text
1172 #: build/C/man3/fts.3:790
1173 msgid "All of the APIs described in this man page are not safe when compiling a program using the LFS APIs (e.g., when compiling with I<-D_FILE_OFFSET_BITS=64>)."
1174 msgstr "このマニュアルページで説明した API はいずれも、 LFS API を使うプログラムをコンパイルする場合 (例えば、I<-D_FILE_OFFSET_BITS=64> でコンパイルする場合など)、安全ではない。"
1175
1176 #. type: Plain text
1177 #: build/C/man3/fts.3:796
1178 msgid "B<find>(1), B<chdir>(2), B<stat>(2), B<ftw>(3), B<qsort>(3)"
1179 msgstr "B<find>(1), B<chdir>(2), B<stat>(2), B<ftw>(3), B<qsort>(3)"
1180
1181 #. type: TH
1182 #: build/C/man3/ftw.3:35
1183 #, no-wrap
1184 msgid "FTW"
1185 msgstr "FTW"
1186
1187 #. type: TH
1188 #: build/C/man3/ftw.3:35
1189 #, no-wrap
1190 msgid "2014-12-31"
1191 msgstr "2014-12-31"
1192
1193 #. type: Plain text
1194 #: build/C/man3/ftw.3:38
1195 msgid "ftw, nftw - file tree walk"
1196 msgstr "ftw, nftw - ファイルツリーを歩きまわる"
1197
1198 #. type: Plain text
1199 #: build/C/man3/ftw.3:41
1200 #, no-wrap
1201 msgid "B<#include E<lt>ftw.hE<gt>>\n"
1202 msgstr "B<#include E<lt>ftw.hE<gt>>\n"
1203
1204 #. type: Plain text
1205 #: build/C/man3/ftw.3:46
1206 #, no-wrap
1207 msgid ""
1208 "B<int ftw(const char *>I<dirpath>B<,>\n"
1209 "B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>\n"
1210 "B<                   int >I<typeflag>B<),>\n"
1211 "B<        int >I<nopenfd>B<);>\n"
1212 msgstr ""
1213 "B<int ftw(const char *>I<dirpath>B<,>\n"
1214 "B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>\n"
1215 "B<                   int >I<typeflag>B<),>\n"
1216 "B<        int >I<nopenfd>B<);>\n"
1217
1218 #. type: Plain text
1219 #: build/C/man3/ftw.3:49
1220 #, no-wrap
1221 msgid ""
1222 "B<#define _XOPEN_SOURCE 500>   /* See feature_test_macros(7) */\n"
1223 "B<#include E<lt>ftw.hE<gt>>\n"
1224 msgstr ""
1225 "B<#define _XOPEN_SOURCE 500>   /* feature_test_macros(7) 参照 */\n"
1226 "B<#define _XOPEN_SOURCE 500>\n"
1227 "B<#include E<lt>ftw.hE<gt>>\n"
1228
1229 #. type: Plain text
1230 #: build/C/man3/ftw.3:54
1231 #, no-wrap
1232 msgid ""
1233 "B<int nftw(const char *>I<dirpath>B<,>\n"
1234 "B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>\n"
1235 "B<                   int >I<typeflag>B<, struct FTW *>I<ftwbuf>B<),>\n"
1236 "B<        int >I<nopenfd>B<, int >I<flags>B<);>\n"
1237 msgstr ""
1238 "B<int nftw(const char *>I<dirpath>B<,>\n"
1239 "B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>\n"
1240 "B<                   int >I<typeflag>B<, struct FTW *>I<ftwbuf>B<),>\n"
1241 "B<        int >I<nopenfd>B<, int >I<flags>B<);>\n"
1242
1243 #. type: Plain text
1244 #: build/C/man3/ftw.3:62
1245 msgid "B<ftw>()  walks through the directory tree that is located under the directory I<dirpath>, and calls I<fn>() once for each entry in the tree.  By default, directories are handled before the files and subdirectories they contain (preorder traversal)."
1246 msgstr "B<ftw>()  は、 I<dirpath> で指定されたディレクトリ以下のディレクトリツリー全体を歩きまわり、 ツリー中でエントリーが見付かるごとに、 I<fn>()  を呼び出す。 デフォルトでは、ディレクトリそのものが、そのディレクトリにあるファイルや サブディレクトリよりも先に処理される (行きがけ順探索; preorder traversal)。"
1247
1248 #. type: Plain text
1249 #: build/C/man3/ftw.3:75
1250 msgid "To avoid using up all of the calling process's file descriptors, I<nopenfd> specifies the maximum number of directories that B<ftw>()  will hold open simultaneously.  When the search depth exceeds this, B<ftw>()  will become slower because directories have to be closed and reopened.  B<ftw>()  uses at most one file descriptor for each level in the directory tree."
1251 msgstr "呼び出し元プロセスが利用可能なファイルディスクリプターを使い切って しまわないようにするため、 B<ftw>()  が同時にオープンするディレクトリの最大数を I<nopenfd> で指定することができる。 探索の深さがこの値を越えると、 一つのディレクトリを閉じてから他のディレクトリをオープンし直すこと になるので、 B<ftw>()  の動作は遅くなる。 B<ftw>()  は、ディレクトリツリーの階層 1 レベルにつき、 最大でも一つのファイルディスクリプターしか使用しない。"
1252
1253 #. type: Plain text
1254 #: build/C/man3/ftw.3:104
1255 msgid "For each entry found in the tree, B<ftw>()  calls I<fn>() with three arguments: I<fpath>, I<sb>, and I<typeflag>.  I<fpath> is the pathname of the entry, and is expressed either as a pathname relative to the calling process's current working directory at the time of the call to B<ftw>(), if I<dirpath> was expressed as a relative pathname, or as an absolute pathname, if I<dirpath> was expressed as an absolute pathname.  I<sb> is a pointer to the I<stat> structure returned by a call to B<stat>(2)  for I<fpath>.  I<typeflag> is an integer that has one of the following values:"
1256 msgstr "ディレクトリツリーで見つかったエントリー毎に、 B<ftw>()  は I<fpath>, I<sb>, I<typeflag> の 3つを引き数として I<fn>()  を呼び出す。 I<fpath> はエントリーのパス名である。 I<dirpath> が相対パス名で指定された場合には、 I<fpath> は B<ftw>()  が呼び出された時点の呼び出し元プロセスのカレントワーキングディレクトリ からの相対パス名となる。 I<dirpath> が絶対パス名で指定された場合には、 I<fpath> は絶対パス名となる。 I<sb> は I<fpath> に対する B<stat>(2)  の呼び出しで返される I<stat> 構造体へのポインターである。 I<typeflag> は整数で、以下の値のいずれか一つである:"
1257
1258 #. type: TP
1259 #: build/C/man3/ftw.3:104
1260 #, no-wrap
1261 msgid "B<FTW_F>"
1262 msgstr "B<FTW_F>"
1263
1264 #. type: Plain text
1265 #: build/C/man3/ftw.3:108
1266 msgid "I<fpath> is a regular file."
1267 msgstr "I<fpath> が通常のファイルである"
1268
1269 #. type: TP
1270 #: build/C/man3/ftw.3:108
1271 #, no-wrap
1272 msgid "B<FTW_D>"
1273 msgstr "B<FTW_D>"
1274
1275 #. type: Plain text
1276 #: build/C/man3/ftw.3:112
1277 msgid "I<fpath> is a directory."
1278 msgstr "I<fpath> がディレクトリである"
1279
1280 #. type: TP
1281 #: build/C/man3/ftw.3:112
1282 #, no-wrap
1283 msgid "B<FTW_DNR>"
1284 msgstr "B<FTW_DNR>"
1285
1286 #. type: Plain text
1287 #: build/C/man3/ftw.3:116
1288 msgid "I<fpath> is a directory which can't be read."
1289 msgstr "I<fpath> が読み込みできないディレクトリである"
1290
1291 #. type: TP
1292 #: build/C/man3/ftw.3:116
1293 #, no-wrap
1294 msgid "B<FTW_NS>"
1295 msgstr "B<FTW_NS>"
1296
1297 #. type: Plain text
1298 #: build/C/man3/ftw.3:130
1299 msgid "The B<stat>(2)  call failed on I<fpath>, which is not a symbolic link.  The probable cause for this is that the caller had read permission on the parent directory, so that the filename I<fpath> could be seen, but did not have execute permission, so that the file could not be reached for B<stat>(2)."
1300 msgstr "B<stat>(2) の呼び出しがシンボリックリンクでない I<fpath> で失敗した。 これのよくある原因は、呼び出し元が親ディレクトリに対する読み込み許可を持っており、 ファイル名 I<fpath> を見ることができたが、実行許可は持っておらず、 そのため B<stat>(2) ではそのファイルに到達できなかった、というものである。"
1301
1302 #. type: Plain text
1303 #: build/C/man3/ftw.3:139
1304 msgid "If I<fpath> is a symbolic link and B<stat>(2)  failed, POSIX.1-2001 states that it is undefined whether B<FTW_NS> or B<FTW_SL> (see below)  is passed in I<typeflag>."
1305 msgstr "I<fpath> がシンボリックリンクで、かつ B<stat>(2)  が失敗した場合、 B<FTW_NS> と B<FTW_SL> (後述) のどちらが I<typeflag> に渡されるかは未定義であると、POSIX.1-2001 には書かれている。"
1306
1307 #. type: Plain text
1308 #: build/C/man3/ftw.3:150
1309 msgid "To stop the tree walk, I<fn>() returns a nonzero value; this value will become the return value of B<ftw>().  As long as I<fn>() returns 0, B<ftw>()  will continue either until it has traversed the entire tree, in which case it will return zero, or until it encounters an error (such as a B<malloc>(3)  failure), in which case it will return -1."
1310 msgstr "ツリーの探索を止めたい場合は、 I<fn>()  が 0 以外の値を返せば良い (この値は B<ftw>()  自身の戻り値となる)。 それ以外の場合は B<ftw>()  はツリー全体の探索を続け、すべてのツリーを探索し終えたところで 0 を返す。探索中に (B<malloc>(3)  の失敗などの) エラーが起こると -1 を返す。"
1311
1312 #. type: Plain text
1313 #: build/C/man3/ftw.3:160
1314 msgid "Because B<ftw>()  uses dynamic data structures, the only safe way to exit out of a tree walk is to return a nonzero value from I<fn>().  To allow a signal to terminate the walk without causing a memory leak, have the handler set a global flag that is checked by I<fn>().  I<Don't> use B<longjmp>(3)  unless the program is going to terminate."
1315 msgstr "B<ftw>()  は動的なデータ構造を用いるので、ツリー探索を安全に中断する唯一の方法は 0 以外の値を I<fn>()  の返り値とすることである。割り込みを扱うには、 例えば発生した割り込みをマークしておいて、 0 以外の値を返すようにする シグナルによりメモリーリークを起こさずに探索を終了できるようにするには、 シグナルハンドラーで I<fn>()  がチェックするグローバルなフラグをセットするようにすればよい。 プログラムを終了させる場合以外は、 B<longjmp>(3)  を使用しないこと。"
1316
1317 #. type: SS
1318 #: build/C/man3/ftw.3:160
1319 #, no-wrap
1320 msgid "nftw()"
1321 msgstr "nftw()"
1322
1323 #. type: Plain text
1324 #: build/C/man3/ftw.3:167
1325 msgid "The function B<nftw>()  is the same as B<ftw>(), except that it has one additional argument, I<flags>, and calls I<fn>() with one more argument, I<ftwbuf>."
1326 msgstr "関数 B<nftw>()  は B<ftw>()  と同じだが、引き数 I<flags> が追加される点と、 I<fn>()  の引き数に I<ftwbuf> が追加される点が異なる。"
1327
1328 #. type: Plain text
1329 #: build/C/man3/ftw.3:170
1330 msgid "This I<flags> argument is formed by ORing zero or more of the following flags:"
1331 msgstr "この I<flags> 引き数は下記のフラグの 0 個以上の論理和を取ったものである:"
1332
1333 #. type: TP
1334 #: build/C/man3/ftw.3:170
1335 #, no-wrap
1336 msgid "B<FTW_ACTIONRETVAL> (since glibc 2.3.3)"
1337 msgstr "B<FTW_ACTIONRETVAL> (glibc 2.3.3 以降)"
1338
1339 #. type: Plain text
1340 #: build/C/man3/ftw.3:179
1341 msgid "If this glibc-specific flag is set, then B<nftw>()  handles the return value from I<fn>()  differently.  I<fn>()  should return one of the following values:"
1342 msgstr "このフラグは glibc 固有である。 このフラグをセットすると、 B<nftw>()  の I<fn>()  の返り値の扱いが変わる。 I<fn>()  は以下の値のいずれか一つを返す必要がある。"
1343
1344 #. type: TP
1345 #: build/C/man3/ftw.3:180
1346 #, no-wrap
1347 msgid "B<FTW_CONTINUE>"
1348 msgstr "B<FTW_CONTINUE>"
1349
1350 #. type: Plain text
1351 #: build/C/man3/ftw.3:185
1352 msgid "Instructs B<nftw>()  to continue normally."
1353 msgstr "B<nftw>()  は通常通り処理を続ける。"
1354
1355 #. type: TP
1356 #: build/C/man3/ftw.3:185
1357 #, no-wrap
1358 msgid "B<FTW_SKIP_SIBLINGS>"
1359 msgstr "B<FTW_SKIP_SIBLINGS>"
1360
1361 #.  If \fBFTW_DEPTH\fP
1362 #.  is set, the entry's parent directory is processed next (with
1363 #.  \fIflag\fP set to \fBFTW_DP\fP).
1364 #. type: Plain text
1365 #: build/C/man3/ftw.3:193
1366 msgid "If I<fn>() returns this value, then siblings of the current entry will be skipped, and processing continues in the parent."
1367 msgstr "I<fn>()  がこの値を返した場合、処理中のエントリーの兄弟 (同じ階層のエントリー)  の処理はスキップされ、親ディレクトリで続きの処理が行われる。"
1368
1369 #. type: TP
1370 #: build/C/man3/ftw.3:193
1371 #, no-wrap
1372 msgid "B<FTW_SKIP_SUBTREE>"
1373 msgstr "B<FTW_SKIP_SUBTREE>"
1374
1375 #. type: Plain text
1376 #: build/C/man3/ftw.3:201
1377 msgid "If I<fn>() is called with an entry that is a directory (I<typeflag> is B<FTW_D>), this return value will prevent objects within that directory from being passed as arguments to I<fn>().  B<nftw>()  continues processing with the next sibling of the directory."
1378 msgstr "I<fn>()  が呼び出されたエントリーがディレクトリ (I<typeflag> が B<FTW_D>)  の場合に、この値を返すと I<fn>()  の引き数として渡されたディレクトリ内のエントリーの処理が行われなくなる。 B<nftw>()  は処理中のディレクトリの兄弟 (同じ階層のエントリー) から処理を続ける。"
1379
1380 #. type: TP
1381 #: build/C/man3/ftw.3:201
1382 #, no-wrap
1383 msgid "B<FTW_STOP>"
1384 msgstr "B<FTW_STOP>"
1385
1386 #. type: Plain text
1387 #: build/C/man3/ftw.3:207
1388 msgid "Causes B<nftw>()  to return immediately with the return value B<FTW_STOP>."
1389 msgstr "B<nftw ()> は、返り値 B<FTW_STOP> ですぐに復帰する。"
1390
1391 #. type: Plain text
1392 #: build/C/man3/ftw.3:210
1393 msgid "Other return values could be associated with new actions in the future; I<fn>() should not return values other than those listed above."
1394 msgstr "他の返り値は将来新しい動作に対応付けられる可能性がある。 I<fn>()  は上記のリストにある値以外を返さないようにすべきである。"
1395
1396 #. type: Plain text
1397 #: build/C/man3/ftw.3:219
1398 msgid "The feature test macro B<_GNU_SOURCE> must be defined (before including I<any> header files)  in order to obtain the definition of B<FTW_ACTIONRETVAL> from I<E<lt>ftw.hE<gt>>."
1399 msgstr "I<E<lt>ftw.hE<gt>> で B<FTW_ACTIONRETVAL> の定義が有効にするためには、 (「どの」ヘッダファイルをインクルードするよりも前に)  機能検査マクロ B<_GNU_SOURCE> を定義しなければならない。"
1400
1401 #. type: TP
1402 #: build/C/man3/ftw.3:220
1403 #, no-wrap
1404 msgid "B<FTW_CHDIR>"
1405 msgstr "B<FTW_CHDIR>"
1406
1407 #. type: Plain text
1408 #: build/C/man3/ftw.3:231
1409 msgid "If set, do a B<chdir>(2)  to each directory before handling its contents.  This is useful if the program needs to perform some action in the directory in which I<fpath> resides.  (Specifying this flag has no effect on the pathname that is passed in the I<fpath> argument of I<fn>.)"
1410 msgstr ""
1411 "セットされると、ディレクトリの内容を処理する前に そのディレクトリに B<chdir>(2)  する。このフラグは、 I<fpath> が属すディレクトリで何らかの動作を実行する必要がある場合に 便利である。\n"
1412 "(このフラグを指定しても I<fn> の I<fpath> 引き数で渡されるパス名には影響しない。)"
1413
1414 #. type: TP
1415 #: build/C/man3/ftw.3:231
1416 #, no-wrap
1417 msgid "B<FTW_DEPTH>"
1418 msgstr "B<FTW_DEPTH>"
1419
1420 #. type: Plain text
1421 #: build/C/man3/ftw.3:237
1422 msgid "If set, do a post-order traversal, that is, call I<fn>() for the directory itself I<after> handling the contents of the directory and its subdirectories.  (By default, each directory is handled I<before> its contents.)"
1423 msgstr "セットされると、帰りがけ順探索 (post-order traversal) を行う。 つまり、ディレクトリそのものを引き数とした I<fn>()  呼出しは、そのディレクトリに含まれるファイルとサブディレクトリに 対する処理の「後で」行われる (デフォルトでは、ディレクトリ自身の処理はディレクトリ内のエントリー より「前に」行なわれる)。"
1424
1425 #. type: TP
1426 #: build/C/man3/ftw.3:237
1427 #, no-wrap
1428 msgid "B<FTW_MOUNT>"
1429 msgstr "B<FTW_MOUNT>"
1430
1431 #. type: Plain text
1432 #: build/C/man3/ftw.3:241
1433 msgid "If set, stay within the same filesystem (i.e., do not cross mount points)."
1434 msgstr "セットされると、同じファイルシステムの中だけを探索対象とする (つまり、マウントポイントをまたぐことはない)。"
1435
1436 #. type: TP
1437 #: build/C/man3/ftw.3:241
1438 #, no-wrap
1439 msgid "B<FTW_PHYS>"
1440 msgstr "B<FTW_PHYS>"
1441
1442 #. type: Plain text
1443 #: build/C/man3/ftw.3:246
1444 msgid "If set, do not follow symbolic links.  (This is what you want.)  If not set, symbolic links are followed, but no file is reported twice."
1445 msgstr "セットされると、シンボリックリンクを辿らない (おそらくこちらが 通常望ましい動作だろう)。セットされていないとシンボリックリンクを 辿るが、同じファイルが二回報告されることはない。"
1446
1447 #. type: Plain text
1448 #: build/C/man3/ftw.3:251
1449 msgid "If B<FTW_PHYS> is not set, but B<FTW_DEPTH> is set, then the function I<fn>()  is never called for a directory that would be a descendant of itself."
1450 msgstr "B<FTW_PHYS> がセットされずに B<FTW_DEPTH> がセットされると、自分自身に対するシンボリックリンクを配下に持つ ディレクトリに対して I<fn>()  が呼び出されることは決してない。"
1451
1452 #. type: Plain text
1453 #: build/C/man3/ftw.3:266
1454 msgid "For each entry in the directory tree, B<nftw>()  calls I<fn>()  with four arguments.  I<fpath> and I<sb> are as for B<ftw>().  I<typeflag> may receive any of the same values as with B<ftw>(), or any of the following values:"
1455 msgstr "ディレクトリツリーのエントリー毎に、 B<nftw>()  は 4つの引き数で I<fn>()  を呼び出す。 I<fpath> と I<sb> は B<ftw>()  と同じである。 I<typeflag> には、 B<ftw>()  で取り得る値のいずれか、または以下の値のいずれかが渡される:"
1456
1457 #. type: TP
1458 #: build/C/man3/ftw.3:266
1459 #, no-wrap
1460 msgid "B<FTW_DP>"
1461 msgstr "B<FTW_DP>"
1462
1463 #. type: Plain text
1464 #: build/C/man3/ftw.3:280
1465 msgid "I<fpath> is a directory, and B<FTW_DEPTH> was specified in I<flags>.  (If B<FTW_DEPTH> was not specified in I<flags>, then directories will always be visited with I<typeflag> set to B<FTW_D>.)  All of the files and subdirectories within I<fpath> have been processed."
1466 msgstr "I<fpath> がディレクトリで、かつ I<flags> で B<FTW_DEPTH> が指定されていた (B<FTW_DEPTH> が I<flags> に指定されていなかった場合、 ディレクトリに対しては常に I<typeflag> が B<FTW_D> で I<fn>() が呼び出される)。 I<fpath> 配下のファイルとサブディレクトリは全て処理が終わっている。"
1467
1468 #. type: TP
1469 #: build/C/man3/ftw.3:280
1470 #, no-wrap
1471 msgid "B<FTW_SL>"
1472 msgstr "B<FTW_SL>"
1473
1474 #.  To obtain the definition of this constant from
1475 #.  .IR <ftw.h> ,
1476 #.  either
1477 #.  .B _BSD_SOURCE
1478 #.  must be defined, or
1479 #.  .BR _XOPEN_SOURCE
1480 #.  must be defined with a value of 500 or more.
1481 #. type: Plain text
1482 #: build/C/man3/ftw.3:291
1483 msgid "I<fpath> is a symbolic link, and B<FTW_PHYS> was set in I<flags>."
1484 msgstr "I<fpath> がシンボリックリンクで、かつ B<FTW_PHYS> が I<flags> に セットされていた。"
1485
1486 #. type: TP
1487 #: build/C/man3/ftw.3:291
1488 #, no-wrap
1489 msgid "B<FTW_SLN>"
1490 msgstr "B<FTW_SLN>"
1491
1492 #. type: Plain text
1493 #: build/C/man3/ftw.3:296
1494 msgid "I<fpath> is a symbolic link pointing to a nonexistent file.  (This occurs only if B<FTW_PHYS> is not set.)"
1495 msgstr "I<fpath> がシンボリックリンクで、存在しないファイルを指している (これがセットされるのは B<FTW_PHYS> がセットされていない場合だけである)。"
1496
1497 #. type: Plain text
1498 #: build/C/man3/ftw.3:302
1499 msgid "The fourth argument that B<nftw>()  supplies when calling I<fn>()  is a structure of type I<FTW>:"
1500 msgstr "B<nftw>()  が I<fn>()  を呼び出す際に渡す 4つめの引き数は I<FTW> 型の構造体である。"
1501
1502 #. type: Plain text
1503 #: build/C/man3/ftw.3:309
1504 #, no-wrap
1505 msgid ""
1506 "struct FTW {\n"
1507 "    int base;\n"
1508 "    int level;\n"
1509 "};\n"
1510 msgstr ""
1511 "struct FTW {\n"
1512 "    int base;\n"
1513 "    int level;\n"
1514 "};\n"
1515
1516 #. type: Plain text
1517 #: build/C/man3/ftw.3:322
1518 msgid "I<base> is the offset of the filename (i.e., basename component)  in the pathname given in I<fpath>.  I<level> is the depth of I<fpath> in the directory tree, relative to the root of the tree (I<dirpath>, which has depth 0)."
1519 msgstr "I<base> は、ファイル名 (basename 要素) の、 I<fpath> で渡されるパス名の中でのオフセットである。 I<level> はディレクトリツリーでの I<fpath> の深さを示す。深さはディレクトリツリーのトップ (root) からの 相対値である (I<dirpath> は深さ 0 である)。"
1520
1521 #. type: SH
1522 #: build/C/man3/ftw.3:322 build/C/man3/getfsent.3:99
1523 #: build/C/man3/getmntent.3:175 build/C/man2/getxattr.2:100
1524 #: build/C/man3/isfdtype.3:72 build/C/man2/listxattr.2:121
1525 #: build/C/man2/mount.2:313 build/C/man2/removexattr.2:78
1526 #: build/C/man2/setxattr.2:105 build/C/man2/spu_create.2:165
1527 #: build/C/man2/spu_run.2:102 build/C/man2/stat.2:517
1528 #: build/C/man2/statfs.2:157 build/C/man3/statvfs.3:96 build/C/man2/sysfs.2:67
1529 #: build/C/man2/umount.2:99 build/C/man2/ustat.2:70
1530 #, no-wrap
1531 msgid "RETURN VALUE"
1532 msgstr "返り値"
1533
1534 #. type: Plain text
1535 #: build/C/man3/ftw.3:324
1536 msgid "These functions return 0 on success, and -1 if an error occurs."
1537 msgstr "これらの関数は、成功すると 0 を、エラーが発生すると -1 を返す。"
1538
1539 #. type: Plain text
1540 #: build/C/man3/ftw.3:331
1541 msgid "If I<fn>() returns nonzero, then the tree walk is terminated and the value returned by I<fn>()  is returned as the result of B<ftw>()  or B<nftw>()."
1542 msgstr "I<fn>()  が 0 以外を返した場合、ディレクトリツリーの探索を終了し、 I<fn>()  が返した値を B<ftw>()  や B<nftw>()  の結果として返す。"
1543
1544 #. type: Plain text
1545 #: build/C/man3/ftw.3:339
1546 msgid "If B<nftw>()  is called with the B<FTW_ACTIONRETVAL> flag, then the only nonzero value that should be used by I<fn>()  to terminate the tree walk is B<FTW_STOP>, and that value is returned as the result of B<nftw>()."
1547 msgstr "B<nftw>()  が B<FTW_ACTIONRETVAL> フラグ付きで呼ばれた場合、ツリーの探索を終了させるために I<fn>()  が使用できる、非 0 の値は B<FTW_STOP> だけであり、 この値は B<nftw>()  の返り値として返される。"
1548
1549 #. type: Plain text
1550 #: build/C/man3/ftw.3:342
1551 msgid "B<nftw>()  is available under glibc since version 2.1."
1552 msgstr "B<nftw>() は バージョン 2.1 以降の glibc で利用できる。"
1553
1554 #. type: Plain text
1555 #: build/C/man3/ftw.3:347
1556 msgid "POSIX.1-2001, SVr4, SUSv1.  POSIX.1-2008 marks B<ftw>()  as obsolete."
1557 msgstr "POSIX.1-2001, SVr4, SUSv1.  POSIX.1-2008 は B<ftw>()  を廃止予定としている。"
1558
1559 #. type: SH
1560 #: build/C/man3/ftw.3:347 build/C/man3/getfsent.3:127
1561 #: build/C/man3/getmntent.3:208 build/C/man3/isfdtype.3:98
1562 #: build/C/man2/mount.2:426 build/C/man2/spu_create.2:254
1563 #: build/C/man2/spu_run.2:196 build/C/man2/stat.2:743
1564 #: build/C/man2/statfs.2:224 build/C/man3/statvfs.3:166
1565 #: build/C/man2/sysfs.2:94 build/C/man2/umount.2:165 build/C/man2/ustat.2:98
1566 #, no-wrap
1567 msgid "NOTES"
1568 msgstr "注意"
1569
1570 #. type: Plain text
1571 #: build/C/man3/ftw.3:351
1572 msgid "POSIX.1-2001 note that the results are unspecified if I<fn> does not preserve the current working directory."
1573 msgstr "POSIX.1-2001 の注記によると、 I<fn> がカレントワーキングディレクトリを保持しなかった場合の 結果は規定されていないとされている。"
1574
1575 #. type: Plain text
1576 #: build/C/man3/ftw.3:357
1577 msgid "The function B<nftw>()  and the use of B<FTW_SL> with B<ftw>()  were introduced in SUSv1."
1578 msgstr "B<nftw>()  関数と、 B<ftw>()  における B<FTW_SL> は、SUSv1 で導入された。"
1579
1580 #. type: Plain text
1581 #: build/C/man3/ftw.3:367
1582 msgid "On some systems B<ftw>()  will never use B<FTW_SL>, on other systems B<FTW_SL> occurs only for symbolic links that do not point to an existing file, and again on other systems B<ftw>()  will use B<FTW_SL> for each symbolic link.  For predictable control, use B<nftw>()."
1583 msgstr "B<ftw>()  で B<FTW_SL> を一切使わないシステムや、 存在しないファイルを指しているシンボリックリンクの場合にのみ B<FTW_SL> を使うシステム、また B<ftw>()  が全てのシンボリックリンクに対して B<FTW_SL> を使うシステムもある。 予測可能な動作をさせるためには、 B<nftw>()  を使うこと。"
1584
1585 #. type: Plain text
1586 #: build/C/man3/ftw.3:370
1587 msgid "B<FTW_F> is returned for all objects (files, symbolic links, FIFOs, etc.)  that can be stat'ed but are not a directory."
1588 msgstr "「stat できるがディレクトリではないオブジェクト」 (ファイル, シンボリックリンク, fifo 等)  に対しては、すべて B<FTW_F> が返される。"
1589
1590 #. type: Plain text
1591 #: build/C/man3/ftw.3:372
1592 msgid "B<FTW_ACTIONRETVAL> is glibc-specific."
1593 msgstr "B<FTW_ACTIONRETVAL> は glibc 固有である。"
1594
1595 #. type: SH
1596 #: build/C/man3/ftw.3:372 build/C/man2/spu_create.2:265
1597 #: build/C/man2/spu_run.2:207 build/C/man7/spufs.7:759 build/C/man2/stat.2:855
1598 #, no-wrap
1599 msgid "EXAMPLE"
1600 msgstr "例"
1601
1602 #. type: Plain text
1603 #: build/C/man3/ftw.3:381
1604 msgid "The following program traverses the directory tree under the path named in its first command-line argument, or under the current directory if no argument is supplied.  It displays various information about each file.  The second command-line argument can be used to specify characters that control the value assigned to the I<flags> argument when calling B<nftw>()."
1605 msgstr "以下のプログラムは、一つ目のコマンドライン引き数を名前に持つパス以下の ディレクトリツリーを探索する。引き数が指定されなかった場合は、 カレントディレクトリ以下を探索する。 各々のファイルについて様々の情報が表示される。 二番目のコマンドライン引き数に文字を指定することで、 B<nftw>()  を呼び出す際に I<flags> 引き数に渡す値を制御することができる。"
1606
1607 #. type: SS
1608 #: build/C/man3/ftw.3:381
1609 #, no-wrap
1610 msgid "Program source"
1611 msgstr "プログラムのソース"
1612
1613 #. type: Plain text
1614 #: build/C/man3/ftw.3:389
1615 #, no-wrap
1616 msgid ""
1617 "#define _XOPEN_SOURCE 500\n"
1618 "#include E<lt>ftw.hE<gt>\n"
1619 "#include E<lt>stdio.hE<gt>\n"
1620 "#include E<lt>stdlib.hE<gt>\n"
1621 "#include E<lt>string.hE<gt>\n"
1622 "#include E<lt>stdint.hE<gt>\n"
1623 msgstr ""
1624 "#define _XOPEN_SOURCE 500\n"
1625 "#include E<lt>ftw.hE<gt>\n"
1626 "#include E<lt>stdio.hE<gt>\n"
1627 "#include E<lt>stdlib.hE<gt>\n"
1628 "#include E<lt>string.hE<gt>\n"
1629 "#include E<lt>stdint.hE<gt>\n"
1630
1631 #. type: Plain text
1632 #: build/C/man3/ftw.3:403
1633 #, no-wrap
1634 msgid ""
1635 "static int\n"
1636 "display_info(const char *fpath, const struct stat *sb,\n"
1637 "             int tflag, struct FTW *ftwbuf)\n"
1638 "{\n"
1639 "    printf(\"%-3s %2d %7jd   %-40s %d %s\\en\",\n"
1640 "        (tflag == FTW_D) ?   \"d\"   : (tflag == FTW_DNR) ? \"dnr\" :\n"
1641 "        (tflag == FTW_DP) ?  \"dp\"  : (tflag == FTW_F) ?   \"f\" :\n"
1642 "        (tflag == FTW_NS) ?  \"ns\"  : (tflag == FTW_SL) ?  \"sl\" :\n"
1643 "        (tflag == FTW_SLN) ? \"sln\" : \"???\",\n"
1644 "        ftwbuf-E<gt>level, (intmax_t) sb-E<gt>st_size,\n"
1645 "        fpath, ftwbuf-E<gt>base, fpath + ftwbuf-E<gt>base);\n"
1646 "    return 0;           /* To tell nftw() to continue */\n"
1647 "}\n"
1648 msgstr ""
1649 "static int\n"
1650 "display_info(const char *fpath, const struct stat *sb,\n"
1651 "             int tflag, struct FTW *ftwbuf)\n"
1652 "{\n"
1653 "    printf(\"%-3s %2d %7jd   %-40s %d %s\\en\",\n"
1654 "        (tflag == FTW_D) ?   \"d\"   : (tflag == FTW_DNR) ? \"dnr\" :\n"
1655 "        (tflag == FTW_DP) ?  \"dp\"  : (tflag == FTW_F) ?   \"f\" :\n"
1656 "        (tflag == FTW_NS) ?  \"ns\"  : (tflag == FTW_SL) ?  \"sl\" :\n"
1657 "        (tflag == FTW_SLN) ? \"sln\" : \"???\",\n"
1658 "        ftwbuf-E<gt>level, (intmax_t) sb-E<gt>st_size,\n"
1659 "        fpath, ftwbuf-E<gt>base, fpath + ftwbuf-E<gt>base);\n"
1660 "    return 0;           /* To tell nftw() to continue */\n"
1661 "}\n"
1662
1663 #. type: Plain text
1664 #: build/C/man3/ftw.3:408
1665 #, no-wrap
1666 msgid ""
1667 "int\n"
1668 "main(int argc, char *argv[])\n"
1669 "{\n"
1670 "    int flags = 0;\n"
1671 msgstr ""
1672 "int\n"
1673 "main(int argc, char *argv[])\n"
1674 "{\n"
1675 "    int flags = 0;\n"
1676
1677 #. type: Plain text
1678 #: build/C/man3/ftw.3:413
1679 #, no-wrap
1680 msgid ""
1681 "    if (argc E<gt> 2 && strchr(argv[2], \\(aqd\\(aq) != NULL)\n"
1682 "        flags |= FTW_DEPTH;\n"
1683 "    if (argc E<gt> 2 && strchr(argv[2], \\(aqp\\(aq) != NULL)\n"
1684 "        flags |= FTW_PHYS;\n"
1685 msgstr ""
1686 "    if (argc E<gt> 2 && strchr(argv[2], \\(aqd\\(aq) != NULL)\n"
1687 "        flags |= FTW_DEPTH;\n"
1688 "    if (argc E<gt> 2 && strchr(argv[2], \\(aqp\\(aq) != NULL)\n"
1689 "        flags |= FTW_PHYS;\n"
1690
1691 #. type: Plain text
1692 #: build/C/man3/ftw.3:421
1693 #, no-wrap
1694 msgid ""
1695 "    if (nftw((argc E<lt> 2) ? \".\" : argv[1], display_info, 20, flags)\n"
1696 "            == -1) {\n"
1697 "        perror(\"nftw\");\n"
1698 "        exit(EXIT_FAILURE);\n"
1699 "    }\n"
1700 "    exit(EXIT_SUCCESS);\n"
1701 "}\n"
1702 msgstr ""
1703 "    if (nftw((argc E<lt> 2) ? \".\" : argv[1], display_info, 20, flags)\n"
1704 "            == -1) {\n"
1705 "        perror(\"nftw\");\n"
1706 "        exit(EXIT_FAILURE);\n"
1707 "    }\n"
1708 "    exit(EXIT_SUCCESS);\n"
1709 "}\n"
1710
1711 #. type: Plain text
1712 #: build/C/man3/ftw.3:426
1713 msgid "B<stat>(2), B<fts>(3), B<readdir>(3)"
1714 msgstr "B<stat>(2), B<fts>(3), B<readdir>(3)"
1715
1716 #. type: TH
1717 #: build/C/man3/getfsent.3:27
1718 #, no-wrap
1719 msgid "GETFSENT"
1720 msgstr "GETFSENT"
1721
1722 #. type: TH
1723 #: build/C/man3/getfsent.3:27
1724 #, no-wrap
1725 msgid "2002-02-28"
1726 msgstr "2002-02-28"
1727
1728 #. type: TH
1729 #: build/C/man3/getfsent.3:27
1730 #, no-wrap
1731 msgid "GNU"
1732 msgstr "Linux"
1733
1734 #. type: Plain text
1735 #: build/C/man3/getfsent.3:30
1736 msgid "getfsent, getfsspec, getfsfile, setfsent, endfsent - handle fstab entries"
1737 msgstr "getfsent, getfsspec, getfsfile, setfsent, endfsent - fstab エントリーの処理"
1738
1739 #. type: Plain text
1740 #: build/C/man3/getfsent.3:32
1741 msgid "B<#include E<lt>fstab.hE<gt>>"
1742 msgstr "B<#include E<lt>fstab.hE<gt>>"
1743
1744 #. type: Plain text
1745 #: build/C/man3/getfsent.3:34
1746 msgid "B<void endfsent(void);>"
1747 msgstr "B<void endfsent(void);>"
1748
1749 #. type: Plain text
1750 #: build/C/man3/getfsent.3:36
1751 msgid "B<struct fstab *getfsent(void);>"
1752 msgstr "B<struct fstab *getfsent(void);>"
1753
1754 #. type: Plain text
1755 #: build/C/man3/getfsent.3:38
1756 msgid "B<struct fstab *getfsfile(const char *>I<mount_point>B<);>"
1757 msgstr "B<struct fstab *getfsfile(const char *>I<mount_point>B<);>"
1758
1759 #. type: Plain text
1760 #: build/C/man3/getfsent.3:40
1761 msgid "B<struct fstab *getfsspec(const char *>I<special_file>B<);>"
1762 msgstr "B<struct fstab *getfsspec(const char *>I<special_file>B<);>"
1763
1764 #. type: Plain text
1765 #: build/C/man3/getfsent.3:42
1766 msgid "B<int setfsent(void);>"
1767 msgstr "B<int setfsent(void);>"
1768
1769 #. type: Plain text
1770 #: build/C/man3/getfsent.3:48
1771 msgid "These functions read from the file I</etc/fstab>.  The I<struct fstab> is defined by:"
1772 msgstr "これらの関数は I</etc/fstab> ファイルから情報を読み込む。I<fstab> 構造体は次のように定義されている。"
1773
1774 #. type: Plain text
1775 #: build/C/man3/getfsent.3:60
1776 #, no-wrap
1777 msgid ""
1778 "struct fstab {\n"
1779 "    char       *fs_spec;       /* block device name */\n"
1780 "    char       *fs_file;       /* mount point */\n"
1781 "    char       *fs_vfstype;    /* file-system type */\n"
1782 "    char       *fs_mntops;     /* mount options */\n"
1783 "    const char *fs_type;       /* rw/rq/ro/sw/xx option */\n"
1784 "    int         fs_freq;       /* dump frequency, in days */\n"
1785 "    int         fs_passno;     /* pass number on parallel dump */\n"
1786 "};\n"
1787 msgstr ""
1788 "struct fstab {\n"
1789 "    char       *fs_spec;       /* block device name */\n"
1790 "    char       *fs_file;       /* mount point */\n"
1791 "    char       *fs_vfstype;    /* file-system type */\n"
1792 "    char       *fs_mntops;     /* mount options */\n"
1793 "    const char *fs_type;       /* rw/rq/ro/sw/xx option */\n"
1794 "    int         fs_freq;       /* dump frequency, in days */\n"
1795 "    int         fs_passno;     /* pass number on parallel dump */\n"
1796 "};\n"
1797
1798 #. type: Plain text
1799 #: build/C/man3/getfsent.3:68
1800 msgid "Here the field I<fs_type> contains (on a *BSD system)  one of the five strings \"rw\", \"rq\", \"ro\", \"sw\", \"xx\" (read-write, read-write with quota, read-only, swap, ignore)."
1801 msgstr "*BSD システムの場合、 I<fs_type> フィールドには、5 つの文字列 \"rw\", \"rq\", \"ro\", \"sw\", \"xx\" のいずれかが入る (それぞれ read-write, quota 付き read-write, read-only, swap, ignore)。"
1802
1803 #. type: Plain text
1804 #: build/C/man3/getfsent.3:72
1805 msgid "The function B<setfsent>()  opens the file when required and positions it at the first line."
1806 msgstr "関数 B<setfsent>()  は呼び出されると fstab ファイルをオープンし、 最初の行に移動する。"
1807
1808 #. type: Plain text
1809 #: build/C/man3/getfsent.3:77
1810 msgid "The function B<getfsent>()  parses the next line from the file.  (After opening it when required.)"
1811 msgstr "関数 B<getfsent>()  は fstab ファイルから次の行をパースする (必要な場合はファイルをオープンする)。"
1812
1813 #. type: Plain text
1814 #: build/C/man3/getfsent.3:81
1815 msgid "The function B<endfsent>()  closes the file when required."
1816 msgstr "関数 B<endfsent>()  は呼び出されると fstab ファイルをクローズする。"
1817
1818 #. type: Plain text
1819 #: build/C/man3/getfsent.3:90
1820 msgid "The function B<getfsspec>()  searches the file from the start and returns the first entry found for which the I<fs_spec> field matches the I<special_file> argument."
1821 msgstr "関数 B<getfsspec>()  は fstab ファイルを先頭から検索し、 I<fs_spec> フィールドが I<special_file> 引数にマッチするエントリーが見つかったら、その最初のものを返す。"
1822
1823 #. type: Plain text
1824 #: build/C/man3/getfsent.3:99
1825 msgid "The function B<getfsfile>()  searches the file from the start and returns the first entry found for which the I<fs_file> field matches the I<mount_point> argument."
1826 msgstr "関数 B<getfsfile>()  は fstab ファイルを先頭から検索し、 I<fs_file> フィールドが I<mount_point> 引数にマッチするエントリーが見つかったら、その最初のものを返す。"
1827
1828 #.  .SH HISTORY
1829 #.  The
1830 #.  .BR getfsent ()
1831 #.  function appeared in 4.0BSD; the other four functions appeared in 4.3BSD.
1832 #. type: Plain text
1833 #: build/C/man3/getfsent.3:115
1834 msgid "Upon success, the functions B<getfsent>(), B<getfsfile>(), and B<getfsspec>()  return a pointer to a I<struct fstab>, while B<setfsent>()  returns 1.  Upon failure or end-of-file, these functions return NULL and 0, respectively."
1835 msgstr "成功すると、 B<getfsent>(), B<getfsfile>(), B<getfsspec>()  の各関数は I<fstab> 構造体へのポインターを返し、 B<setfsent>()  関数は 1 を返す。 失敗するとこれらの関数は NULL を返し、 end-of-file になったら 0 を返す。"
1836
1837 #. type: Plain text
1838 #: build/C/man3/getfsent.3:127
1839 msgid "These functions are not in POSIX.1-2001.  Several operating systems have them, for example, *BSD, SunOS, Digital UNIX, AIX (which also has a B<getfstype>()).  HP-UX has functions of the same names, that however use a I<struct checklist> instead of a I<struct fstab>, and calls these functions obsolete, superseded by B<getmntent>(3)."
1840 msgstr "POSIX.1-2001 にはこれらの関数は存在しない。 これらの関数をもつ OS はいくつかあり、 例えば *BSD, SunOS, Digital UNIX, AIX 等である (AIX には B<getfstype>()  もある)。 HP-UX にも同名の関数群があるが、 HP-UX のものは I<fstab> 構造体ではなく I<checklist> 構造体を用いる。 またこれらの関数の呼び出しは obsolete で、 B<getmntent>(3)  に取って代わられている。"
1841
1842 #. type: Plain text
1843 #: build/C/man3/getfsent.3:129
1844 msgid "These functions are not thread-safe."
1845 msgstr "これらの関数はスレッドセーフではない。"
1846
1847 #. type: Plain text
1848 #: build/C/man3/getfsent.3:139
1849 msgid "Since Linux allows mounting a block special device in several places, and since several devices can have the same mount point, where the last device with a given mount point is the interesting one, while B<getfsfile>()  and B<getfsspec>()  only return the first occurrence, these two functions are not suitable for use under Linux."
1850 msgstr "Linux ではブロックスペシャルデバイスを複数の場所にマウントでき、 また複数のデバイスが同じマウントポイントを共有できる (この場合はそのマウントポイントに最後にマウントされたデバイスが意味を持つ)  が、 B<getfsfile>()  と B<getfsspec>()  はマッチした最初のエントリーしか返さないので、 これらの 2 つの関数は Linux での利用には適していない。"
1851
1852 #. type: Plain text
1853 #: build/C/man3/getfsent.3:142
1854 msgid "B<getmntent>(3), B<fstab>(5)"
1855 msgstr "B<getmntent>(3), B<fstab>(5)"
1856
1857 #. type: TH
1858 #: build/C/man3/getmntent.3:32
1859 #, no-wrap
1860 msgid "GETMNTENT"
1861 msgstr "GETMNTENT"
1862
1863 #. type: TH
1864 #: build/C/man3/getmntent.3:32
1865 #, no-wrap
1866 msgid "2015-01-22"
1867 msgstr "2015-01-22"
1868
1869 #. type: Plain text
1870 #: build/C/man3/getmntent.3:36
1871 msgid "getmntent, setmntent, addmntent, endmntent, hasmntopt, getmntent_r - get filesystem descriptor file entry"
1872 msgstr "getmntent, setmntent, addmntent, endmntent, hasmntopt, getmntent_r - ファイルシステム記述ファイルのエントリーを取得する"
1873
1874 #. type: Plain text
1875 #: build/C/man3/getmntent.3:40
1876 #, no-wrap
1877 msgid ""
1878 "B<#include E<lt>stdio.hE<gt>>\n"
1879 "B<#include E<lt>mntent.hE<gt>>\n"
1880 msgstr ""
1881 "B<#include E<lt>stdio.hE<gt>>\n"
1882 "B<#include E<lt>mntent.hE<gt>>\n"
1883
1884 #. type: Plain text
1885 #: build/C/man3/getmntent.3:42
1886 #, no-wrap
1887 msgid "B<FILE *setmntent(const char *>I<filename>B<, const char *>I<type>B<);>\n"
1888 msgstr "B<FILE *setmntent(const char *>I<filename>B<, const char *>I<type>B<);>\n"
1889
1890 #. type: Plain text
1891 #: build/C/man3/getmntent.3:44
1892 #, no-wrap
1893 msgid "B<struct mntent *getmntent(FILE *>I<stream>B<);>\n"
1894 msgstr "B<struct mntent *getmntent(FILE *>I<stream>B<);>\n"
1895
1896 #. type: Plain text
1897 #: build/C/man3/getmntent.3:46
1898 #, no-wrap
1899 msgid "B<int addmntent(FILE *>I<stream>B<, const struct mntent *>I<mnt>B<);>\n"
1900 msgstr "B<int addmntent(FILE *>I<stream>B<, const struct mntent *>I<mnt>B<);>\n"
1901
1902 #. type: Plain text
1903 #: build/C/man3/getmntent.3:48
1904 #, no-wrap
1905 msgid "B<int endmntent(FILE *>I<streamp>B<);>\n"
1906 msgstr "B<int endmntent(FILE *>I<streamp>B<);>\n"
1907
1908 #. type: Plain text
1909 #: build/C/man3/getmntent.3:50
1910 #, no-wrap
1911 msgid "B<char *hasmntopt(const struct mntent *>I<mnt>B<, const char *>I<opt>B<);>\n"
1912 msgstr "B<char *hasmntopt(const struct mntent *>I<mnt>B<, const char *>I<opt>B<);>\n"
1913
1914 #. type: Plain text
1915 #: build/C/man3/getmntent.3:53
1916 #, no-wrap
1917 msgid ""
1918 "/* GNU extension */\n"
1919 "B<#include E<lt>mntent.hE<gt>>\n"
1920 msgstr ""
1921 "/* GNU による拡張 */\n"
1922 "B<#include E<lt>mntent.hE<gt>>\n"
1923
1924 #. type: Plain text
1925 #: build/C/man3/getmntent.3:56
1926 #, no-wrap
1927 msgid ""
1928 "B<struct mntent *getmntent_r(FILE *>I<streamp>B<, struct mntent *>I<mntbuf>B<,>\n"
1929 "B<                           char *>I<buf>B<, int >I<buflen>B<);>\n"
1930 msgstr ""
1931 "B<struct mntent *getmntent_r(FILE *>I<streamp>B<, struct mntent *>I<mntbuf>B<,>\n"
1932 "B<                           char *>I<buf>B<, int >I<buflen>B<);>\n"
1933
1934 #. type: Plain text
1935 #: build/C/man3/getmntent.3:61 build/C/man3/isfdtype.3:40
1936 #: build/C/man2/stat.2:68
1937 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
1938 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
1939
1940 #. type: Plain text
1941 #: build/C/man3/getmntent.3:65
1942 msgid "B<getmntent_r>(): _BSD_SOURCE || _SVID_SOURCE"
1943 msgstr "B<getmntent_r>(): _BSD_SOURCE || _SVID_SOURCE"
1944
1945 #. type: Plain text
1946 #: build/C/man3/getmntent.3:70
1947 msgid "These routines are used to access the filesystem description file I</etc/fstab> and the mounted filesystem description file I</etc/mtab>."
1948 msgstr "これらのルーチンは、ファイルシステムを記述したファイル I</etc/fstab> と、マウントされているファイルシステムを記述したファイル I</etc/mtab> にアクセスするために用いられる。"
1949
1950 #. type: Plain text
1951 #: build/C/man3/getmntent.3:84
1952 msgid "The B<setmntent>()  function opens the filesystem description file I<filename> and returns a file pointer which can be used by B<getmntent>().  The argument I<type> is the type of access required and can take the same values as the I<mode> argument of B<fopen>(3)."
1953 msgstr "B<setmntent>()  関数は、ファイルシステムの記述ファイル I<filename> をオープンして、 そのファイルポインターを返す。このファイルポインターは B<getmntent>()  によって用いられる。引き数 I<type> は要求するアクセス形式で、 B<fopen>(3)  の I<mode> 引き数と同じ値を取ることができる。"
1954
1955 #. type: Plain text
1956 #: build/C/man3/getmntent.3:96
1957 msgid "The B<getmntent>()  function reads the next line of the filesystem description file from I<stream> and returns a pointer to a structure containing the broken out fields from a line in the file.  The pointer points to a static area of memory which is overwritten by subsequent calls to B<getmntent>()."
1958 msgstr "B<getmntent>() 関数は I<stream> からファイルシステムの記述ファイルの次の行を読み込み、 読み込んだ行をフィールドに分割した内容を収めた構造体へのポインターを返す。 ポインターはメモリーの静的な領域を指しており、この領域は B<getmntent>() を次に呼び出したときに上書きされてしまう。"
1959
1960 #. type: Plain text
1961 #: build/C/man3/getmntent.3:106
1962 msgid "The B<addmntent>()  function adds the I<mntent> structure I<mnt> to the end of the open I<stream>."
1963 msgstr "B<addmntent>()  関数は I<mntent> 構造体 I<mnt> の内容を、オープンされている I<stream> の最後に追加する。"
1964
1965 #. type: Plain text
1966 #: build/C/man3/getmntent.3:112
1967 msgid "The B<endmntent>()  function closes the I<stream> associated with the filesystem description file."
1968 msgstr "B<endmntent>() 関数はファイルシステムの記述ファイルに関連付けられている I<stream> を閉じる。"
1969
1970 #. type: Plain text
1971 #: build/C/man3/getmntent.3:129
1972 msgid "The B<hasmntopt>()  function scans the I<mnt_opts> field (see below)  of the I<mntent> structure I<mnt> for a substring that matches I<opt>.  See I<E<lt>mntent.hE<gt>> and B<mount>(8)  for valid mount options."
1973 msgstr "B<hasmntopt>()  関数は I<mntent> 構造体 I<mnt> の I<mnt_opts> フィールド (下記 参照) をスキャンし、 I<opt> に一致する部分文字列があるかを調べる。 有効なマウントオプションについては I<E<lt>mntent.hE<gt>> と B<mount>(8)  を参照のこと。"
1974
1975 #. type: Plain text
1976 #: build/C/man3/getmntent.3:143
1977 msgid "The reentrant B<getmntent_r>()  function is similar to B<getmntent>(), but stores the I<struct mount> in the provided I<*mntbuf> and stores the strings pointed to by the entries in that struct in the provided array I<buf> of size I<buflen>."
1978 msgstr "リエントラントな関数 B<getmntent_r>()  は B<getmntent>()  と同じだが、 ユーザーが用意した I<*mntbuf> に I<struct mount> を格納し、その構造体の各エントリーが指し示す文字列を ユーザーが用意した大きさ I<buflen> の配列 I<buf> に書き込む。"
1979
1980 #. type: Plain text
1981 #: build/C/man3/getmntent.3:149
1982 msgid "The I<mntent> structure is defined in I<E<lt>mntent.hE<gt>> as follows:"
1983 msgstr "I<mntent> 構造体は I<E<lt>mntent.hE<gt>> で以下のように定義されている。"
1984
1985 #. type: Plain text
1986 #: build/C/man3/getmntent.3:160
1987 #, no-wrap
1988 msgid ""
1989 "struct mntent {\n"
1990 "    char *mnt_fsname;   /* name of mounted filesystem */\n"
1991 "    char *mnt_dir;      /* filesystem path prefix */\n"
1992 "    char *mnt_type;     /* mount type (see mntent.h) */\n"
1993 "    char *mnt_opts;     /* mount options (see mntent.h) */\n"
1994 "    int   mnt_freq;     /* dump frequency in days */\n"
1995 "    int   mnt_passno;   /* pass number on parallel fsck */\n"
1996 "};\n"
1997 msgstr ""
1998 "struct mntent {\n"
1999 "    char *mnt_fsname;   /* name of mounted file system */\n"
2000 "    char *mnt_dir;      /* file system path prefix */\n"
2001 "    char *mnt_type;     /* mount type (see mntent.h) */\n"
2002 "    char *mnt_opts;     /* mount options (see mntent.h) */\n"
2003 "    int   mnt_freq;     /* dump frequency in days */\n"
2004 "    int   mnt_passno;   /* pass number on parallel fsck */\n"
2005 "};\n"
2006
2007 #. type: Plain text
2008 #: build/C/man3/getmntent.3:175
2009 msgid "Since fields in the mtab and fstab files are separated by whitespace, octal escapes are used to represent the four characters space (\\e040), tab (\\e011), newline (\\e012) and backslash (\\e134) in those files when they occur in one of the four strings in a I<mntent> structure.  The routines B<addmntent>()  and B<getmntent>()  will convert from string representation to escaped representation and back."
2010 msgstr "mtab や fstab ファイルでは、各フィールドは空白で区切られているので、 スペース、タブ、改行、バックスラッシュの 4文字をこれらのファイルで 使いたい場合で、かつ I<mntent> 構造体の 4つの文字列メンバーのいずれかに対応するフィールド内で 使いたい場合には、8進のエスケープ表記を使って表現する: スペース (\\e040), タブ (\\e011), 改行 (\\e012), バックスラッシュ (\\e134)。 B<addmntent>()  と B<getmntent>()  は、文字列表現から エスケープ表現への変換、およびその逆を行う。"
2011
2012 #. type: Plain text
2013 #: build/C/man3/getmntent.3:184
2014 msgid "The B<getmntent>()  and B<getmntent_r>()  functions return a pointer to the I<mntent> structure or NULL on failure."
2015 msgstr "B<getmntent>()  と B<getmntent_r>()  は I<mntent> 構造体へのポインターを返す。 失敗した場合は NULL を返す。"
2016
2017 #. type: Plain text
2018 #: build/C/man3/getmntent.3:188
2019 msgid "The B<addmntent>()  function returns 0 on success and 1 on failure."
2020 msgstr "B<addmntent>()  関数は成功したら 0 を返し、失敗したら 1 を返す。"
2021
2022 #. type: Plain text
2023 #: build/C/man3/getmntent.3:192
2024 msgid "The B<endmntent>()  function always returns 1."
2025 msgstr "B<endmntent>()  関数はつねに 1 を返す。"
2026
2027 #. type: Plain text
2028 #: build/C/man3/getmntent.3:197
2029 msgid "The B<hasmntopt>()  function returns the address of the substring if a match is found and NULL otherwise."
2030 msgstr "B<hasmntopt>()  関数は、マッチした場合は部分文字列へのアドレスを返し、 マッチしなければ NULL を返す。"
2031
2032 #. type: SH
2033 #: build/C/man3/getmntent.3:197 build/C/man2/spu_create.2:240
2034 #, no-wrap
2035 msgid "FILES"
2036 msgstr "ファイル"
2037
2038 #. type: Plain text
2039 #: build/C/man3/getmntent.3:201
2040 #, no-wrap
2041 msgid ""
2042 "/etc/fstab          filesystem description file\n"
2043 "/etc/mtab           mounted filesystem description file\n"
2044 msgstr ""
2045 "/etc/fstab          ファイルシステム記述ファイル\n"
2046 "/etc/mtab           マウントされたファイルシステムの記述ファイル\n"
2047
2048 #. type: Plain text
2049 #: build/C/man3/getmntent.3:208
2050 msgid "The nonreentrant functions are from SunOS 4.1.3.  A routine B<getmntent_r>()  was introduced in HP-UX 10, but it returns an int.  The prototype shown above is glibc-only."
2051 msgstr "リエントラントでない関数は SunOS 4.1.3 由来のものである。 B<getmntent_r>()  関数は HPUX 10 で導入されたが、このバージョンでは int を返す。 上記に示したプロトタイプは glibc 独自のものである。"
2052
2053 #. type: Plain text
2054 #: build/C/man3/getmntent.3:220
2055 msgid "System V also has a B<getmntent>()  function but the calling sequence differs, and the returned structure is different.  Under System V I</etc/mnttab> is used.  4.4BSD and Digital UNIX have a routine B<getmntinfo>(), a wrapper around the system call B<getfsstat>()."
2056 msgstr "System V にも B<getmntent>()  関数はあるが、 呼び出し手順が異なり、返される構造体も異なる。 System V では I</etc/mnttab> が用いられる。 4.4BSD と Digital UNIX には B<getmntinfo>()  があるが、 システムコール B<getfsstat>()  のラッパー関数である。"
2057
2058 #. type: Plain text
2059 #: build/C/man3/getmntent.3:224
2060 msgid "B<fopen>(3), B<fstab>(5), B<mount>(8)"
2061 msgstr "B<fopen>(3), B<fstab>(5), B<mount>(8)"
2062
2063 #. type: TH
2064 #: build/C/man2/getxattr.2:25
2065 #, no-wrap
2066 msgid "GETXATTR"
2067 msgstr "GETXATTR"
2068
2069 #. type: TH
2070 #: build/C/man2/getxattr.2:25
2071 #, no-wrap
2072 msgid "2014-04-06"
2073 msgstr "2014-04-06"
2074
2075 #. type: Plain text
2076 #: build/C/man2/getxattr.2:28
2077 msgid "getxattr, lgetxattr, fgetxattr - retrieve an extended attribute value"
2078 msgstr "getxattr, lgetxattr, fgetxattr - 拡張属性の値を取得する"
2079
2080 #. type: Plain text
2081 #: build/C/man2/getxattr.2:33 build/C/man2/listxattr.2:33
2082 #: build/C/man2/removexattr.2:33 build/C/man2/setxattr.2:33
2083 #, no-wrap
2084 msgid ""
2085 "B<#include E<lt>sys/types.hE<gt>>\n"
2086 "B<#include E<lt>sys/xattr.hE<gt>>\n"
2087 msgstr ""
2088 "B<#include E<lt>sys/types.hE<gt>>\n"
2089 "B<#include E<lt>sys/xattr.hE<gt>>\n"
2090
2091 #. type: Plain text
2092 #: build/C/man2/getxattr.2:40
2093 #, no-wrap
2094 msgid ""
2095 "B<ssize_t getxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
2096 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2097 "B<ssize_t lgetxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
2098 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2099 "B<ssize_t fgetxattr(int >I<fd>B<, const char\\ *>I<name>B<,>\n"
2100 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2101 msgstr ""
2102 "B<ssize_t getxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
2103 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2104 "B<ssize_t lgetxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
2105 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2106 "B<ssize_t fgetxattr(int >I<fd>B<, const char\\ *>I<name>B<,>\n"
2107 "B<                 void\\ *>I<value>B<, size_t >I<size>B<);>\n"
2108
2109 #. type: Plain text
2110 #: build/C/man2/getxattr.2:53 build/C/man2/setxattr.2:53
2111 msgid "Extended attributes are I<name>:I<value> pairs associated with inodes (files, directories, symbolic links, etc.).  They are extensions to the normal attributes which are associated with all inodes in the system (i.e., the B<stat>(2)  data).  A complete overview of extended attributes concepts can be found in B<attr>(5)."
2112 msgstr "拡張属性は、inode (ファイル、ディレクトリ、シンボリックリンク等) に 関連付けられた I<name>:I<value> の対である。 これらは、システム上のすべての inode に関連付けられた通常の属性 (B<stat>(2)  が返すデータ) を拡張するものである。 拡張属性のコンセプトは B<attr>(5)  に書かれている。"
2113
2114 #. type: Plain text
2115 #: build/C/man2/getxattr.2:65
2116 msgid "B<getxattr>()  retrieves the I<value> of the extended attribute identified by I<name> and associated with the given I<path> in the filesystem.  The length of the attribute I<value> is returned."
2117 msgstr "B<getxattr>()  は、ファイルシステム内の指定された I<path> に対応する、名前 I<name> の拡張属性の I<value> (値) を取得する。 属性 I<value> の長さが返される。"
2118
2119 #. type: Plain text
2120 #: build/C/man2/getxattr.2:71
2121 msgid "B<lgetxattr>()  is identical to B<getxattr>(), except in the case of a symbolic link, where the link itself is interrogated, not the file that it refers to."
2122 msgstr "B<lgetxattr>()  は B<getxattr>()  と同じだが、シンボリックリンクの場合に、リンクが参照しているファイル ではなく、リンクそのものの情報を取得する点だけが異なる。"
2123
2124 #. type: Plain text
2125 #: build/C/man2/getxattr.2:81
2126 msgid "B<fgetxattr>()  is identical to B<getxattr>(), only the open file referred to by I<fd> (as returned by B<open>(2))  is interrogated in place of I<path>."
2127 msgstr "B<fgetxattr>()  は B<getxattr>()  と同じだが、 I<path> の代わりに I<fd> で参照されたオープン済みファイルの情報だけを取得する点が異なる (I<fd> は B<open>(2)  によって返される)。"
2128
2129 #. type: Plain text
2130 #: build/C/man2/getxattr.2:89
2131 msgid "An extended attribute I<name> is a simple null-terminated string.  The name includes a namespace prefix; there may be several, disjoint namespaces associated with an individual inode.  The value of an extended attribute is a chunk of arbitrary textual or binary data of specified length."
2132 msgstr "拡張属性の名前 I<name> は普通のヌル終端された文字列である。 名前には、名前空間を表す接頭辞 (prefix) が含まれる; 個々の inode に対して、互いに独立な名前空間が複数あってもよい。 拡張属性の値は、ある一定の長さの任意のテキストデータまたは バイナリデータの集合である。"
2133
2134 #. type: Plain text
2135 #: build/C/man2/getxattr.2:96
2136 msgid "An empty buffer of I<size> zero can be passed into these calls to return the current size of the named extended attribute, which can be used to estimate the size of a buffer which is sufficiently large to hold the value associated with the extended attribute."
2137 msgstr "I<size> に 0 を指定して空のバッファーをこれらのシステムコールに渡すことができ、 この場合には指定された名前の拡張属性の現在のサイズが返される。 この方法は、拡張属性の値を保持するのに十分な大きさのバッファーサイズを 見積もるのに使うことができる、"
2138
2139 #. type: Plain text
2140 #: build/C/man2/getxattr.2:100
2141 msgid "The interface is designed to allow guessing of initial buffer sizes, and to enlarge buffers when the return value indicates that the buffer provided was too small."
2142 msgstr "このシステムコールインターフェースは、初期バッファーのサイズの推測をしたり、 与えられたバッファーが小さすぎたことを返り値で知らせることでバッファーを大きく したりできるように設計されている。"
2143
2144 #. type: Plain text
2145 #: build/C/man2/getxattr.2:106
2146 msgid "On success, a nonnegative number is returned indicating the size of the extended attribute value.  On failure, -1 is returned and I<errno> is set appropriately."
2147 msgstr "成功した場合、拡張属性の値の長さを表す非負の数が返される。 失敗した場合、 -1 が返され、 I<errno> に適切な値がセットされる。"
2148
2149 #. type: TP
2150 #: build/C/man2/getxattr.2:107 build/C/man2/removexattr.2:84
2151 #: build/C/man2/setxattr.2:119
2152 #, no-wrap
2153 msgid "B<ENOATTR>"
2154 msgstr "B<ENOATTR>"
2155
2156 #. type: Plain text
2157 #: build/C/man2/getxattr.2:116
2158 msgid "The named attribute does not exist, or the process has no access to this attribute.  (B<ENOATTR> is defined to be a synonym for B<ENODATA> in I<E<lt>attr/xattr.hE<gt>>.)"
2159 msgstr "指定された名前の属性が存在しない、またはプロセスがその属性にアクセスする権限がない (B<ENOATTR> は I<E<lt>attr/xattr.hE<gt>> で B<ENODATA> の同義語として定義されている)。"
2160
2161 #. type: TP
2162 #: build/C/man2/getxattr.2:116 build/C/man2/listxattr.2:128
2163 #: build/C/man2/removexattr.2:92 build/C/man2/setxattr.2:131
2164 #, no-wrap
2165 msgid "B<ENOTSUP>"
2166 msgstr "B<ENOTSUP>"
2167
2168 #. type: Plain text
2169 #: build/C/man2/getxattr.2:119 build/C/man2/listxattr.2:131
2170 #: build/C/man2/removexattr.2:95
2171 msgid "Extended attributes are not supported by the filesystem, or are disabled."
2172 msgstr "拡張属性がそのファイルシステムでサポートされていない、 もしくは無効になっている。"
2173
2174 #. type: TP
2175 #: build/C/man2/getxattr.2:119 build/C/man2/listxattr.2:131
2176 #, no-wrap
2177 msgid "B<ERANGE>"
2178 msgstr "B<ERANGE>"
2179
2180 #. type: Plain text
2181 #: build/C/man2/getxattr.2:126
2182 msgid "The I<size> of the I<value> buffer is too small to hold the result."
2183 msgstr "I<value> バッファーの大きさ I<size> が結果を保持するのに十分な大きさでなかった。"
2184
2185 #. type: Plain text
2186 #: build/C/man2/getxattr.2:130 build/C/man2/listxattr.2:142
2187 #: build/C/man2/removexattr.2:99 build/C/man2/setxattr.2:141
2188 msgid "In addition, the errors documented in B<stat>(2)  can also occur."
2189 msgstr "上記に加えて、 B<stat>(2) に書かれているエラーが発生する場合もある。"
2190
2191 #. type: Plain text
2192 #: build/C/man2/getxattr.2:133 build/C/man2/listxattr.2:145
2193 #: build/C/man2/removexattr.2:102 build/C/man2/setxattr.2:144
2194 msgid "These system calls have been available on Linux since kernel 2.4; glibc support is provided since version 2.3."
2195 msgstr "これらのシステムコールはカーネル 2.4 以降の Linux で利用できる。 glibc でのサポートはバージョン 2.3 以降で行われている。"
2196
2197 #.  .SH AUTHORS
2198 #.  Andreas Gruenbacher,
2199 #.  .RI < a.gruenbacher@computer.org >
2200 #.  and the SGI XFS development team,
2201 #.  .RI < linux-xfs@oss.sgi.com >.
2202 #.  Please send any bug reports or comments to these addresses.
2203 #. type: Plain text
2204 #: build/C/man2/getxattr.2:141 build/C/man2/listxattr.2:153
2205 #: build/C/man2/removexattr.2:110 build/C/man2/setxattr.2:152
2206 msgid "These system calls are Linux-specific."
2207 msgstr "これらのシステムコールは Linux 独自である。"
2208
2209 #. type: Plain text
2210 #: build/C/man2/getxattr.2:151
2211 msgid "B<getfattr>(1), B<setfattr>(1), B<listxattr>(2), B<open>(2), B<removexattr>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
2212 msgstr "B<getfattr>(1), B<setfattr>(1), B<listxattr>(2), B<open>(2), B<removexattr>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
2213
2214 #. type: TH
2215 #: build/C/man3/isfdtype.3:26
2216 #, no-wrap
2217 msgid "ISFDTYPE"
2218 msgstr "ISFDTYPE"
2219
2220 #. type: TH
2221 #: build/C/man3/isfdtype.3:26
2222 #, no-wrap
2223 msgid "2014-03-13"
2224 msgstr "2014-03-13"
2225
2226 #. type: Plain text
2227 #: build/C/man3/isfdtype.3:29
2228 msgid "isfdtype - test file type of a file descriptor"
2229 msgstr "isfdtype - ファイルディスクリプターのファイル種別を検査する"
2230
2231 #. type: Plain text
2232 #: build/C/man3/isfdtype.3:33
2233 #, no-wrap
2234 msgid ""
2235 "B<#include E<lt>sys/stat.hE<gt>>\n"
2236 "B<#include E<lt>sys/socket.hE<gt>>\n"
2237 msgstr ""
2238 "B<#include E<lt>sys/stat.hE<gt>>\n"
2239 "B<#include E<lt>sys/socket.hE<gt>>\n"
2240
2241 #. type: Plain text
2242 #: build/C/man3/isfdtype.3:35
2243 #, no-wrap
2244 msgid "B<int isfdtype(int >I<fd>B<, int >I<fdtype>B<);>\n"
2245 msgstr "B<int isfdtype(int >I<fd>B<, int >I<fdtype>B<);>\n"
2246
2247 #. type: Plain text
2248 #: build/C/man3/isfdtype.3:43
2249 msgid "B<isfdtype>():"
2250 msgstr "B<isfdtype>():"
2251
2252 #. type: TP
2253 #: build/C/man3/isfdtype.3:46
2254 #, no-wrap
2255 msgid "Since glibc 2.20:"
2256 msgstr "glibc 2.20 以降:"
2257
2258 #. type: Plain text
2259 #: build/C/man3/isfdtype.3:49
2260 msgid "_DEFAULT_SOURCE"
2261 msgstr "_DEFAULT_SOURCE"
2262
2263 #. type: TP
2264 #: build/C/man3/isfdtype.3:49
2265 #, no-wrap
2266 msgid "Before glibc 2.20:"
2267 msgstr "glibc 2.20 より前:"
2268
2269 #. type: Plain text
2270 #: build/C/man3/isfdtype.3:52
2271 msgid "_BSD_SOURCE || _SVID_SOURCE"
2272 msgstr "_BSD_SOURCE || _SVID_SOURCE"
2273
2274 #. type: Plain text
2275 #: build/C/man3/isfdtype.3:72
2276 msgid "The B<isfdtype>()  function tests whether the file descriptor I<fd> refers to a file of type I<fdtype>.  The I<fdtype> argument specifies one of the B<S_IF*> constants defined in I<E<lt>sys/stat.hE<gt>> and documented in B<stat>(2)  (e.g., B<S_IFREG>)."
2277 msgstr "B<isfdtype>() 関数はファイルディスクリプター I<fd> がタイプが I<fdtype> のファイルを参照しているかを検査する。 I<fdtype> 引き数には、I<E<lt>sys/stat.hE<gt>> で定義されている B<S_IF*> 定数のひとつ (B<S_IFREG> など) を指定する。 B<S_IF*> 定数の説明は B<stat>(2) にある。"
2278
2279 #. type: Plain text
2280 #: build/C/man3/isfdtype.3:83
2281 msgid "The B<isfdtype>()  function returns 1 if the file descriptor I<fd> is of type I<fdtype> and 0 if it is not.  On error, -1 is returned and I<errno> is set to indicate the cause."
2282 msgstr "B<isfdtype>() 関数は、ファイルディスクリプター I<fd> がタイプ I<fdtype> であった場合に 1 を返し、そうでない場合に 0 を返す。 エラーの場合、 -1 を返し、I<errno> に原因を示す値を設定する。"
2283
2284 #. type: Plain text
2285 #: build/C/man3/isfdtype.3:88
2286 msgid "The B<isfdtype>()  function can fail with any of the same errors as B<fstat>(3)."
2287 msgstr "B<isfdtype>() 関数は B<fstat>(3) と同じエラーで失敗する。"
2288
2289 #. type: Plain text
2290 #: build/C/man3/isfdtype.3:98
2291 msgid "The B<isfdtype>()  function is not specified in any standard, but did appear in the draft POSIX.1g standard.  It is present on OpenBSD and Tru64 UNIX (where the required header file in both cases is just I<E<lt>sys/stat.hE<gt>>, as shown in the POSIX.1g draft), and possibly other systems."
2292 msgstr "B<isfdtype>() 関数はどの標準でも規定されていないが、 POSIX.1g 標準のドラフトに登場したことはある。 OpenBSD と Tru64 UNIX に存在し、おそらく他のシステムにも存在する (OpenBSD と Tru64 UNIX のどちらの場合でも必要なヘッダーファイルは I<E<lt>sys/stat.hE<gt>> だけであり、POSIX.1g ドラフトに書かれていたのと同じである)。"
2293
2294 #. type: Plain text
2295 #: build/C/man3/isfdtype.3:102
2296 msgid "Portable applications should use B<fstat>(3)  instead."
2297 msgstr "移植性が求められるアプリケーションでは B<fstat>(3) を使用すべきである。"
2298
2299 #. type: Plain text
2300 #: build/C/man3/isfdtype.3:104
2301 msgid "B<fstat>(3)"
2302 msgstr "B<fstat>(3)"
2303
2304 #. type: TH
2305 #: build/C/man2/listxattr.2:25
2306 #, no-wrap
2307 msgid "LISTXATTR"
2308 msgstr "LISTXATTR"
2309
2310 #. type: TH
2311 #: build/C/man2/listxattr.2:25 build/C/man2/removexattr.2:25
2312 #: build/C/man2/setxattr.2:25
2313 #, no-wrap
2314 msgid "2014-02-06"
2315 msgstr "2014-02-06"
2316
2317 #. type: Plain text
2318 #: build/C/man2/listxattr.2:28
2319 msgid "listxattr, llistxattr, flistxattr - list extended attribute names"
2320 msgstr "listxattr, llistxattr, flistxattr - 拡張属性の名前リストを得る"
2321
2322 #. type: Plain text
2323 #: build/C/man2/listxattr.2:39
2324 #, no-wrap
2325 msgid ""
2326 "B<ssize_t listxattr(const char\\ *>I<path>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2327 "B<ssize_t llistxattr(const char\\ *>I<path>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2328 "B<ssize_t flistxattr(int >I<fd>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2329 msgstr ""
2330 "B<ssize_t listxattr(const char\\ *>I<path>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2331 "B<ssize_t llistxattr(const char\\ *>I<path>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2332 "B<ssize_t flistxattr(int >I<fd>B<, char\\ *>I<list>B<, size_t >I<size>B<);>\n"
2333
2334 #. type: Plain text
2335 #: build/C/man2/listxattr.2:50
2336 msgid "Extended attributes are name:value pairs associated with inodes (files, directories, symbolic links, etc.).  They are extensions to the normal attributes which are associated with all inodes in the system (i.e., the B<stat>(2)  data).  A complete overview of extended attributes concepts can be found in B<attr>(5)."
2337 msgstr "拡張属性は、inode (ファイル、ディレクトリ、シンボリックリンク等) に 関連付けられた I<name>:I<value> の対である。 これらは、システム上のすべての inode に関連付けられた通常の属性 (B<stat>(2)  が返すデータ) を拡張するものである。 拡張属性のコンセプトは B<attr>(5)  に書かれている。"
2338
2339 #. type: Plain text
2340 #: build/C/man2/listxattr.2:66
2341 msgid "B<listxattr>()  retrieves the list of extended attribute names associated with the given I<path> in the filesystem.  The retrieved list is placed in I<list>, a caller-allocated buffer whose size (in bytes) is specified in the argument I<size>.  The list is the set of (null-terminated) names, one after the other.  Names of extended attributes to which the calling process does not have access may be omitted from the list.  The length of the attribute name I<list> is returned."
2342 msgstr "B<listxattr>()  は、ファイルシステム内の指定された I<path> に対応する拡張属性の名前リストを取得する。取得したリストは I<list> に格納される。 I<list> は呼び出し側で確保するバッファーで、引き数 I<size> でバッファーのサイズを (バイト単位で) 指定する。リストは名前の集合で、ヌル終端された文字列が連続して並んでいる。呼び出したプロセスがアクセスする権限のない拡張属性の名前は、リストに含まれない。拡張属性の名前の I<list> の長さが返される。"
2343
2344 #. type: Plain text
2345 #: build/C/man2/listxattr.2:73
2346 msgid "B<llistxattr>()  is identical to B<listxattr>(), except in the case of a symbolic link, where the list of names of extended attributes associated with the link itself is retrieved, not the file that it refers to."
2347 msgstr "B<llistxattr>()  は B<listxattr>()  と同じだが、シンボリックリンクの場合に、リンクが参照しているファイル ではなく、リンクそのものの拡張属性の名前リストを取得する点だけが異なる。"
2348
2349 #. type: Plain text
2350 #: build/C/man2/listxattr.2:83
2351 msgid "B<flistxattr>()  is identical to B<listxattr>(), only the open file referred to by I<fd> (as returned by B<open>(2))  is interrogated in place of I<path>."
2352 msgstr "B<flistxattr>()  は B<listxattr>()  と同じだが、 I<path> の代わりに I<fd> で参照されたオープン済みファイルの情報だけを取得する点が異なる (I<filedes> は B<open>(2)  によって返される)。"
2353
2354 #. type: Plain text
2355 #: build/C/man2/listxattr.2:89
2356 msgid "A single extended attribute I<name> is a simple null-terminated string.  The name includes a namespace prefix; there may be several, disjoint namespaces associated with an individual inode."
2357 msgstr "個々の拡張属性の I<name> は普通のヌル終端された文字列である。 名前には、名前空間を表す接頭辞 (prefix) が含まれる; 個々の inode に対して、互いに独立な名前空間が複数あってもよい。"
2358
2359 #. type: Plain text
2360 #: build/C/man2/listxattr.2:95
2361 msgid "An empty buffer of I<size> zero can be passed into these calls to return the current size of the list of extended attribute names, which can be used to estimate the size of a buffer which is sufficiently large to hold the list of names."
2362 msgstr "I<size> に 0 を指定して空のバッファーをこれらのシステムコールに渡すことができ、 この場合には拡張属性の名前リストの現在のサイズが返される。 この方法は名前リストを保持するのに十分な大きさのバッファーサイズを 見積もるのに使うことができる、"
2363
2364 #. type: SS
2365 #: build/C/man2/listxattr.2:95
2366 #, no-wrap
2367 msgid "Example"
2368 msgstr "Example"
2369
2370 #. type: Plain text
2371 #: build/C/man2/listxattr.2:100
2372 msgid "The I<list> of names is returned as an unordered array of null-terminated character strings (attribute names are separated by null bytes (\\(aq\\e0\\(aq)), like this:"
2373 msgstr "返される名前の I<list> は、ヌル終端された文字列の配列 (属性名はヌルバイト (\\(aq\\e0\\(aq)  で区切られている) で、各要素は整列されている訳ではない。 以下に例を示す:"
2374
2375 #. type: Plain text
2376 #: build/C/man2/listxattr.2:105
2377 #, no-wrap
2378 msgid "user.name1\\e0system.name1\\e0user.name2\\e0\n"
2379 msgstr "user.name1\\e0system.name1\\e0user.name2\\e0\n"
2380
2381 #. type: Plain text
2382 #: build/C/man2/listxattr.2:113
2383 msgid "Filesystems like ext2, ext3 and XFS which implement POSIX ACLs using extended attributes, might return a I<list> like this:"
2384 msgstr "拡張属性を使って POSIX ACL を実装している ext2、ext3、XFS のようなファイル システムでは、返される I<list> は以下のようになることだろう:"
2385
2386 #. type: Plain text
2387 #: build/C/man2/listxattr.2:118
2388 #, no-wrap
2389 msgid "system.posix_acl_access\\e0system.posix_acl_default\\e0\n"
2390 msgstr "system.posix_acl_access\\e0system.posix_acl_default\\e0\n"
2391
2392 #. type: Plain text
2393 #: build/C/man2/listxattr.2:127
2394 msgid "On success, a nonnegative number is returned indicating the size of the extended attribute name list.  On failure, -1 is returned and I<errno> is set appropriately."
2395 msgstr "成功した場合、拡張属性の名前リストの長さを表す非負の数が返される。 失敗した場合、 -1 が返され、 I<errno> に適切な値がセットされる。"
2396
2397 #. type: Plain text
2398 #: build/C/man2/listxattr.2:138
2399 msgid "The I<size> of the I<list> buffer is too small to hold the result."
2400 msgstr "I<list> バッファーの大きさ I<size> が結果を保持するのに十分な大きさでなかった。"
2401
2402 #. type: Plain text
2403 #: build/C/man2/listxattr.2:163
2404 msgid "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<open>(2), B<removexattr>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
2405 msgstr "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<open>(2), B<removexattr>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
2406
2407 #. type: TH
2408 #: build/C/man2/mount.2:40
2409 #, no-wrap
2410 msgid "MOUNT"
2411 msgstr "MOUNT"
2412
2413 #. type: TH
2414 #: build/C/man2/mount.2:40
2415 #, no-wrap
2416 msgid "2014-09-21"
2417 msgstr "2014-09-21"
2418
2419 #. type: Plain text
2420 #: build/C/man2/mount.2:43
2421 msgid "mount - mount filesystem"
2422 msgstr "mount - ファイルシステムをマウント/アンマウントする"
2423
2424 #. type: Plain text
2425 #: build/C/man2/mount.2:46 build/C/man2/umount.2:36
2426 #, no-wrap
2427 msgid "B<#include E<lt>sys/mount.hE<gt>>\n"
2428 msgstr "B<#include E<lt>sys/mount.hE<gt>>\n"
2429
2430 #. type: Plain text
2431 #: build/C/man2/mount.2:50
2432 #, no-wrap
2433 msgid ""
2434 "B<int mount(const char *>I<source>B<, const char *>I<target>B<,>\n"
2435 "B<          const char *>I<filesystemtype>B<, unsigned long >I<mountflags>B<,>\n"
2436 "B<          const void *>I<data>B<);>\n"
2437 msgstr ""
2438 "B<int mount(const char *>I<source>B<, const char *>I<target>B<,>\n"
2439 "B<          const char *>I<filesystemtype>B<, unsigned long >I<mountflags>B<,>\n"
2440 "B<          const void *>I<data>B<);>\n"
2441
2442 #. type: Plain text
2443 #: build/C/man2/mount.2:58
2444 msgid "B<mount>()  attaches the filesystem specified by I<source> (which is often a device name, but can also be a directory name or a dummy) to the directory specified by I<target>."
2445 msgstr "B<mount>()  は I<source> で指定されたファイルシステム (デバイス名であることが多いが、 ディレクトリ名やダミーの場合もある) を I<target> で指定されたディレクトリに結びつける。"
2446
2447 #. type: Plain text
2448 #: build/C/man2/mount.2:62
2449 msgid "Appropriate privilege (Linux: the B<CAP_SYS_ADMIN> capability) is required to mount filesystems."
2450 msgstr "ファイルシステムのマウントを行うには、 適切な権限 (Linux では B<CAP_SYS_ADMIN> ケーパビリティ) が必要である。"
2451
2452 #.  Multiple mounts on same mount point: since 2.3.99pre7.
2453 #. type: Plain text
2454 #: build/C/man2/mount.2:67
2455 msgid "Since Linux 2.4 a single filesystem can be visible at multiple mount points, and multiple mounts can be stacked on the same mount point."
2456 msgstr "Linux 2.4 以降、ひとつのファイルシステムを複数のマウントポイントに 結びつけることができ、同じマウントポイントに複数のマウントをスタック させることもできる。"
2457
2458 #. type: Plain text
2459 #: build/C/man2/mount.2:76
2460 msgid "Values for the I<filesystemtype> argument supported by the kernel are listed in I</proc/filesystems> (e.g., \"minix\", \"ext2\", \"ext3\", \"jfs\", \"xfs\", \"reiserfs\", \"msdos\", \"proc\", \"nfs\", \"iso9660\").  Further types may become available when the appropriate modules are loaded."
2461 msgstr "引き数 I<filesystemtype> としてカーネルが対応している値は、 I</proc/filesystems> で参照できる (例えば \"minix\", \"ext2\", \"ext3\", \"jfs\", \"xfs\", \"reiserfs\", \"msdos\", \"proc\", \"nfs\", \"iso9660\" 等)。 適切なモジュールが読み込まれると、さらに別の値が利用可能になるかもしれない。"
2462
2463 #.  (as defined in \fI<linux/fs.h>\fP for libc4 and libc5
2464 #.  and in \fI<sys/mount.h>\fP for glibc2)
2465 #.  FIXME 2.6.15 added flags for "shared subtree" functionality:
2466 #.  MS_UNBINDABLE, MS_PRIVATE, MS_SHARED, MS_SLAVE
2467 #.      MS_PRIVATE.
2468 #.              All mounts are private by default. Previously shared mounts
2469 #.              can be remarked PRIVATE.
2470 #.      MS_SHARED
2471 #.              Mount points that are marked SHARED propagate mount events
2472 #.              to one another after bing cloned.
2473 #.      MS_SLAVE
2474 #.              A previously shared mount point can be marked SALVE, meaning
2475 #.              it receives propagated events, but does not propagate events.
2476 #.      MS_UNBINDABLE
2477 #.              mounts cannot be bound into other places, and will not be
2478 #.              propagated into new subtrees    
2479 #.      mount --make-rshared ==> MS_SHARED | MS_REC
2480 #.  These settings are visible in proc/mountinfo
2481 #.  These need to be documented on this page.
2482 #.  See:
2483 #.  Documentation/filesystems/sharedsubtree.txt
2484 #.  http://lwn.net/Articles/159077/
2485 #.  http://myweb.sudhaa.com:2022/~ram/sharedsubtree/paper/sharedsubtree.1.pdf
2486 #.  Shared-Subtree Concept, Implementation, and Applications in Linux
2487 #.  Al Viro viro@ftp.linux.org.uk
2488 #.  Ram Pai linuxram@us.ibm.com
2489 #.  http://foss.in/2005/slides/sharedsubtree1.pdf
2490 #.  Shared Subtree Concept and Implementation in the Linux Kernel
2491 #.  Ram Pai
2492 #.  http://www.ibm.com/developerworks/linux/library/l-mount-namespaces/index.html
2493 #.      Applying mount namespaces
2494 #.      Uncover practical applications for advanced Linux mounts features
2495 #.      Serge E. Hallyn (sergeh@us.ibm.com), Software Engineer, IBM
2496 #.      Ram Pai (linuxram@us.ibm.com), Software Engineer, IBM
2497 #.      Date:  17 Sep 2007
2498 #.  FIXME 2.6.25 Added MS_I_VERSION, which needs to be documented.
2499 #. type: Plain text
2500 #: build/C/man2/mount.2:130
2501 msgid "The I<mountflags> argument may have the magic number 0xC0ED (B<MS_MGC_VAL>)  in the top 16 bits (this was required in kernel versions prior to 2.4, but is no longer required and ignored if specified), and various mount flags in the low order 16 bits:"
2502 msgstr ""
2503 "引き数 I<mountflags> の上位 16 ビットには、マジックナンバー 0xC0ED\n"
2504 "(B<MS_MGC_VAL>) を指定することができる (マジックナンバーは、\n"
2505 "カーネルバージョン 2.4 より前では必須であったが、\n"
2506 "現在は必要なく、指定されても無視される)。\n"
2507 "I<mountflags> の下位 16 ビットにマウントフラグを指定する。"
2508
2509 #. type: TP
2510 #: build/C/man2/mount.2:130
2511 #, no-wrap
2512 msgid "B<MS_BIND> (Linux 2.4 onward)"
2513 msgstr "B<MS_BIND> (Linux 2.4 以降)"
2514
2515 #.  since 2.4.0-test9
2516 #.  with the exception of the "hidden" MS_REC mountflags bit
2517 #. type: Plain text
2518 #: build/C/man2/mount.2:149
2519 msgid "Perform a bind mount, making a file or a directory subtree visible at another point within a filesystem.  Bind mounts may cross filesystem boundaries and span B<chroot>(2)  jails.  The I<filesystemtype> and I<data> arguments are ignored.  Up until Linux 2.6.26, I<mountflags> was also ignored (the bind mount has the same mount options as the underlying mount point)."
2520 msgstr ""
2521 "バインドマウントを行う。これはファイルやディレクトリの部分木を ファイルシス\n"
2522 "テム内部の別の場所で見えるようにするものである。 バインドマウントを使うと、\n"
2523 "ファイルシステムをまたいで B<chroot>(2) jail を構成することが可能になる。\n"
2524 "引き数 I<filesystemtype> と I<data> は無視される。 Linux 2.6.26 より前では\n"
2525 "I<mountflags> も無視されていた (バインドマウントでは、マウントポイントとなる\n"
2526 "ファイルシステムと同じマウントオプションが使用される)。"
2527
2528 #. type: TP
2529 #: build/C/man2/mount.2:149
2530 #, no-wrap
2531 msgid "B<MS_DIRSYNC> (since Linux 2.5.19)"
2532 msgstr "B<MS_DIRSYNC> (Linux 2.5.19 以降)"
2533
2534 #. type: Plain text
2535 #: build/C/man2/mount.2:155
2536 msgid "Make directory changes on this filesystem synchronous.  (This property can be obtained for individual directories or subtrees using B<chattr>(1).)"
2537 msgstr "このファイルシステムへのディレクトリ変更を同期的に行う。 (この特性は個々のディレクトリ、または B<chattr>(1)  を使った部分木毎に設定できる。)"
2538
2539 #. type: TP
2540 #: build/C/man2/mount.2:155
2541 #, no-wrap
2542 msgid "B<MS_MANDLOCK>"
2543 msgstr "B<MS_MANDLOCK>"
2544
2545 #.  FIXME Describe the MS_MOVE flag in more detail
2546 #. type: Plain text
2547 #: build/C/man2/mount.2:162
2548 msgid "Permit mandatory locking on files in this filesystem.  (Mandatory locking must still be enabled on a per-file basis, as described in B<fcntl>(2).)"
2549 msgstr "このファイルシステムのファイルに対して強制ロックを認める。 (強制ロックを有効にするには、 B<fcntl>(2)  で述べられている方法でファイル単位で許可をしなければならない)"
2550
2551 #. type: TP
2552 #: build/C/man2/mount.2:162
2553 #, no-wrap
2554 msgid "B<MS_MOVE>"
2555 msgstr "B<MS_MOVE>"
2556
2557 #. type: Plain text
2558 #: build/C/man2/mount.2:173
2559 msgid "Move a subtree.  I<source> specifies an existing mount point and I<target> specifies the new location.  The move is atomic: at no point is the subtree unmounted.  The I<filesystemtype>, I<mountflags>, and I<data> arguments are ignored."
2560 msgstr "部分木を移動する。 I<source> にはすでに存在するマウントポイントを指定し、 I<target> には新しい場所を指定する。 移動はアトミックである。 操作の実行中、部分ツリーがアンマウントされることはない。 I<filesystemtype>, I<mountflags>, I<data> 引き数は無視される。"
2561
2562 #. type: TP
2563 #: build/C/man2/mount.2:173
2564 #, no-wrap
2565 msgid "B<MS_NOATIME>"
2566 msgstr "B<MS_NOATIME>"
2567
2568 #. type: Plain text
2569 #: build/C/man2/mount.2:176
2570 msgid "Do not update access times for (all types of) files on this filesystem."
2571 msgstr "このファイルシステムの (全ての種類の) ファイルのアクセス時刻を更新しない。"
2572
2573 #. type: TP
2574 #: build/C/man2/mount.2:176
2575 #, no-wrap
2576 msgid "B<MS_NODEV>"
2577 msgstr "B<MS_NODEV>"
2578
2579 #. type: Plain text
2580 #: build/C/man2/mount.2:179
2581 msgid "Do not allow access to devices (special files) on this filesystem."
2582 msgstr "このファイルシステムのデバイス (スペシャルファイル) へのアクセスを許可しない。"
2583
2584 #. type: TP
2585 #: build/C/man2/mount.2:179
2586 #, no-wrap
2587 msgid "B<MS_NODIRATIME>"
2588 msgstr "B<MS_NODIRATIME>"
2589
2590 #. type: Plain text
2591 #: build/C/man2/mount.2:188
2592 msgid "Do not update access times for directories on this filesystem.  This flag provides a subset of the functionality provided by B<MS_NOATIME>; that is, B<MS_NOATIME> implies B<MS_NODIRATIME>."
2593 msgstr "このファイルシステムのディレクトリのアクセス時刻を更新しない。 このフラグは B<MS_NOATIME> で提供される機能のサブセットを提供する。つまり、 B<MS_NOATIME> では B<MS_NODIRATIME> が暗黙のうち設定される。"
2594
2595 #. type: TP
2596 #: build/C/man2/mount.2:188
2597 #, no-wrap
2598 msgid "B<MS_NOEXEC>"
2599 msgstr "B<MS_NOEXEC>"
2600
2601 #.  (Possibly useful for a filesystem that contains non-Linux executables.
2602 #.  Often used as a security feature, e.g., to make sure that restricted
2603 #.  users cannot execute files uploaded using ftp or so.)
2604 #. type: Plain text
2605 #: build/C/man2/mount.2:194
2606 msgid "Do not allow programs to be executed from this filesystem."
2607 msgstr "このファイルシステムにあるプログラムの実行を許可しない。"
2608
2609 #. type: TP
2610 #: build/C/man2/mount.2:194
2611 #, no-wrap
2612 msgid "B<MS_NOSUID>"
2613 msgstr "B<MS_NOSUID>"
2614
2615 #.  (This is a security feature to prevent users executing set-user-ID and
2616 #.  set-group-ID programs from removable disk devices.)
2617 #. type: Plain text
2618 #: build/C/man2/mount.2:200
2619 msgid "Do not honor set-user-ID and set-group-ID bits when executing programs from this filesystem."
2620 msgstr "このファイルシステムのプログラムを実行するときに、 set-user-ID ビットと set-group-ID ビットを無視する。"
2621
2622 #. type: TP
2623 #: build/C/man2/mount.2:200
2624 #, no-wrap
2625 msgid "B<MS_RDONLY>"
2626 msgstr "B<MS_RDONLY>"
2627
2628 #.  FIXME Document MS_REC, available since 2.4.11.
2629 #.  This flag has meaning in conjunction with MS_BIND and
2630 #.  also with the shared subtree flags.
2631 #. type: Plain text
2632 #: build/C/man2/mount.2:207
2633 msgid "Mount filesystem read-only."
2634 msgstr "ファイルシステムを読み込み専用でマウントする。"
2635
2636 #. type: TP
2637 #: build/C/man2/mount.2:207
2638 #, no-wrap
2639 msgid "B<MS_RELATIME> (since Linux 2.6.20)"
2640 msgstr "B<MS_RELATIME> (Linux 2.6.20 以降)"
2641
2642 #.  Matthew Garrett notes in the patch that added this behavior
2643 #.  that this lets utilities such as tmpreaper (which deletes
2644 #.  files based on last access time) work correctly.
2645 #. type: Plain text
2646 #: build/C/man2/mount.2:228
2647 msgid "When a file on this filesystem is accessed, update the file's last access time (atime) only if the current value of atime is less than or equal to the file's last modification time (mtime)  or last status change time (ctime).  This option is useful for programs, such as B<mutt>(1), that need to know when a file has been read since it was last modified.  Since Linux 2.6.30, the kernel defaults to the behavior provided by this flag (unless B<MS_NOATIME> was specified), and the B<MS_STRICTATIME> flag is required to obtain traditional semantics.  In addition, since Linux 2.6.30, the file's last access time is always updated if it is more than 1 day old."
2648 msgstr "このファイルシステム上のファイルがアクセスされた際、 そのファイルの最終アクセス時刻 (atime) の現在値が 最終修正時刻 (mtime) や最終状態変更時刻 (ctime) と 等しいか小さい場合にのみ、atime を更新する。 このオプションは、 B<mutt>(1)  のように、最後の内容修正以降にファイルがいつ読み出されたかを知る 必要があるプログラムで有用である。 Linux 2.6.30 以降では、 B<MS_NOATIME> が指定されていない場合には、このフラグの動作が カーネルのデフォルト動作となっており、 Linux 2.6.30 より前の動作をさせるためには B<MS_STRICTATIME> フラグを指定する必要がある。 これに加えて、Linux 2.6.30 以降では、 ファイルの最終アクセス時刻が 1 日以上前の場合、 ファイルの最終アクセス時刻は常に更新される。"
2649
2650 #. type: TP
2651 #: build/C/man2/mount.2:228
2652 #, no-wrap
2653 msgid "B<MS_REMOUNT>"
2654 msgstr "B<MS_REMOUNT>"
2655
2656 #. type: Plain text
2657 #: build/C/man2/mount.2:251
2658 msgid "Remount an existing mount.  This allows you to change the I<mountflags> and I<data> of an existing mount without having to unmount and remount the filesystem.  I<target> should be the same value specified in the initial B<mount>()  call; I<source> and I<filesystemtype> are ignored.  The I<mountflags> and I<data> arguments should match the values used in the original B<mount>()  call, except for those parameters that are being deliberately changed."
2659 msgstr "すでに存在するマウントを再マウントする。これにより、すでに存在するマウントの I<mountflags> と I<data> を、一度アンマウントしてから再マウントするという作業をせずに 変更できる。 I<target> は最初の B<mount>() 呼び出しと同じ値を指定する必要がある。 I<source> と I<filesystemtype> は無視される。 引き数 I<mountflags> と I<data> は、意図的に変更するもの以外は、 元の B<mount>() の呼び出しで使用した値と一致するようにすべきである。"
2660
2661 #. type: Plain text
2662 #: build/C/man2/mount.2:266
2663 msgid "The following I<mountflags> can be changed: B<MS_RDONLY>, B<MS_SYNCHRONOUS>, B<MS_MANDLOCK>; before kernel 2.6.16, the following could also be changed: B<MS_NOATIME> and B<MS_NODIRATIME>; and, additionally, before kernel 2.4.10, the following could also be changed: B<MS_NOSUID>, B<MS_NODEV>, B<MS_NOEXEC>."
2664 msgstr "I<mountflags> のうち B<MS_RDONLY>, B<MS_SYNCHRONOUS>, B<MS_MANDLOCK> は変更可能である。 カーネル 2.6.16 より前では、 B<MS_NOATIME>, B<MS_NODIRATIME> も変更可能であった。 カーネル 2.4.10 より前では、上記に加えて、 B<MS_NOSUID>, B<MS_NODEV>, B<MS_NOEXEC> も変更可能であった。"
2665
2666 #. type: TP
2667 #: build/C/man2/mount.2:266
2668 #, no-wrap
2669 msgid "B<MS_SILENT> (since Linux 2.6.17)"
2670 msgstr "B<MS_SILENT> (Linux 2.6.17 以降)"
2671
2672 #. type: Plain text
2673 #: build/C/man2/mount.2:274
2674 msgid "Suppress the display of certain (I<printk>())  warning messages in the kernel log.  This flag supersedes the misnamed and obsolete B<MS_VERBOSE> flag (available since Linux 2.4.12), which has the same meaning."
2675 msgstr "カーネルのログ内のある種の (I<printk>())  警告メッセージの表示を抑制する。 このフラグは、名前が不適切で廃止された B<MS_VERBOSE> フラグ (Linux 2.4.12 以降で利用可能) を置き換えるもので、同じ意味を持つ。"
2676
2677 #. type: TP
2678 #: build/C/man2/mount.2:274
2679 #, no-wrap
2680 msgid "B<MS_STRICTATIME> (since Linux 2.6.30)"
2681 msgstr "B<MS_STRICTATIME> (Linux 2.6.30 以降)"
2682
2683 #. type: Plain text
2684 #: build/C/man2/mount.2:284
2685 msgid "Always update the last access time (atime) when files on this filesystem are accessed.  (This was the default behavior before Linux 2.6.30.)  Specifying this flag overrides the effect of setting the B<MS_NOATIME> and B<MS_RELATIME> flags."
2686 msgstr "このファイルシステムがアクセスされた際に最終アクセス時刻 (atime)  を常に更新する (Linux 2.6.30 より前では、これがデフォルトの動作 であった)。 このフラグを指定することで、 B<MS_NOATIME> と B<MS_RELATIME> の両フラグを設定した際の影響を上書きすることができる。"
2687
2688 #. type: TP
2689 #: build/C/man2/mount.2:284
2690 #, no-wrap
2691 msgid "B<MS_SYNCHRONOUS>"
2692 msgstr "B<MS_SYNCHRONOUS>"
2693
2694 #. type: Plain text
2695 #: build/C/man2/mount.2:292
2696 msgid "Make writes on this filesystem synchronous (as though the B<O_SYNC> flag to B<open>(2)  was specified for all file opens to this filesystem)."
2697 msgstr "ファイルシステムに対して同期的に書き込みを行う。 (このファイルシステムの全てのオープンされたファイルに対して、 B<open>(2)  のフラグに B<O_SYNC> を指定したような動作となる)"
2698
2699 #. type: Plain text
2700 #: build/C/man2/mount.2:304
2701 msgid "From Linux 2.4 onward, the B<MS_NODEV>, B<MS_NOEXEC>, and B<MS_NOSUID> flags are settable on a per-mount-point basis.  From kernel 2.6.16 onward, B<MS_NOATIME> and B<MS_NODIRATIME> are also settable on a per-mount-point basis.  The B<MS_RELATIME> flag is also settable on a per-mount-point basis."
2702 msgstr "Linux 2.4 以降では、 B<MS_NODEV>, B<MS_NOEXEC>, B<MS_NOSUID> はマウントポイント単位で指定できる。 カーネル 2.6.16 以降では、 B<MS_NOATIME> と B<MS_NODIRATIME> もマウントポイント単位で指定できる。 また、 B<MS_RELATIME> フラグもマウントポイント単位で設定できる。"
2703
2704 #. type: Plain text
2705 #: build/C/man2/mount.2:313
2706 msgid "The I<data> argument is interpreted by the different filesystems.  Typically it is a string of comma-separated options understood by this filesystem.  See B<mount>(8)  for details of the options available for each filesystem type."
2707 msgstr "引き数 I<data> がどのように解釈されるかは、ファイルシステムによって異なる。 たいていは、指定されたファイルシステムで利用可能なオプションが コンマ区切りで並べられた文字列である。 各ファイルシステムに対して指定可能なオプションの詳細については B<mount>(8)  を参照のこと。"
2708
2709 #. type: Plain text
2710 #: build/C/man2/mount.2:318 build/C/man2/stat.2:522 build/C/man2/statfs.2:162
2711 #: build/C/man3/statvfs.3:101 build/C/man2/umount.2:104
2712 msgid "On success, zero is returned.  On error, -1 is returned, and I<errno> is set appropriately."
2713 msgstr "成功した場合、0 が返される。 失敗した場合、 -1 が返され、 I<errno> に適切な値がセットされる。"
2714
2715 #. type: Plain text
2716 #: build/C/man2/mount.2:324 build/C/man2/umount.2:110
2717 msgid "The error values given below result from filesystem type independent errors.  Each filesystem type may have its own special errors and its own special behavior.  See the Linux kernel source code for details."
2718 msgstr "以下に示すエラーは、ファイルシステムに依存しないものである。 それぞれのファイルシステムタイプには固有のエラーが存在する場合があり、 独自の動作をすることもある。詳しくは Linux カーネルのソースを見て欲しい。"
2719
2720 #. type: TP
2721 #: build/C/man2/mount.2:324 build/C/man2/spu_create.2:173
2722 #: build/C/man2/stat.2:523 build/C/man2/statfs.2:163
2723 #: build/C/man3/statvfs.3:102
2724 #, no-wrap
2725 msgid "B<EACCES>"
2726 msgstr "B<EACCES>"
2727
2728 #.  mtk: Probably: write permission is required for MS_BIND, with
2729 #.  the error EPERM if not present; CAP_DAC_OVERRIDE is required.
2730 #. type: Plain text
2731 #: build/C/man2/mount.2:339
2732 msgid "A component of a path was not searchable.  (See also B<path_resolution>(7).)  Or, mounting a read-only filesystem was attempted without giving the B<MS_RDONLY> flag.  Or, the block device I<source> is located on a filesystem mounted with the B<MS_NODEV> option."
2733 msgstr "パスに含まれるディレクトリに検索 (実行) 許可がない (B<path_resolution>(7)  も参照)。 または、 B<MS_RONLY> フラグを指定せずに読み込み専用のファイルシステムを マウントしようとした。 または、ブロックデバイス I<source> が B<MS_NODEV> オプションでマウントされたファイルシステム上にある。"
2734
2735 #. type: TP
2736 #: build/C/man2/mount.2:339 build/C/man2/umount.2:117
2737 #, no-wrap
2738 msgid "B<EBUSY>"
2739 msgstr "B<EBUSY>"
2740
2741 #. type: Plain text
2742 #: build/C/man2/mount.2:351
2743 msgid "I<source> is already mounted.  Or, it cannot be remounted read-only, because it still holds files open for writing.  Or, it cannot be mounted on I<target> because I<target> is still busy (it is the working directory of some thread, the mount point of another device, has open files, etc.)."
2744 msgstr "I<source> は既にマウントされている。 または、書き込み用にオープンされたファイルがあり、 読み込み専用で再マウントすることができない。 または、 I<target> が使用中 (busy) のため、 I<target> にマウントできない。 I<target> が使用中の例としては、あるスレッドの動作ディレクトリ (working directory) であるとか、別のデバイスのマウントポイントであるとか、 オープンされたファイルが存在する、などがある。"
2745
2746 #. type: TP
2747 #: build/C/man2/mount.2:351 build/C/man2/spu_create.2:181
2748 #: build/C/man2/spu_run.2:158 build/C/man2/stat.2:534
2749 #: build/C/man2/statfs.2:175 build/C/man3/statvfs.3:114
2750 #: build/C/man2/sysfs.2:80 build/C/man2/umount.2:121 build/C/man2/ustat.2:80
2751 #, no-wrap
2752 msgid "B<EFAULT>"
2753 msgstr "B<EFAULT>"
2754
2755 #. type: Plain text
2756 #: build/C/man2/mount.2:354
2757 msgid "One of the pointer arguments points outside the user address space."
2758 msgstr "場所を示す引き数のひとつがユーザーのアドレス空間の外を指している。"
2759
2760 #. type: Plain text
2761 #: build/C/man2/mount.2:369
2762 msgid "I<source> had an invalid superblock.  Or, a remount (B<MS_REMOUNT>)  was attempted, but I<source> was not already mounted on I<target>.  Or, a move (B<MS_MOVE>)  was attempted, but I<source> was not a mount point, or was \\(aq/\\(aq."
2763 msgstr "I<source> に不正なスーパーブロックがある。 または、 I<source> が I<target> にマウントされていないのに、再マウント (B<MS_REMOUNT>)  が要求された。 または、 I<source> がマウントポイントではないか、\\(aq/\\(aq なのに、移動 (B<MS_MOVE>)  が要求された。"
2764
2765 #. type: TP
2766 #: build/C/man2/mount.2:369 build/C/man2/spu_create.2:192
2767 #: build/C/man2/stat.2:537 build/C/man2/statfs.2:187
2768 #: build/C/man3/statvfs.3:126
2769 #, no-wrap
2770 msgid "B<ELOOP>"
2771 msgstr "B<ELOOP>"
2772
2773 #. type: Plain text
2774 #: build/C/man2/mount.2:376
2775 msgid "Too many links encountered during pathname resolution.  Or, a move was attempted, while I<target> is a descendant of I<source>."
2776 msgstr "パス名の解決中に登場したリンクが多すぎた。 または、 I<target> が I<source> の子孫なのに移動が要求された。"
2777
2778 #. type: TP
2779 #: build/C/man2/mount.2:376 build/C/man2/spu_create.2:196
2780 #, no-wrap
2781 msgid "B<EMFILE>"
2782 msgstr "B<EMFILE>"
2783
2784 #. type: Plain text
2785 #: build/C/man2/mount.2:380
2786 msgid "(In case no block device is required:)  Table of dummy devices is full."
2787 msgstr "(ブロックデバイスが必要でない場合)  ダミーデバイスのテーブルが一杯になった。"
2788
2789 #. type: TP
2790 #: build/C/man2/mount.2:380 build/C/man2/spu_create.2:199
2791 #: build/C/man2/stat.2:540 build/C/man2/statfs.2:192
2792 #: build/C/man3/statvfs.3:131 build/C/man2/umount.2:143
2793 #, no-wrap
2794 msgid "B<ENAMETOOLONG>"
2795 msgstr "B<ENAMETOOLONG>"
2796
2797 #. type: Plain text
2798 #: build/C/man2/mount.2:384 build/C/man2/umount.2:147
2799 msgid "A pathname was longer than B<MAXPATHLEN>."
2800 msgstr "パス名の長さが B<MAXPATHLEN> より長かった。"
2801
2802 #. type: TP
2803 #: build/C/man2/mount.2:384 build/C/man2/spu_create.2:206
2804 #, no-wrap
2805 msgid "B<ENODEV>"
2806 msgstr "B<ENODEV>"
2807
2808 #. type: Plain text
2809 #: build/C/man2/mount.2:388
2810 msgid "I<filesystemtype> not configured in the kernel."
2811 msgstr "I<filesystemtype> がカーネル中で定義 (config) されていない。"
2812
2813 #. type: TP
2814 #: build/C/man2/mount.2:388 build/C/man2/spu_create.2:210
2815 #: build/C/man2/stat.2:544 build/C/man2/statfs.2:197
2816 #: build/C/man3/statvfs.3:136 build/C/man2/umount.2:147
2817 #, no-wrap
2818 msgid "B<ENOENT>"
2819 msgstr "B<ENOENT>"
2820
2821 #. type: Plain text
2822 #: build/C/man2/mount.2:391 build/C/man2/umount.2:150
2823 msgid "A pathname was empty or had a nonexistent component."
2824 msgstr "パス名が空である。もしくは指定されたパスが存在しない。"
2825
2826 #. type: TP
2827 #: build/C/man2/mount.2:391 build/C/man2/spu_create.2:215
2828 #: build/C/man2/spu_run.2:179 build/C/man2/stat.2:551
2829 #: build/C/man2/statfs.2:203 build/C/man3/statvfs.3:142
2830 #: build/C/man2/umount.2:150
2831 #, no-wrap
2832 msgid "B<ENOMEM>"
2833 msgstr "B<ENOMEM>"
2834
2835 #. type: Plain text
2836 #: build/C/man2/mount.2:394 build/C/man2/umount.2:153
2837 msgid "The kernel could not allocate a free page to copy filenames or data into."
2838 msgstr "カーネルがファイル名やデータをコピーするための空きページを確保できなかった。"
2839
2840 #. type: TP
2841 #: build/C/man2/mount.2:394
2842 #, no-wrap
2843 msgid "B<ENOTBLK>"
2844 msgstr "B<ENOTBLK>"
2845
2846 #. type: Plain text
2847 #: build/C/man2/mount.2:398
2848 msgid "I<source> is not a block device (and a device was required)."
2849 msgstr "(ブロックデバイスが必要だが)  I<source> がブロックデバイスではない。"
2850
2851 #. type: TP
2852 #: build/C/man2/mount.2:398 build/C/man2/spu_create.2:228
2853 #: build/C/man2/stat.2:554 build/C/man2/stat.2:589 build/C/man2/statfs.2:209
2854 #: build/C/man3/statvfs.3:148
2855 #, no-wrap
2856 msgid "B<ENOTDIR>"
2857 msgstr "B<ENOTDIR>"
2858
2859 #. type: Plain text
2860 #: build/C/man2/mount.2:404
2861 msgid "I<target>, or a prefix of I<source>, is not a directory."
2862 msgstr "I<target> か、 I<source> のプレフィックスがディレクトリではない。"
2863
2864 #. type: TP
2865 #: build/C/man2/mount.2:404
2866 #, no-wrap
2867 msgid "B<ENXIO>"
2868 msgstr "B<ENXIO>"
2869
2870 #. type: Plain text
2871 #: build/C/man2/mount.2:409
2872 msgid "The major number of the block device I<source> is out of range."
2873 msgstr "ブロックデバイス I<source> のメジャー番号が範囲外である。"
2874
2875 #. type: TP
2876 #: build/C/man2/mount.2:409 build/C/man2/spu_create.2:233
2877 #: build/C/man2/umount.2:153
2878 #, no-wrap
2879 msgid "B<EPERM>"
2880 msgstr "B<EPERM>"
2881
2882 #. type: Plain text
2883 #: build/C/man2/mount.2:412 build/C/man2/umount.2:156
2884 msgid "The caller does not have the required privileges."
2885 msgstr "呼び出し元が必要な権限を持っていない。"
2886
2887 #.  FIXME . Definitions of the so-far-undocumented MS_UNBINDABLE, MS_PRIVATE,
2888 #.  MS_SHARED, and MS_SLAVE were (also) only added to glibc headers in 2.12.
2889 #. type: Plain text
2890 #: build/C/man2/mount.2:423
2891 msgid "The definitions of B<MS_DIRSYNC>, B<MS_MOVE>, B<MS_REC>, B<MS_RELATIME>, and B<MS_STRICTATIME> were added to glibc headers in version 2.12."
2892 msgstr "B<MS_DIRSYNC>, B<MS_MOVE>, B<MS_REC>, B<MS_RELATIME>, B<MS_STRICTATIME> の定義が glibc のヘッダに追加されたのは バージョン 2.12 においてである。"
2893
2894 #. type: Plain text
2895 #: build/C/man2/mount.2:426
2896 msgid "This function is Linux-specific and should not be used in programs intended to be portable."
2897 msgstr "この関数は Linux 固有の関数であり、移植を考慮したプログラムでは 使用すべきでない。"
2898
2899 #. type: Plain text
2900 #: build/C/man2/mount.2:435
2901 msgid "The original B<MS_SYNC> flag was renamed B<MS_SYNCHRONOUS> in 1.1.69 when a different B<MS_SYNC> was added to I<E<lt>mman.hE<gt>>."
2902 msgstr "元の B<MS_SYNC> フラグは、別の B<MS_SYNC> が I<E<lt>mman.hE<gt>> に追加されたので 1.1.69 から B<MS_SYNCHRONOUS> に名前が変わった。"
2903
2904 #.  The change is in patch-2.4.0-prerelease.
2905 #. type: Plain text
2906 #: build/C/man2/mount.2:444
2907 msgid "Before Linux 2.4 an attempt to execute a set-user-ID or set-group-ID program on a filesystem mounted with B<MS_NOSUID> would fail with B<EPERM>.  Since Linux 2.4 the set-user-ID and set-group-ID bits are just silently ignored in this case."
2908 msgstr "Linux 2.4 より前のバージョンでは、 B<MS_NOSUID> オプション付きでマウントされたファイルシステム上の set-UID や set-GID のプログラムを実行しようとすると、 B<EPERM> エラーとなった。 Linux 2.4 以降では、このような場合は set-UID ビットや set-GID ビットが 無視されるだけである。"
2909
2910 #. type: SS
2911 #: build/C/man2/mount.2:444
2912 #, no-wrap
2913 msgid "Per-process namespaces"
2914 msgstr "プロセス単位の名前空間"
2915
2916 #. type: Plain text
2917 #: build/C/man2/mount.2:455
2918 msgid "Starting with kernel 2.4.19, Linux provides per-process mount namespaces.  A mount namespace is the set of filesystem mounts that are visible to a process.  Mount-point namespaces can be (and usually are)  shared between multiple processes, and changes to the namespace (i.e., mounts and unmounts) by one process are visible to all other processes sharing the same namespace.  (The pre-2.4.19 Linux situation can be considered as one in which a single namespace was shared by every process on the system.)"
2919 msgstr "カーネル 2.4.19 以降の Linux では、プロセス単位のマウント名前空間 (mount namespace) が提供されている。マウント名前空間とは、 あるプロセスに見えているファイルシステムのマウントの集合である。 マウントポイントの名前空間は複数のプロセスで共有することができ、 普通は共有されている。 一つのプロセスによる名前空間の変更 (すなわち、マウントやアンマウント) は 同じ名前空間を共有する他の全てのプロセスにも見える。 (2.4.19 より前の Linux は、一つの名前空間がシステム上の全プロセスで 共有される状況とみなすことができる。)"
2920
2921 #. type: Plain text
2922 #: build/C/man2/mount.2:461
2923 msgid "A child process created by B<fork>(2)  shares its parent's mount namespace; the mount namespace is preserved across an B<execve>(2)."
2924 msgstr "B<fork>(2)  経由で作成された子プロセスは親プロセスのマウント名前空間を共有する。 B<execve>(2)  の前後でマウント名前空間は保持される。"
2925
2926 #. type: Plain text
2927 #: build/C/man2/mount.2:481
2928 msgid "A process can obtain a private mount namespace if: it was created using the B<clone>(2)  B<CLONE_NEWNS> flag, in which case its new namespace is initialized to be a I<copy> of the namespace of the process that called B<clone>(2); or it calls B<unshare>(2)  with the B<CLONE_NEWNS> flag, which causes the caller's mount namespace to obtain a private copy of the namespace that it was previously sharing with other processes, so that future mounts and unmounts by the caller are invisible to other processes (except child processes that the caller subsequently creates) and vice versa."
2929 msgstr "プロセスは自分用 (private) のマウント名前空間を持つことができる。 自分用の名前空間を持つことができるのは、 そのプロセスが B<clone>(2)  B<CLONE_NEWNS> フラグを使って作成された場合と、 そのプロセスが B<CLONE_NEWNS> フラグ付きで B<unshare>(2)  を呼び出した場合である。 前者の場合、作成されたプロセスの新しい名前空間は B<clone>(2)  を呼び出したプロセスの名前空間の「コピー」で初期化される。 後者の場合、 B<unshare>(2)  を呼び出すと、呼び出し元のプロセスのマウント名前空間が、 それまでは他のプロセスと共有していた名前空間の自分用のコピーとなる。 これにより、呼び出し元のプロセスがこれ以後に行うマウント/アンマウントは 他のプロセスから見えなくなる (ただし、呼び出し元のプロセスが B<unshare>(2)  の呼び出し以降に作成した子プロセスには見える)。 また、その逆の、他のプロセスが行ったマウント/アンマウントも呼び出し元のプロセスには 見えなくなる。"
2930
2931 #. type: Plain text
2932 #: build/C/man2/mount.2:488
2933 msgid "The Linux-specific I</proc/PID/mounts> file exposes the list of mount points in the mount namespace of the process with the specified ID; see B<proc>(5)  for details."
2934 msgstr "Linux 独自のファイル I</proc/PID/mounts> では、指定された ID を持つプロセスのマウント名前空間における マウントポイントのリストが公開されている。詳細は B<proc>(5)  を参照のこと。"
2935
2936 #. type: Plain text
2937 #: build/C/man2/mount.2:495
2938 msgid "B<umount>(2), B<namespaces>(7), B<path_resolution>(7), B<lsblk>(8), B<mount>(8), B<umount>(8)"
2939 msgstr "B<umount>(2), B<namespaces>(7), B<path_resolution>(7), B<lsblk>(8), B<mount>(8), B<umount>(8)"
2940
2941 #. type: TH
2942 #: build/C/man7/path_resolution.7:25
2943 #, no-wrap
2944 msgid "PATH_RESOLUTION"
2945 msgstr "PATH_RESOLUTION"
2946
2947 #. type: TH
2948 #: build/C/man7/path_resolution.7:25
2949 #, no-wrap
2950 msgid "2009-12-05"
2951 msgstr "2009-12-05"
2952
2953 #. type: Plain text
2954 #: build/C/man7/path_resolution.7:28
2955 msgid "path_resolution - how a pathname is resolved to a file"
2956 msgstr "path_resolution - ファイルのパス名の解決方法"
2957
2958 #. type: Plain text
2959 #: build/C/man7/path_resolution.7:31
2960 msgid "Some UNIX/Linux system calls have as parameter one or more filenames.  A filename (or pathname) is resolved as follows."
2961 msgstr "いくつかの UNIX/Linux システムコールは、 1 つ以上のファイル名を引き数として持つ。 ファイル名 (またはパス名) は以下のようにして解決される。"
2962
2963 #. type: SS
2964 #: build/C/man7/path_resolution.7:31
2965 #, no-wrap
2966 msgid "Step 1: start of the resolution process"
2967 msgstr "ステップ 1: 解決過程を開始する"
2968
2969 #. type: Plain text
2970 #: build/C/man7/path_resolution.7:50
2971 msgid "If the pathname starts with the \\(aq/\\(aq character, the starting lookup directory is the root directory of the calling process.  (A process inherits its root directory from its parent.  Usually this will be the root directory of the file hierarchy.  A process may get a different root directory by use of the B<chroot>(2)  system call.  A process may get an entirely private mount namespace in case it\\(emor one of its ancestors\\(emwas started by an invocation of the B<clone>(2)  system call that had the B<CLONE_NEWNS> flag set.)  This handles the \\(aq/\\(aq part of the pathname."
2972 msgstr "パス名が \\(aq/\\(aq 文字で始まっている場合、 ディレクトリ検索の開始点は呼び出し元のプロセスのルートディレクトリになる。 (プロセスはルートディレクトリを親プロセスから継承する。 通常は、これがファイル階層のルートディレクトリになる。 プロセスは B<chroot>(2)  システムコールを使って別のルートディレクトリを取得することもできる。 この場合、そのプロセスと B<CLONE_NEWNS> フラグを設定して B<clone>(2)  を呼び出すことによって開始されたそのプロセスの子孫は、 完全にプライベートなマウント名前空間を取得できる。)  パス名の \\(aq/\\(aq の部分は、このようにして扱われる。"
2973
2974 #. type: Plain text
2975 #: build/C/man7/path_resolution.7:58
2976 msgid "If the pathname does not start with the \\(aq/\\(aq character, the starting lookup directory of the resolution process is the current working directory of the process.  (This is also inherited from the parent.  It can be changed by use of the B<chdir>(2)  system call.)"
2977 msgstr "パス名が \\(aq/\\(aq 文字で始まっていない場合、 解決過程におけるディレクトリ検索の開始点は、 プロセスの現在の作業 (working) ディレクトリとなる。 (これも親プロセスから継承される。 これは B<chdir>(2)  システムコールを使うことで変更できる。)"
2978
2979 #. type: Plain text
2980 #: build/C/man7/path_resolution.7:61
2981 msgid "Pathnames starting with a \\(aq/\\(aq character are called absolute pathnames.  Pathnames not starting with a \\(aq/\\(aq are called relative pathnames."
2982 msgstr "\\(aq/\\(aq 文字で始まるパス名は絶対パス名と呼ばれ、 \\(aq/\\(aq 文字で始まらないパス名は相対パス名と呼ばれる。"
2983
2984 #. type: SS
2985 #: build/C/man7/path_resolution.7:61
2986 #, no-wrap
2987 msgid "Step 2: walk along the path"
2988 msgstr "ステップ 2: パスを辿る"
2989
2990 #. type: Plain text
2991 #: build/C/man7/path_resolution.7:66
2992 msgid "Set the current lookup directory to the starting lookup directory.  Now, for each nonfinal component of the pathname, where a component is a substring delimited by \\(aq/\\(aq characters, this component is looked up in the current lookup directory."
2993 msgstr "現在の検索ディレクトリをディレクトリ検索の開始点とする。 そして、パス名の最後の構成要素 (component) でない各構成要素について、 現在の検索ディレクトリで検索を行う。 ここで構成要素は \\(aq/\\(aq で区切られた部分文字列である。"
2994
2995 #. type: Plain text
2996 #: build/C/man7/path_resolution.7:72
2997 msgid "If the process does not have search permission on the current lookup directory, an B<EACCES> error is returned (\"Permission denied\")."
2998 msgstr "プロセスが現在の検索ディレクトリの検索許可を持たない場合、 B<EACCES> エラーが返される (\"Permission denied\")。"
2999
3000 #. type: Plain text
3001 #: build/C/man7/path_resolution.7:77
3002 msgid "If the component is not found, an B<ENOENT> error is returned (\"No such file or directory\")."
3003 msgstr "構成要素が見つからない場合、 B<ENOENT> エラーが返される (\"No such file or directory\")。"
3004
3005 #. type: Plain text
3006 #: build/C/man7/path_resolution.7:82
3007 msgid "If the component is found, but is neither a directory nor a symbolic link, an B<ENOTDIR> error is returned (\"Not a directory\")."
3008 msgstr "構成要素は見つかったが、ディレクトリでもシンボリックリンクでもない場合、 B<ENOTDIR> エラーが返される (\"Not a directory\")。"
3009
3010 #. type: Plain text
3011 #: build/C/man7/path_resolution.7:86
3012 msgid "If the component is found and is a directory, we set the current lookup directory to that directory, and go to the next component."
3013 msgstr "構成要素が見つかって、かつディレクトリである場合、 現在の検索ディレクトリをそのディレクトリに設定し、 次の構成要素に移動する。"
3014
3015 #.  presently: max recursion depth during symlink resolution: 5
3016 #.  max total number of symbolic links followed: 40
3017 #.  _POSIX_SYMLOOP_MAX is 8
3018 #. type: Plain text
3019 #: build/C/man7/path_resolution.7:110
3020 msgid "If the component is found and is a symbolic link (symlink), we first resolve this symbolic link (with the current lookup directory as starting lookup directory).  Upon error, that error is returned.  If the result is not a directory, an B<ENOTDIR> error is returned.  If the resolution of the symlink is successful and returns a directory, we set the current lookup directory to that directory, and go to the next component.  Note that the resolution process here involves recursion.  In order to protect the kernel against stack overflow, and also to protect against denial of service, there are limits on the maximum recursion depth, and on the maximum number of symbolic links followed.  An B<ELOOP> error is returned when the maximum is exceeded (\"Too many levels of symbolic links\")."
3021 msgstr "構成要素が見つかって、かつシンボリックリンク (symlink) である場合、 (現在の検索ディレクトリをディレクトリ検索の開始点として)  最初にそのシンボリックリンクを解決する。 結果がディレクトリでない場合、 B<ENOTDIR> エラーが返される。 シンボリックリンクの解決が成功してディレクトリが返された場合、 そのディレクトリを現在の検索ディレクトリとして設定し、 次の構成要素に移動する。 解決過程に再帰が含まれる点に注意すること。 カーネルをスタックオーバーフローや サービス拒否 (denial of service) から守るため、 再帰の最大の深さとシンボリックリンクを辿る最大回数に制限がある。 最大値を超えた場合 B<ELOOP> エラーが返される (\"Too many levels of symbolic links\")。"
3022
3023 #. type: SS
3024 #: build/C/man7/path_resolution.7:110
3025 #, no-wrap
3026 msgid "Step 3: find the final entry"
3027 msgstr "ステップ 3: 最後のエントリーを見つける"
3028
3029 #. type: Plain text
3030 #: build/C/man7/path_resolution.7:122
3031 msgid "The lookup of the final component of the pathname goes just like that of all other components, as described in the previous step, with two differences: (i) the final component need not be a directory (at least as far as the path resolution process is concerned\\(emit may have to be a directory, or a nondirectory, because of the requirements of the specific system call), and (ii) it is not necessarily an error if the component is not found\\(emmaybe we are just creating it.  The details on the treatment of the final entry are described in the manual pages of the specific system calls."
3032 msgstr "パス名の最後の構成要素の検索は、前のステップで説明した 他の全ての構成要素と同じように実行されるが、2 つの違いがある。 (i) 最後の構成要素はディレクトリである必要がない (パス解決過程に関する限りはどちらでも構わない \\(em 特定のシステムコールが要求するものによって、 ディレクトリでなければならない場合もあるし、 ディレクトリ以外でなければならない場合もある)。 (ii) 構成要素が見つからない場合にエラーにする必要はない \\(em その構成要素を作成するだけでよい場合もある。 最後のエントリーの詳細な扱いは、 特定のシステムコールの man ページで説明されている。"
3033
3034 #. type: SS
3035 #: build/C/man7/path_resolution.7:122
3036 #, no-wrap
3037 msgid ". and .."
3038 msgstr ". と .."
3039
3040 #. type: Plain text
3041 #: build/C/man7/path_resolution.7:126
3042 msgid "By convention, every directory has the entries \".\" and \"..\", which refer to the directory itself and to its parent directory, respectively."
3043 msgstr "慣習として、全てのディレクトリはエントリー \".\" と \"..\" を持つ。 これらはそれぞれ、そのディレクトリ自身とその親ディレクトリを参照する。"
3044
3045 #. type: Plain text
3046 #: build/C/man7/path_resolution.7:130
3047 msgid "The path resolution process will assume that these entries have their conventional meanings, regardless of whether they are actually present in the physical filesystem."
3048 msgstr "パス解決過程では、これらのエントリーが物理的なファイルシステムに 実際に存在するか否かに関わらず、慣習的な意味を持つと仮定する。"
3049
3050 #. type: Plain text
3051 #: build/C/man7/path_resolution.7:132
3052 msgid "One cannot walk down past the root: \"/..\" is the same as \"/\"."
3053 msgstr "ルートより上に辿ることはできない: \"/..\" は \"/\" と同じである。"
3054
3055 #. type: SS
3056 #: build/C/man7/path_resolution.7:132
3057 #, no-wrap
3058 msgid "Mount points"
3059 msgstr "マウント位置"
3060
3061 #. type: Plain text
3062 #: build/C/man7/path_resolution.7:136
3063 msgid "After a \"mount dev path\" command, the pathname \"path\" refers to the root of the filesystem hierarchy on the device \"dev\", and no longer to whatever it referred to earlier."
3064 msgstr "\"mount dev path\" コマンドを実行した後、 パス名 \"path\" はデバイス \"dev\" 上のファイルシステム階層の ルートディレクトリを参照するようになり、以前の位置を参照しない。"
3065
3066 #. type: Plain text
3067 #: build/C/man7/path_resolution.7:140
3068 msgid "One can walk out of a mounted filesystem: \"path/..\" refers to the parent directory of \"path\", outside of the filesystem hierarchy on \"dev\"."
3069 msgstr "マウントされたファイルシステムの外に出ることができる: \"path/..\" は \"dev\" 上のファイルシステム階層の外である \"path\" の親ディレクトリを参照する。"
3070
3071 #. type: SS
3072 #: build/C/man7/path_resolution.7:140
3073 #, no-wrap
3074 msgid "Trailing slashes"
3075 msgstr "末尾のスラッシュ"
3076
3077 #. type: Plain text
3078 #: build/C/man7/path_resolution.7:146
3079 msgid "If a pathname ends in a \\(aq/\\(aq, that forces resolution of the preceding component as in Step 2: it has to exist and resolve to a directory.  Otherwise, a trailing \\(aq/\\(aq is ignored.  (Or, equivalently, a pathname with a trailing \\(aq/\\(aq is equivalent to the pathname obtained by appending \\(aq.\\(aq to it.)"
3080 msgstr "パス名が \\(aq/\\(aq で終わっている場合、 ステップ 2 において、その前にある構成要素の解決法を次のように強制する: その構成要素が存在しなければならず、ディレクトリとして解決される。 存在しない場合は、末尾の \\(aq/\\(aq が無視される。 (また同様に、末尾に \\(aq/\\(aq があるパス名は、 \\(aq.\\(aq を末尾に加えて得られるパス名と等しい。)"
3081
3082 #. type: SS
3083 #: build/C/man7/path_resolution.7:146
3084 #, no-wrap
3085 msgid "Final symlink"
3086 msgstr "最後がシンボリックリンクのとき"
3087
3088 #. type: Plain text
3089 #: build/C/man7/path_resolution.7:155
3090 msgid "If the last component of a pathname is a symbolic link, then it depends on the system call whether the file referred to will be the symbolic link or the result of path resolution on its contents.  For example, the system call B<lstat>(2)  will operate on the symlink, while B<stat>(2)  operates on the file pointed to by the symlink."
3091 msgstr "パス名の最後の構成要素がシンボリックリンクである場合、 参照されるファイルをシンボリックリンクとするか、 その内容についてパスを解決した結果とするかは、 システムコールに依存する。 たとえば、システムコール B<lstat>(2)  はシンボリックリンクに作用する。 一方、 B<stat>(2)  はシンボリックリンクで指されたファイルに作用する。"
3092
3093 #. type: SS
3094 #: build/C/man7/path_resolution.7:155
3095 #, no-wrap
3096 msgid "Length limit"
3097 msgstr "長さの制限"
3098
3099 #. type: Plain text
3100 #: build/C/man7/path_resolution.7:162
3101 msgid "There is a maximum length for pathnames.  If the pathname (or some intermediate pathname obtained while resolving symbolic links)  is too long, an B<ENAMETOOLONG> error is returned (\"Filename too long\")."
3102 msgstr "パス名には最大長がある。 パス名 (またはシンボリックリンクを解決するときに得られる中間パス名) が 長すぎる場合、 B<ENAMETOOLONG> エラーが返される (\"Filename too long\")。"
3103
3104 #. type: SS
3105 #: build/C/man7/path_resolution.7:162
3106 #, no-wrap
3107 msgid "Empty pathname"
3108 msgstr "空のパス名"
3109
3110 #. type: Plain text
3111 #: build/C/man7/path_resolution.7:169
3112 msgid "In the original UNIX, the empty pathname referred to the current directory.  Nowadays POSIX decrees that an empty pathname must not be resolved successfully.  Linux returns B<ENOENT> in this case."
3113 msgstr "元々の UNIX では、空のパス名は現在のディレクトリを参照していた。 最近、POSIX では空のパス名を解決するべきではないという決定がなされた。 この場合、Linux は B<ENOENT> を返す。"
3114
3115 #. type: SS
3116 #: build/C/man7/path_resolution.7:169
3117 #, no-wrap
3118 msgid "Permissions"
3119 msgstr "許可"
3120
3121 #. type: Plain text
3122 #: build/C/man7/path_resolution.7:182
3123 msgid "The permission bits of a file consist of three groups of three bits, cf.\\& B<chmod>(1)  and B<stat>(2).  The first group of three is used when the effective user ID of the calling process equals the owner ID of the file.  The second group of three is used when the group ID of the file either equals the effective group ID of the calling process, or is one of the supplementary group IDs of the calling process (as set by B<setgroups>(2)).  When neither holds, the third group is used."
3124 msgstr "ファイルの許可ビットは、3 組の 3 ビットから構成される。 B<chmod>(1)  と B<stat>(2)  を参照すること。 呼び出し元のプロセスの実効ユーザー ID がファイルの所有者 ID と等しい場合、 3 つのうち最初のグループが使われる。 ファイルのグループ ID が呼び出し元のプロセスの実効グループ ID または (B<setgroups>(2)  で設定される) 呼び出し元のプロセスの補助 (supplementary) グループ ID と 等しい場合、3 つのうち 2 番目のグループが使われる。 どちらにも当てはまらない場合、3 番目のグループが使われる。"
3125
3126 #. type: Plain text
3127 #: build/C/man7/path_resolution.7:186
3128 msgid "Of the three bits used, the first bit determines read permission, the second write permission, and the last execute permission in case of ordinary files, or search permission in case of directories."
3129 msgstr "3 ビットが使われる場合、最初のビットは読み込み許可を決定し、 2 番目のビットは書き込み許可を決定する。 また 3 番目のビットは、通常のファイルの場合は実行許可を表し、 ディレクトリの場合は検索許可を表す。"
3130
3131 #. type: Plain text
3132 #: build/C/man7/path_resolution.7:191
3133 msgid "Linux uses the fsuid instead of the effective user ID in permission checks.  Ordinarily the fsuid will equal the effective user ID, but the fsuid can be changed by the system call B<setfsuid>(2)."
3134 msgstr "Linux は、許可のチェックにおいて、実効ユーザー ID ではなく fsuid を使う。 通常は fsuid は実効ユーザー ID と等しいが、fsuid はシステムコール B<setfsuid>(2)  で変更することができる。"
3135
3136 #. type: Plain text
3137 #: build/C/man7/path_resolution.7:199
3138 msgid "(Here \"fsuid\" stands for something like \"filesystem user ID\".  The concept was required for the implementation of a user space NFS server at a time when processes could send a signal to a process with the same effective user ID.  It is obsolete now.  Nobody should use B<setfsuid>(2).)"
3139 msgstr "(ここで \"fsuid\" は \"file system user ID\" を表している。 この概念は「プロセスが同じ実効ユーザー ID を持つプロセスに 同時にシグナルを送ることができる」というユーザー空間 NFS サーバを 実装する際に必要であった。 これは今では廃れてしまった。 B<setfsuid>(2)  を使うべきではない。"
3140
3141 #.  FIXME . say something about filesystem mounted read-only ?
3142 #. type: Plain text
3143 #: build/C/man7/path_resolution.7:205
3144 msgid "Similarly, Linux uses the fsgid (\"filesystem group ID\")  instead of the effective group ID.  See B<setfsgid>(2)."
3145 msgstr "同様に、Linux では実効グループ ID の代わりに fsgid (\"ファイルシステムグループID\") を使う。 B<setfsgid>(2)  を参照すること。"
3146
3147 #. type: SS
3148 #: build/C/man7/path_resolution.7:205
3149 #, no-wrap
3150 msgid "Bypassing permission checks: superuser and capabilities"
3151 msgstr "許可の確認をスキップする: スーパーユーザーとケーパビリティ"
3152
3153 #.  (but for exec at least one x bit must be set) -- AEB
3154 #.  but there is variation across systems on this point: for
3155 #.  example, HP-UX and Tru64 are as described by AEB.  However,
3156 #.  on some implementations (e.g., Solaris, FreeBSD),
3157 #.  access(X_OK) by superuser will report success, regardless
3158 #.  of the file's execute permission bits. -- MTK (Oct 05)
3159 #. type: Plain text
3160 #: build/C/man7/path_resolution.7:216
3161 msgid "On a traditional UNIX system, the superuser (I<root>, user ID 0) is all-powerful, and bypasses all permissions restrictions when accessing files."
3162 msgstr "伝統的な UNIX システムでは、スーパーユーザー (I<root>, ユーザー ID 0) は非常に強力であり、ファイルアクセス時の 許可による制限を全てスキップする。"
3163
3164 #. type: Plain text
3165 #: build/C/man7/path_resolution.7:224
3166 msgid "On Linux, superuser privileges are divided into capabilities (see B<capabilities>(7)).  Two capabilities are relevant for file permissions checks: B<CAP_DAC_OVERRIDE> and B<CAP_DAC_READ_SEARCH>.  (A process has these capabilities if its fsuid is 0.)"
3167 msgstr "Linux では、スーパーユーザー権限が複数のケーパビリティに分割されている (B<capabilities>(7)  参照)。ファイルの許可の確認には、 B<CAP_DAC_OVERRIDE> と B<CAP_DAC_READ_SEARCH> の 2つのケーパビリティが関係する (プロセスの fsuid が 0 の場合、そのプロセスはこれらのケーパビリティを持つ)。"
3168
3169 #. type: Plain text
3170 #: build/C/man7/path_resolution.7:230
3171 msgid "The B<CAP_DAC_OVERRIDE> capability overrides all permission checking, but grants execute permission only when at least one of the file's three execute permission bits is set."
3172 msgstr "B<CAP_DAC_OVERRIDE> ケーパビリティは全ての許可チェックを上書きする。 実際には、対象となるファイルの 3 つの実行許可ビットのうちの 少なくとも 1 つが設定されている場合のみ、実行を許可する。"
3173
3174 #.  FIXME . say something about immutable files
3175 #.  FIXME . say something about ACLs
3176 #. type: Plain text
3177 #: build/C/man7/path_resolution.7:237
3178 msgid "The B<CAP_DAC_READ_SEARCH> capability grants read and search permission on directories, and read permission on ordinary files."
3179 msgstr "B<CAP_DAC_READ_SEARCH> ケーパビリティは、ディレクトリに対して読み込みと検索を許可し、 通常のファイルに対して読み込みを許可する。"
3180
3181 #. type: Plain text
3182 #: build/C/man7/path_resolution.7:242
3183 msgid "B<readlink>(2), B<capabilities>(7), B<credentials>(7), B<symlink>(7)"
3184 msgstr "B<readlink>(2), B<capabilities>(7), B<credentials>(7), B<symlink>(7)"
3185
3186 #. type: TH
3187 #: build/C/man2/removexattr.2:25
3188 #, no-wrap
3189 msgid "REMOVEXATTR"
3190 msgstr "REMOVEXATTR"
3191
3192 #. type: Plain text
3193 #: build/C/man2/removexattr.2:28
3194 msgid "removexattr, lremovexattr, fremovexattr - remove an extended attribute"
3195 msgstr "removexattr, lremovexattr, fremovexattr - 拡張属性を削除する"
3196
3197 #. type: Plain text
3198 #: build/C/man2/removexattr.2:37
3199 #, no-wrap
3200 msgid ""
3201 "B<int removexattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<);>\n"
3202 "B<int lremovexattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<);>\n"
3203 "B<int fremovexattr(int >I<fd>B<, const char\\ *>I<name>B<);>\n"
3204 msgstr ""
3205 "B<int removexattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<);>\n"
3206 "B<int lremovexattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<);>\n"
3207 "B<int fremovexattr(int >I<fd>B<, const char\\ *>I<name>B<);>\n"
3208
3209 #. type: Plain text
3210 #: build/C/man2/removexattr.2:49
3211 msgid "Extended attributes are I<name>:value pairs associated with inodes (files, directories, symbolic links, etc.).  They are extensions to the normal attributes which are associated with all inodes in the system (i.e., the B<stat>(2)  data).  A complete overview of extended attributes concepts can be found in B<attr>(5)."
3212 msgstr "拡張属性は、inode (ファイル、ディレクトリ、シンボリックリンク等) に 関連付けられた I<name>:I<value> の対である。 これらは、システム上のすべての inode に関連付けられた通常の属性 (B<stat>(2)  が返すデータ) を拡張するものである。 拡張属性のコンセプトは B<attr>(5)  に書かれている。"
3213
3214 #. type: Plain text
3215 #: build/C/man2/removexattr.2:56
3216 msgid "B<removexattr>()  removes the extended attribute identified by I<name> and associated with the given I<path> in the filesystem."
3217 msgstr "B<removexattr>()  は、ファイルシステム内の指定された I<path> に対応する、名前 I<name> の拡張属性を削除する。"
3218
3219 #. type: Plain text
3220 #: build/C/man2/removexattr.2:62
3221 msgid "B<lremovexattr>()  is identical to B<removexattr>(), except in the case of a symbolic link, where the extended attribute is removed from the link itself, not the file that it refers to."
3222 msgstr "B<lremovexattr>()  は B<removexattr>()  と同じだが、シンボリックリンクの場合に、リンクが参照しているファイル ではなく、リンクそのものの情報を削除する点だけが異なる。"
3223
3224 #. type: Plain text
3225 #: build/C/man2/removexattr.2:72
3226 msgid "B<fremovexattr>()  is identical to B<removexattr>(), only the extended attribute is removed from the open file referred to by I<fd> (as returned by B<open>(2))  in place of I<path>."
3227 msgstr "B<fremovexattr>()  は B<removexattr>()  と同じだが、 I<path> の代わりに I<fd> で参照されたオープン済みファイルから拡張属性を削除するだけである点が異なる (I<fd> は B<open>(2)  によって返される)。"
3228
3229 #. type: Plain text
3230 #: build/C/man2/removexattr.2:78
3231 msgid "An extended attribute name is a simple null-terminated string.  The I<name> includes a namespace prefix; there may be several, disjoint namespaces associated with an individual inode."
3232 msgstr "拡張属性の名前は、普通のヌル終端された文字列である。 I<name> には、名前空間を表す接頭辞 (prefix) が含まれる。 個々の inode に対し、互いに独立な名前空間が複数あってもよい。"
3233
3234 #. type: Plain text
3235 #: build/C/man2/removexattr.2:83 build/C/man2/setxattr.2:110
3236 msgid "On success, zero is returned.  On failure, -1 is returned and I<errno> is set appropriately."
3237 msgstr "成功した場合、0 が返される。 失敗した場合、 -1 が返され、 I<errno> に適切な値がセットされる。"
3238
3239 #. type: Plain text
3240 #: build/C/man2/removexattr.2:92
3241 msgid "The named attribute does not exist.  (B<ENOATTR> is defined to be a synonym for B<ENODATA> in I<E<lt>attr/xattr.hE<gt>>.)"
3242 msgstr "指定された属性が存在しない。(B<ENOATTR> は I<E<lt>attr/xattr.hE<gt>> で B<ENODATA> の同義語として定義されている。)"
3243
3244 #. type: Plain text
3245 #: build/C/man2/removexattr.2:120
3246 msgid "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<listxattr>(2), B<open>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
3247 msgstr "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<listxattr>(2), B<open>(2), B<setxattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
3248
3249 #. type: TH
3250 #: build/C/man2/setxattr.2:25
3251 #, no-wrap
3252 msgid "SETXATTR"
3253 msgstr "SETXATTR"
3254
3255 #. type: Plain text
3256 #: build/C/man2/setxattr.2:28
3257 msgid "setxattr, lsetxattr, fsetxattr - set an extended attribute value"
3258 msgstr "setxattr, lsetxattr, fsetxattr - 拡張属性の値を設定する"
3259
3260 #. type: Plain text
3261 #: build/C/man2/setxattr.2:40
3262 #, no-wrap
3263 msgid ""
3264 "B<int setxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
3265 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3266 "B<int lsetxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
3267 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3268 "B<int fsetxattr(int >I<fd>B<, const char\\ *>I<name>B<,>\n"
3269 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3270 msgstr ""
3271 "B<int setxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
3272 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3273 "B<int lsetxattr(const char\\ *>I<path>B<, const char\\ *>I<name>B<,>\n"
3274 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3275 "B<int fsetxattr(int >I<fd>B<, const char\\ *>I<name>B<,>\n"
3276 "B<              const void\\ *>I<value>B<, size_t >I<size>B<, int >I<flags>B<);>\n"
3277
3278 #. type: Plain text
3279 #: build/C/man2/setxattr.2:67
3280 msgid "B<setxattr>()  sets the I<value> of the extended attribute identified by I<name> and associated with the given I<path> in the filesystem.  The I<size> of the I<value> must be specified."
3281 msgstr "B<setxattr>()  は、ファイルシステム内の指定された I<path> に対応する、名前 I<name> の拡張属性の値 I<value> を設定する。 I<value> の I<size> は必ず指定しなければならない。"
3282
3283 #. type: Plain text
3284 #: build/C/man2/setxattr.2:73
3285 msgid "B<lsetxattr>()  is identical to B<setxattr>(), except in the case of a symbolic link, where the extended attribute is set on the link itself, not the file that it refers to."
3286 msgstr "B<lsetxattr>()  は B<setxattr>()  と同じだが、シンボリックリンクの場合に、リンクが参照しているファイル ではなく、リンクそのものの拡張属性を設定する点だけが異なる。"
3287
3288 #. type: Plain text
3289 #: build/C/man2/setxattr.2:83
3290 msgid "B<fsetxattr>()  is identical to B<setxattr>(), only the extended attribute is set on the open file referred to by I<fd> (as returned by B<open>(2))  in place of I<path>."
3291 msgstr "B<fsetxattr>()  は B<setxattr>()  と同じだが、 I<path> の代わりに I<fd> で参照されたオープン済みファイルの情報だけを設定する点が異なる (I<filedes> は B<open>(2)  によって返される)。"
3292
3293 #. type: Plain text
3294 #: build/C/man2/setxattr.2:93
3295 msgid "An extended attribute name is a simple null-terminated string.  The I<name> includes a namespace prefix; there may be several, disjoint namespaces associated with an individual inode.  The I<value> of an extended attribute is a chunk of arbitrary textual or binary data of specified length."
3296 msgstr "拡張属性の名前 は普通のヌル終端された文字列である。 I<name> には、名前空間を表す接頭辞 (prefix) が含まれる。 個々の inode に対して、互いに独立な名前空間が複数あってもよい。 拡張属性の値 I<value> は、ある一定の長さの任意のテキストデータまたは バイナリデータの集合である。"
3297
3298 #. type: Plain text
3299 #: build/C/man2/setxattr.2:105
3300 msgid "The I<flags> argument can be used to refine the semantics of the operation.  B<XATTR_CREATE> specifies a pure create, which fails if the named attribute exists already.  B<XATTR_REPLACE> specifies a pure replace operation, which fails if the named attribute does not already exist.  By default (no flags), the extended attribute will be created if need be, or will simply replace the value if the attribute exists."
3301 msgstr "操作の意味を明確にするために I<flags> 引き数を使用することができる。 B<XATTR_CREATE> は属性の作成だけを行うことを指定する。 指定された名前の属性がすでに存在する場合は失敗する。 B<XATTR_REPLACE> は属性の置換だけを行うことを指定する。 指定された名前の属性がまだ存在しない場合は失敗する。 デフォルトでは (フラグを指定しない場合)、拡張属性は必要な場合は作成され、 属性がすでに存在する場合は属性値の置換を行う。"
3302
3303 #. type: TP
3304 #: build/C/man2/setxattr.2:111
3305 #, no-wrap
3306 msgid "B<EDQUOT>"
3307 msgstr "B<EDQUOT>"
3308
3309 #. type: Plain text
3310 #: build/C/man2/setxattr.2:115
3311 msgid "Disk quota limits meant that there is insufficient space remaining to store the extended attribute."
3312 msgstr "ディスクのクォータ上限に達した。拡張属性を格納できるだけの空き領域がないことを意味する。"
3313
3314 #. type: TP
3315 #: build/C/man2/setxattr.2:115 build/C/man2/spu_create.2:178
3316 #, no-wrap
3317 msgid "B<EEXIST>"
3318 msgstr "B<EEXIST>"
3319
3320 #. type: Plain text
3321 #: build/C/man2/setxattr.2:119
3322 msgid "B<XATTR_CREATE> was specified, and the attribute exists already."
3323 msgstr "B<XATTR_CREATE> が指定されたが、その属性はすでに存在している。"
3324
3325 #. type: Plain text
3326 #: build/C/man2/setxattr.2:128
3327 msgid "B<XATTR_REPLACE> was specified, and the attribute does not exist.  (B<ENOATTR> is defined to be a synonym for B<ENODATA> in I<E<lt>attr/xattr.hE<gt>>.)"
3328 msgstr "B<XATTR_REPLACE> が指定されたが、その属性が存在しない。(B<ENOATTR> は I<E<lt>attr/xattr.hE<gt>> で B<ENODATA> の同義語として定義されている。)"
3329
3330 #. type: TP
3331 #: build/C/man2/setxattr.2:128 build/C/man2/spu_create.2:218
3332 #, no-wrap
3333 msgid "B<ENOSPC>"
3334 msgstr "B<ENOSPC>"
3335
3336 #. type: Plain text
3337 #: build/C/man2/setxattr.2:131
3338 msgid "There is insufficient space remaining to store the extended attribute."
3339 msgstr "拡張属性を記憶するのに十分なスペースが残っていない。"
3340
3341 #. type: Plain text
3342 #: build/C/man2/setxattr.2:137
3343 msgid "Extended attributes are not supported by the filesystem, or are disabled, I<errno> is set to B<ENOTSUP>."
3344 msgstr ""
3345 "拡張属性がそのファイルシステムでサポートされていない、もしくは無効になっている。\n"
3346 "I<errno> に B<ENOTSUP> がセットされる。"
3347
3348 #. type: Plain text
3349 #: build/C/man2/setxattr.2:162
3350 msgid "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<listxattr>(2), B<open>(2), B<removexattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
3351 msgstr "B<getfattr>(1), B<setfattr>(1), B<getxattr>(2), B<listxattr>(2), B<open>(2), B<removexattr>(2), B<stat>(2), B<attr>(5), B<symlink>(7)"
3352
3353 #. type: TH
3354 #: build/C/man2/spu_create.2:25
3355 #, no-wrap
3356 msgid "SPU_CREATE"
3357 msgstr "SPU_CREATE"
3358
3359 #. type: TH
3360 #: build/C/man2/spu_create.2:25 build/C/man2/spu_run.2:26
3361 #, no-wrap
3362 msgid "2012-08-05"
3363 msgstr "2012-08-05"
3364
3365 #. type: Plain text
3366 #: build/C/man2/spu_create.2:28
3367 msgid "spu_create - create a new spu context"
3368 msgstr "spu_create - 新しい SPU コンテキストを生成する"
3369
3370 #. type: Plain text
3371 #: build/C/man2/spu_create.2:32
3372 #, no-wrap
3373 msgid ""
3374 "B<#include E<lt>sys/types.hE<gt>>\n"
3375 "B<#include E<lt>sys/spu.hE<gt>>\n"
3376 msgstr ""
3377 "B<#include E<lt>sys/types.hE<gt>>\n"
3378 "B<#include E<lt>sys/spu.hE<gt>>\n"
3379
3380 #. type: Plain text
3381 #: build/C/man2/spu_create.2:36
3382 #, no-wrap
3383 msgid ""
3384 "B<int spu_create(const char *>I<pathname>B<, int >I<flags>B<, mode_t >I<mode>B<);>\n"
3385 "B<int spu_create(const char *>I<pathname>B<, int >I<flags>B<, mode_t >I<mode>B<,>\n"
3386 "B<               int >I<neighbor_fd>B<);>\n"
3387 msgstr ""
3388 "B<int spu_create(const char *>I<pathname>B<, int >I<flags>B<, mode_t >I<mode>B<);>\n"
3389 "B<int spu_create(const char *>I<pathname>B<, int >I<flags>B<, mode_t >I<mode>B<,>\n"
3390 "B<               int >I<neighbor_fd>B<);>\n"
3391
3392 #. type: Plain text
3393 #: build/C/man2/spu_create.2:40 build/C/man2/spu_run.2:39
3394 msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
3395 msgstr "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。"
3396
3397 #. type: Plain text
3398 #: build/C/man2/spu_create.2:59
3399 msgid "The B<spu_create>()  system call is used on PowerPC machines that implement the Cell Broadband Engine Architecture in order to access Synergistic Processor Units (SPUs).  It creates a new logical context for an SPU in I<pathname> and returns a file descriptor associated with it.  I<pathname> must refer to a nonexistent directory in the mount point of the SPU filesystem (B<spufs>).  If B<spu_create>()  is successful, a directory is created at I<pathname> and it is populated with the files described in B<spufs>(7)."
3400 msgstr "B<spu_create>() システムコールは、Cell Broadband Engine アーキテクチャーを実装した PowerPC マシンにおいて、Synergistic Processor Unit (SPU) にアクセスするために使用される。 このシステムコールは、 SPU に対する新しい論理コンテキストを I<pathname> に生成し、 そのコンテキストに関連付けられたファイルディスクリプターを返す。 I<pathname> は SPU ファイルシステム (B<spufs>) のマウントポイント内の存在しないディレクトリを指していなければならない。 B<spu_create>() が成功すると、 I<pathname> にディレクトリが生成され、 そのディレクトリに B<spufs>(7) で説明されているファイル群が配置される。"
3401
3402 #. type: Plain text
3403 #: build/C/man2/spu_create.2:78
3404 msgid "When a context is created, the returned file descriptor can only be passed to B<spu_run>(2), used as the I<dirfd> argument to the B<*at> family of system calls (e.g., B<openat>(2)), or closed; other operations are not defined.  A logical SPU context is destroyed (along with all files created within the context's I<pathname> directory) once the last reference to the context has gone; this usually occurs when the file descriptor returned by B<spu_create>()  is closed."
3405 msgstr "コンテキストを作成した際、返されたファイルディスクリプターは、 B<spu_run>(2) に渡すか、 B<*at> 系のシステムコール (B<openat>(2) など) の I<dirfd> 引き数として使用するか、 クローズするか、しかできない。 他の操作は定義されていない。 そのコンテキストへの最後の参照がなくなった際に、 論理 SPU コンテキストは破棄される (そのコンテキストの I<pathname> ディレクトリに作成されたファイルもすべて破棄される)。 通常は B<spu_create>() が返したファイルディスクリプターがクローズされた際に発生する。"
3406
3407 #. type: Plain text
3408 #: build/C/man2/spu_create.2:83
3409 msgid "The I<flags> argument can be zero or any bitwise OR-ed combination of the following constants:"
3410 msgstr "I<flags> 引き数には 0 か以下の定数の組み合わせ (ビット単位の論理和) を指定できる。"
3411
3412 #. type: TP
3413 #: build/C/man2/spu_create.2:83
3414 #, no-wrap
3415 msgid "B<SPU_CREATE_EVENTS_ENABLED>"
3416 msgstr "B<SPU_CREATE_EVENTS_ENABLED>"
3417
3418 #. type: Plain text
3419 #: build/C/man2/spu_create.2:89
3420 msgid "Rather than using signals for reporting DMA errors, use the I<event> argument to B<spu_run>(2)."
3421 msgstr "DMA エラーを通知するのにシグナルを使うのではなく、 B<spu_run>(2) の I<event> 引き数を使用する。"
3422
3423 #. type: TP
3424 #: build/C/man2/spu_create.2:89
3425 #, no-wrap
3426 msgid "B<SPU_CREATE_GANG>"
3427 msgstr "B<SPU_CREATE_GANG>"
3428
3429 #. type: Plain text
3430 #: build/C/man2/spu_create.2:97
3431 msgid "Create an SPU gang instead of a context.  (A gang is a group of SPU contexts that are functionally related to each other and which share common scheduling parameters\\(empriority and policy.  In the future, gang scheduling may be implemented causing the group to be switched in and out as a single unit.)"
3432 msgstr "コンテキストの代わりに SPU gang を作成する。 (gang は、機能的に互いに関係していて、スケジューリングパラメーター (優先度とポリシー) を共有する SPU コンテキストのグループである。 将来、 グループ全体が一つの単位としてスイッチイン/スイッチアウトされる gang スケジューリングが実装されるかもしれない。)"
3433
3434 #. type: Plain text
3435 #: build/C/man2/spu_create.2:104
3436 msgid "A new directory will be created at the location specified by the I<pathname> argument.  This gang may be used to hold other SPU contexts, by providing a pathname that is within the gang directory to further calls to B<spu_create>()."
3437 msgstr "I<pathname> 引き数で指定された場所に新しいディレクトリが作成される。 この gang を使って他の SPU コンテキストを保持することができる。 それには、それ以降の B<spu_create>() に gang ディレクトリ内のパス名を渡す。"
3438
3439 #. type: TP
3440 #: build/C/man2/spu_create.2:104
3441 #, no-wrap
3442 msgid "B<SPU_CREATE_NOSCHED>"
3443 msgstr "B<SPU_CREATE_NOSCHED>"
3444
3445 #. type: Plain text
3446 #: build/C/man2/spu_create.2:110
3447 msgid "Create a context that is not affected by the SPU scheduler.  Once the context is run, it will not be scheduled out until it is destroyed by the creating process."
3448 msgstr "SPU スケジューラーの影響を受けないコンテキストを作成する。 一度実行されると、 呼び出したプロセスが破棄されるまでこのコンテキストがスケジューリングで追い出されることはない。"
3449
3450 #. type: Plain text
3451 #: build/C/man2/spu_create.2:121
3452 msgid "Because the context cannot be removed from the SPU, some functionality is disabled for B<SPU_CREATE_NOSCHED> contexts.  Only a subset of the files will be available in this context directory in B<spufs>.  Additionally, B<SPU_CREATE_NOSCHED> contexts cannot dump a core file when crashing."
3453 msgstr "このコンテキストは SPU から削除されることはないので、 B<SPU_CREATE_NOSCHED> コンテキストではいくつかの機能は無効にされる。 B<spufs> のこのコンテキストのディレクトリでは一部のファイルだけができる。 また、 B<SPU_CREATE_NOSCHED> コンテキストはクラッシュした際にコアファイルをダンプできない。"
3454
3455 #. type: Plain text
3456 #: build/C/man2/spu_create.2:127
3457 msgid "Creating B<SPU_CREATE_NOSCHED> contexts requires the B<CAP_SYS_NICE> capability."
3458 msgstr "B<SPU_CREATE_NOSCHED> コンテキストを作成するには B<CAP_SYS_NICE> ケーパビリティが必要である。"
3459
3460 #. type: TP
3461 #: build/C/man2/spu_create.2:127
3462 #, no-wrap
3463 msgid "B<SPU_CREATE_ISOLATE>"
3464 msgstr "B<SPU_CREATE_ISOLATE>"
3465
3466 #. type: Plain text
3467 #: build/C/man2/spu_create.2:134
3468 msgid "Create an isolated SPU context.  Isolated contexts are protected from some PPE (PowerPC Processing Element)  operations, such as access to the SPU local store and the NPC register."
3469 msgstr "隔離された SPU コンテキストを作成する。 隔離されたコンテキストはいくつかの PPE (PowerPC Processing Element) 命令から保護される。 SPU ローカルストアや NPC レジスターへのアクセスなどである。"
3470
3471 #. type: Plain text
3472 #: build/C/man2/spu_create.2:140
3473 msgid "Creating B<SPU_CREATE_ISOLATE> contexts also requires the B<SPU_CREATE_NOSCHED> flag."
3474 msgstr "B<SPU_CREATE_ISOLATE> コンテキストを作成するには B<SPU_CREATE_NOSCHED> フラグも指定する必要がある。"
3475
3476 #. type: TP
3477 #: build/C/man2/spu_create.2:140
3478 #, no-wrap
3479 msgid "B<SPU_CREATE_AFFINITY_SPU>"
3480 msgstr "B<SPU_CREATE_AFFINITY_SPU>"
3481
3482 #. type: Plain text
3483 #: build/C/man2/spu_create.2:148
3484 msgid "Create a context with affinity to another SPU context.  This affinity information is used within the SPU scheduling algorithm.  Using this flag requires that a file descriptor referring to the other SPU context be passed in the I<neighbor_fd> argument."
3485 msgstr "別の SPU コンテキストと affinity (親和性) を持ったコンテキストを作成する。 この affinity 情報は SPU スケジューリングアルゴリズムで使用される。 このフラグを使う際には、 他の SPU コンテキストを指すファイルディスクリプターを I<neighbor_fd> 引き数を渡す必要がある。"
3486
3487 #. type: TP
3488 #: build/C/man2/spu_create.2:148
3489 #, no-wrap
3490 msgid "B<SPU_CREATE_AFFINITY_MEM>"
3491 msgstr "B<SPU_CREATE_AFFINITY_MEM>"
3492
3493 #. type: Plain text
3494 #: build/C/man2/spu_create.2:153
3495 msgid "Create a context with affinity to system memory.  This affinity information is used within the SPU scheduling algorithm."
3496 msgstr "システムメモリーと affinity (親和性) を持ったコンテキストを作成する。 この affinity 情報は SPU スケジューリングアルゴリズムで使用される。"
3497
3498 #. type: Plain text
3499 #: build/C/man2/spu_create.2:165
3500 msgid "The I<mode> argument (minus any bits set in the process's B<umask>(2))  specifies the permissions used for creating the new directory in B<spufs>.  See B<stat>(2)  for a full list of the possible I<mode> values."
3501 msgstr "I<mode> 引き数 (からプロセスの B<umask>(2) でセットされたビットを除いたもの) により、 B<spufs> に作られる新しいディレクトリで使用されるアクセス許可が決まる。 利用できる I<mode> 値の完全なリストについては B<stat>(2) を参照。"
3502
3503 #. type: Plain text
3504 #: build/C/man2/spu_create.2:172
3505 msgid "On success, B<spu_create>()  returns a new file descriptor.  On error, -1 is returned, and I<errno> is set to one of the error codes listed below."
3506 msgstr "成功すると、 B<spu_create>() は新しいファイルディスクリプターを返す。 エラーの場合、-1 を返し、 I<errno> に以下のリストに記載のエラーコードのいずれかを設定する。"
3507
3508 #. type: Plain text
3509 #: build/C/man2/spu_create.2:178
3510 msgid "The current user does not have write access to the B<spufs>(7)  mount point."
3511 msgstr ""
3512 "現在のユーザーが B<spufs>(7) のマウントポイントへの書き込み許可を持って\n"
3513 "いない。"
3514
3515 #. type: Plain text
3516 #: build/C/man2/spu_create.2:181
3517 msgid "An SPU context already exists at the given pathname."
3518 msgstr "指定されたパス名で SPU コンテキストがすでに生成されている。"
3519
3520 #. type: Plain text
3521 #: build/C/man2/spu_create.2:186
3522 msgid "I<pathname> is not a valid string pointer in the calling process's address space."
3523 msgstr "I<pathname> が呼び出し元のプロセスのアドレス空間で有効な文字列ポインターではない。"
3524
3525 #. type: Plain text
3526 #: build/C/man2/spu_create.2:192
3527 msgid "I<pathname> is not a directory in the B<spufs>(7)  mount point, or invalid flags have been provided."
3528 msgstr "I<pathname> が SPUFS マウントポイント内のディレクトリではない。 または、無効なフラグが指定された。"
3529
3530 #. type: Plain text
3531 #: build/C/man2/spu_create.2:196
3532 msgid "Too many symbolic links were found while resolving I<pathname>."
3533 msgstr "I<pathname> を解決するまでに辿ったシンボリックリンクが多過ぎた。"
3534
3535 #. type: Plain text
3536 #: build/C/man2/spu_create.2:199
3537 msgid "The process has reached its maximum open files limit."
3538 msgstr "そのプロセスがオープンできるファイル数の上限に達していた。"
3539
3540 #. type: Plain text
3541 #: build/C/man2/spu_create.2:203 build/C/man2/stat.2:544
3542 msgid "I<pathname> is too long."
3543 msgstr "I<pathname> が長過ぎる。"
3544
3545 #. type: TP
3546 #: build/C/man2/spu_create.2:203
3547 #, no-wrap
3548 msgid "B<ENFILE>"
3549 msgstr "B<ENFILE>"
3550
3551 #. type: Plain text
3552 #: build/C/man2/spu_create.2:206
3553 msgid "The system has reached the global open files limit."
3554 msgstr "システム全体でオープンできるファイル数の上限に達していた。"
3555
3556 #. type: Plain text
3557 #: build/C/man2/spu_create.2:210
3558 msgid "An isolated context was requested, but the hardware does not support SPU isolation."
3559 msgstr "隔離されたコンテキストが要求されたが、 ハードウェアが SPU アイソレーションをサポートしていない。"
3560
3561 #. type: Plain text
3562 #: build/C/man2/spu_create.2:215
3563 msgid "Part of I<pathname> could not be resolved."
3564 msgstr "I<pathname> の一部が解決できなかった。"
3565
3566 #. type: Plain text
3567 #: build/C/man2/spu_create.2:218
3568 msgid "The kernel could not allocate all resources required."
3569 msgstr "カーネルが必要なリソースの全てを割り当てることができなかった。"
3570
3571 #. type: Plain text
3572 #: build/C/man2/spu_create.2:223
3573 msgid "There are not enough SPU resources available to create a new context or the user-specific limit for the number of SPU contexts has been reached."
3574 msgstr "新しいコンテキストを生成するのに十分な SPU リソースがなかった、 または SPU コンテキスト数がそのユーザーの特定の上限に達していた。"
3575
3576 #. type: TP
3577 #: build/C/man2/spu_create.2:223 build/C/man2/spu_run.2:183
3578 #: build/C/man2/statfs.2:206 build/C/man3/statvfs.3:145
3579 #: build/C/man2/ustat.2:88
3580 #, no-wrap
3581 msgid "B<ENOSYS>"
3582 msgstr "B<ENOSYS>"
3583
3584 #. type: Plain text
3585 #: build/C/man2/spu_create.2:228 build/C/man2/spu_run.2:188
3586 msgid "The functionality is not provided by the current system, because either the hardware does not provide SPUs or the spufs module is not loaded."
3587 msgstr "機能が動作中のシステムで提供されていない。理由は、 ハードウェアで SPU が提供されていないか、 spufs モジュールがロードされていないか、のどちらかである。"
3588
3589 #. type: Plain text
3590 #: build/C/man2/spu_create.2:233
3591 msgid "A part of I<pathname> is not a directory."
3592 msgstr "I<pathname> の一部がディレクトリではない。"
3593
3594 #. type: Plain text
3595 #: build/C/man2/spu_create.2:240
3596 msgid "The I<SPU_CREATE_NOSCHED> flag has been given, but the user does not have the B<CAP_SYS_NICE> capability."
3597 msgstr "I<SPU_CREATE_NOSCHED> フラグが指定されたが、ユーザーが B<CAP_SYS_NICE> ケーパビリティを持っていない。"
3598
3599 #. type: Plain text
3600 #: build/C/man2/spu_create.2:246
3601 msgid "I<pathname> must point to a location beneath the mount point of B<spufs>.  By convention, it gets mounted in I</spu>."
3602 msgstr ""
3603 "I<pathname> は B<spufs> のマウントポイントの配下の場所を指して\n"
3604 "いなければならない。 慣例では I</spu> にマウントされる。"
3605
3606 #. type: Plain text
3607 #: build/C/man2/spu_create.2:250
3608 msgid "The B<spu_create>()  system call was added to Linux in kernel 2.6.16."
3609 msgstr "B<spu_create>() システムコールはカーネル 2.6.16 で Linux に追加された。"
3610
3611 #. type: Plain text
3612 #: build/C/man2/spu_create.2:254
3613 msgid "This call is Linux-specific and implemented only on the PowerPC architecture.  Programs using this system call are not portable."
3614 msgstr "このシステムコールは Linux 固有であり、 PowerPC アーキテクチャーでのみ実装されている。 このシステムコールを使ったプログラムは移植性がない。"
3615
3616 #. type: Plain text
3617 #: build/C/man2/spu_create.2:265
3618 msgid "Glibc does not provide a wrapper for this system call; call it using B<syscall>(2).  Note however, that B<spu_create>()  is meant to be used from libraries that implement a more abstract interface to SPUs, not to be used from regular applications.  See E<.UR http://www.bsc.es\\:/projects\\:/deepcomputing\\:/linuxoncell/> E<.UE> for the recommended libraries."
3619 msgstr "glibc はこのシステムコールに対するラッパー関数を提供していない。 B<syscall>(2)  を使うこと。ただし、 B<spu_create>()  は より抽象度の高い SPU へのインターフェースを実装するライブラリから 利用されることを意図したものであり、通常のアプリケーションから 使用は意図されていない。推奨のライブラリについては E<.UR http://www.bsc.es\\:/projects\\:/deepcomputing\\:/linuxoncell/> E<.UE> を参照のこと。"
3620
3621 #. type: Plain text
3622 #: build/C/man2/spu_create.2:270
3623 msgid "See B<spu_run>(2)  for an example of the use of B<spu_create>()"
3624 msgstr "B<spu_create>() の利用例については B<spu_run>(2) を参照。"
3625
3626 #. type: Plain text
3627 #: build/C/man2/spu_create.2:275
3628 msgid "B<close>(2), B<spu_run>(2), B<capabilities>(7), B<spufs>(7)"
3629 msgstr "B<close>(2), B<spu_run>(2), B<capabilities>(7), B<spufs>(7)"
3630
3631 #. type: TH
3632 #: build/C/man2/spu_run.2:26
3633 #, no-wrap
3634 msgid "SPU_RUN"
3635 msgstr "SPU_RUN"
3636
3637 #. type: Plain text
3638 #: build/C/man2/spu_run.2:29
3639 msgid "spu_run - execute an SPU context"
3640 msgstr "spu_run - SPU コンテキストを実行する"
3641
3642 #. type: Plain text
3643 #: build/C/man2/spu_run.2:32
3644 #, no-wrap
3645 msgid "B<#include E<lt>sys/spu.hE<gt>>\n"
3646 msgstr "B<#include E<lt>sys/spu.hE<gt>>\n"
3647
3648 #. type: Plain text
3649 #: build/C/man2/spu_run.2:35
3650 #, no-wrap
3651 msgid "B<int spu_run(int >I<fd>B<, unsigned int *>I<npc>B<, unsigned int *>I<event>B<);>\n"
3652 msgstr "B<int spu_run(int >I<fd>B<, unsigned int *>I<npc>B<, unsigned int *>I<event>B<);>\n"
3653
3654 #. type: Plain text
3655 #: build/C/man2/spu_run.2:53
3656 msgid "The B<spu_run>()  system call is used on PowerPC machines that implement the Cell Broadband Engine Architecture in order to access Synergistic Processor Units (SPUs).  The I<fd> argument is a file descriptor returned by B<spu_create>(2)  that refers to a specific SPU context.  When the context gets scheduled to a physical SPU, it starts execution at the instruction pointer passed in I<npc>."
3657 msgstr "B<spu_run>()  システムコールは、Cell Broadband Engine アーキテクチャーを実装した PowerPC マシンで Synergistic Processor Units (SPU) にアクセスするために 使用される。 I<fd> 引き数は、 B<spu_create>(2)  が返すファイルディスクリプターで、 特定の SPU コンテキストを参照する。 そのコンテキストが物理 SPU に割り当てられると、 I<npc> で渡された命令ポインター (instruction pointer) から実行が開始される。"
3658
3659 #. type: Plain text
3660 #: build/C/man2/spu_run.2:62
3661 msgid "Execution of SPU code happens synchronously, meaning that B<spu_run>()  blocks while the SPU is still running.  If there is a need to execute SPU code in parallel with other code on either the main CPU or other SPUs, a new thread of execution must be created first (e.g., using B<pthread_create>(3))."
3662 msgstr "SPU コードの実行は同期的 (synchronously) に行われる、つまり SPU が実行中は B<spu_run>()  は停止 (block) する。 SPU コードの実行をメイン CPU や他の SPU と並行して行う必要がある場合は、 最初に、その SPU コードを実行する新しいスレッドを、(例えば B<pthread_create>(3)  などを使って) 生成しなければならない。"
3663
3664 #. type: Plain text
3665 #: build/C/man2/spu_run.2:72
3666 msgid "When B<spu_run>()  returns, the current value of the SPU program counter is written to I<npc>, so successive calls to B<spu_run>()  can use the same I<npc> pointer."
3667 msgstr "B<spu_run>()  が返るときには、SPU のプログラムカウンターの現在値が I<npc> に書き込まれる。 これにより、連続する B<spu_run>()  の呼び出しで同じ I<npc> ポインターを使うことができる。"
3668
3669 #. type: Plain text
3670 #: build/C/man2/spu_run.2:82
3671 msgid "The I<event> argument provides a buffer for an extended status code.  If the SPU context was created with the B<SPU_CREATE_EVENTS_ENABLED> flag, then this buffer is populated by the Linux kernel before B<spu_run>()  returns."
3672 msgstr "I<event> 引き数には、拡張ステータスコード用のバッファーを指定する。 B<SPU_CREATE_EVENTS_ENABLED> フラグ付きで SPU コンテキストが作成されると、 B<spu_run>()  が返る前に Linux カーネルによりこのバッファーに 拡張ステータスコードが格納される。"
3673
3674 #. type: Plain text
3675 #: build/C/man2/spu_run.2:84
3676 msgid "The status code may be one (or more) of the following constants:"
3677 msgstr "ステータスコードには以下の定数が一つ以上入る。"
3678
3679 #. type: TP
3680 #: build/C/man2/spu_run.2:84
3681 #, no-wrap
3682 msgid "B<SPE_EVENT_DMA_ALIGNMENT>"
3683 msgstr "B<SPE_EVENT_DMA_ALIGNMENT>"
3684
3685 #. type: Plain text
3686 #: build/C/man2/spu_run.2:87
3687 msgid "A DMA alignment error occurred."
3688 msgstr "DMA (direct memory access) のアライメントエラーが発生した。"
3689
3690 #. type: TP
3691 #: build/C/man2/spu_run.2:87
3692 #, no-wrap
3693 msgid "B<SPE_EVENT_INVALID_DMA>"
3694 msgstr "B<SPE_EVENT_INVALID_DMA>"
3695
3696 #. type: Plain text
3697 #: build/C/man2/spu_run.2:90
3698 msgid "An invalid MFC DMA command was attempted."
3699 msgstr "無効な MFC (Memory Flow Controller) DMA コマンドを行おうとした。"
3700
3701 #. type: TP
3702 #: build/C/man2/spu_run.2:90
3703 #, no-wrap
3704 msgid "B<SPE_EVENT_SPE_DATA_STORAGE>"
3705 msgstr "B<SPE_EVENT_SPE_DATA_STORAGE>"
3706
3707 #. type: Plain text
3708 #: build/C/man2/spu_run.2:93
3709 msgid "A DMA storage error occurred."
3710 msgstr "DMA ストレージエラーが発生した。"
3711
3712 #. type: TP
3713 #: build/C/man2/spu_run.2:93
3714 #, no-wrap
3715 msgid "B<SPE_EVENT_SPE_ERROR>"
3716 msgstr "B<SPE_EVENT_SPE_ERROR>"
3717
3718 #. type: Plain text
3719 #: build/C/man2/spu_run.2:96
3720 msgid "An illegal instruction was executed."
3721 msgstr "不正な命令が実行された。"
3722
3723 #. type: Plain text
3724 #: build/C/man2/spu_run.2:102
3725 msgid "NULL is a valid value for the I<event> argument.  In this case, the events will not be reported to the calling process."
3726 msgstr "NULL は I<event> 引き数として有効な値である。 この場合、イベントは呼び出し元のプロセスに報告されない。"
3727
3728 #. type: Plain text
3729 #: build/C/man2/spu_run.2:111
3730 msgid "On success, B<spu_run>()  returns the value of the I<spu_status> register.  On error, it returns -1 and sets I<errno> to one of the error codes listed below."
3731 msgstr "成功すると、 B<spu_run>()  は I<spu_status> レジスターの値を返す。 エラーの場合、-1 を返し、 I<errno> を下記のエラーコードのいずれかに設定する。"
3732
3733 #. type: Plain text
3734 #: build/C/man2/spu_run.2:120
3735 msgid "The I<spu_status> register value is a bit mask of status codes and optionally a 14-bit code returned from the B<stop-and-signal> instruction on the SPU.  The bit masks for the status codes are:"
3736 msgstr "I<spu_status> レジスターの値は、ステータスコードと SPU の B<stop-and-signal> 命令が返す 14 ビットのコードの ビットマスクで構成される。 後者の 14 ビットのコードはオプションである。 ステータスコードのビットマスクは下記の通りである。"
3737
3738 #. type: TP
3739 #: build/C/man2/spu_run.2:120
3740 #, no-wrap
3741 msgid "B<0x02>"
3742 msgstr "B<0x02>"
3743
3744 #. type: Plain text
3745 #: build/C/man2/spu_run.2:125
3746 msgid "SPU was stopped by a B<stop-and-signal> instruction."
3747 msgstr "SPU が B<stop-and-signal> 命令で停止した。"
3748
3749 #. type: TP
3750 #: build/C/man2/spu_run.2:125
3751 #, no-wrap
3752 msgid "B<0x04>"
3753 msgstr "B<0x04>"
3754
3755 #. type: Plain text
3756 #: build/C/man2/spu_run.2:130
3757 msgid "SPU was stopped by a B<halt> instruction."
3758 msgstr "SPU が B<halt (停止)> 命令で止まった。"
3759
3760 #. type: TP
3761 #: build/C/man2/spu_run.2:130
3762 #, no-wrap
3763 msgid "B<0x08>"
3764 msgstr "B<0x08>"
3765
3766 #. type: Plain text
3767 #: build/C/man2/spu_run.2:133
3768 msgid "SPU is waiting for a channel."
3769 msgstr "SPU はチャンネルのウェイト中である。"
3770
3771 #. type: TP
3772 #: build/C/man2/spu_run.2:133
3773 #, no-wrap
3774 msgid "B<0x10>"
3775 msgstr "B<0x10>"
3776
3777 #. type: Plain text
3778 #: build/C/man2/spu_run.2:136
3779 msgid "SPU is in single-step mode."
3780 msgstr "SPU はシングルステップモードであった。"
3781
3782 #. type: TP
3783 #: build/C/man2/spu_run.2:136
3784 #, no-wrap
3785 msgid "B<0x20>"
3786 msgstr "B<0x20>"
3787
3788 #. type: Plain text
3789 #: build/C/man2/spu_run.2:139
3790 msgid "SPU has tried to execute an invalid instruction."
3791 msgstr "SPU が不正な命令を実行しようとした。"
3792
3793 #. type: TP
3794 #: build/C/man2/spu_run.2:139
3795 #, no-wrap
3796 msgid "B<0x40>"
3797 msgstr "B<0x40>"
3798
3799 #. type: Plain text
3800 #: build/C/man2/spu_run.2:142
3801 msgid "SPU has tried to access an invalid channel."
3802 msgstr "SPU が不正なチャンネルにアクセスしようとした。"
3803
3804 #. type: TP
3805 #: build/C/man2/spu_run.2:142
3806 #, no-wrap
3807 msgid "B<0x3fff0000>"
3808 msgstr "B<0x3fff0000>"
3809
3810 #. type: Plain text
3811 #: build/C/man2/spu_run.2:148
3812 msgid "The bits masked with this value contain the code returned from a B<stop-and-signal> instruction.  These bits are valid only if the 0x02 bit is set."
3813 msgstr "この値のマスクを適用して得られたビット値には、 stop-and-signal 命令から返されたコードが入っている。 これらのビットは 0x02 ビットがセットされている場合にのみ有効である。"
3814
3815 #. type: Plain text
3816 #: build/C/man2/spu_run.2:153
3817 msgid "If B<spu_run>()  has not returned an error, one or more bits among the lower eight ones are always set."
3818 msgstr "B<spu_run>()  がエラーを返さなかった場合、下位 8 ビットのうち 1 つ以上は 常にセットされる。"
3819
3820 #. type: TP
3821 #: build/C/man2/spu_run.2:154 build/C/man2/stat.2:530 build/C/man2/stat.2:581
3822 #: build/C/man2/statfs.2:170 build/C/man3/statvfs.3:109
3823 #, no-wrap
3824 msgid "B<EBADF>"
3825 msgstr "B<EBADF>"
3826
3827 #. type: Plain text
3828 #: build/C/man2/spu_run.2:158
3829 msgid "I<fd> is not a valid file descriptor."
3830 msgstr "I<fd> が有効なファイルディスクリプターでない。"
3831
3832 #. type: Plain text
3833 #: build/C/man2/spu_run.2:164
3834 msgid "I<npc> is not a valid pointer, or I<event> is non-NULL and an invalid pointer."
3835 msgstr "I<npc> が有効なポインターでない。または I<event> が NULL 以外で、しかも無効なポインターである。"
3836
3837 #. type: TP
3838 #: build/C/man2/spu_run.2:164 build/C/man2/statfs.2:181
3839 #: build/C/man3/statvfs.3:120
3840 #, no-wrap
3841 msgid "B<EINTR>"
3842 msgstr "B<EINTR>"
3843
3844 #. type: Plain text
3845 #: build/C/man2/spu_run.2:174
3846 msgid "A signal occurred while B<spu_run>()  was in progress; see B<signal>(7).  The I<npc> value has been updated to the new program counter value if necessary."
3847 msgstr "B<spu_run>()  の実行中にシグナルが発生した。 B<signal>(7)  参照。 必要であれば、 I<npc> の値は新しいプログラムカウンターの値に更新される。"
3848
3849 #. type: Plain text
3850 #: build/C/man2/spu_run.2:179
3851 msgid "I<fd> is not a valid file descriptor returned from B<spu_create>(2)."
3852 msgstr "I<fd> が B<spu_create>(2)  が返した有効なファイルディスクリプターでない。"
3853
3854 #. type: Plain text
3855 #: build/C/man2/spu_run.2:183
3856 msgid "There was not enough memory available to handle a page fault resulting from a Memory Flow Controller (MFC) direct memory access."
3857 msgstr "Memory Flow Controller (MFC) DMA により発生したページフォールトを 処理するのに必要なメモリーがなかった。"
3858
3859 #. type: Plain text
3860 #: build/C/man2/spu_run.2:192
3861 msgid "The B<spu_run>()  system call was added to Linux in kernel 2.6.16."
3862 msgstr "B<spu_run>()  システムコールはカーネル 2.6.16 で Linux に追加された。"
3863
3864 #. type: Plain text
3865 #: build/C/man2/spu_run.2:196
3866 msgid "This call is Linux-specific and implemented only by the PowerPC architecture.  Programs using this system call are not portable."
3867 msgstr "このシステムコールは Linux 固有であり、 PowerPC アーキテクチャーでのみ実装されている。 このシステムコールを使ったプログラムは移植性がない。"
3868
3869 #. type: Plain text
3870 #: build/C/man2/spu_run.2:207
3871 msgid "Glibc does not provide a wrapper for this system call; call it using B<syscall>(2).  Note however, that B<spu_run>()  is meant to be used from libraries that implement a more abstract interface to SPUs, not to be used from regular applications.  See E<.UR http://www.bsc.es\\:/projects\\:/deepcomputing\\:/linuxoncell/> E<.UE> for the recommended libraries."
3872 msgstr "glibc はこのシステムコールに対するラッパー関数を提供していない。 B<syscall>(2)  を使うこと。ただし、 B<spu_run>()  は より抽象度の高い SPU へのインターフェースを実装するライブラリから 利用されることを意図したものであり、通常のアプリケーションから 使用は意図されていない。推奨のライブラリについては E<.UR http://www.bsc.es\\:/projects\\:/deepcomputing\\:/linuxoncell/> E<.UE> を参照のこと。"
3873
3874 #. type: Plain text
3875 #: build/C/man2/spu_run.2:212
3876 msgid "The following is an example of running a simple, one-instruction SPU program with the B<spu_run>()  system call."
3877 msgstr "以下は、簡単な 1 命令の SPU プログラムを B<spu_run>()  システムコールを使って実行させる例である。"
3878
3879 #. type: Plain text
3880 #: build/C/man2/spu_run.2:220
3881 #, no-wrap
3882 msgid ""
3883 "#include E<lt>stdlib.hE<gt>\n"
3884 "#include E<lt>stdint.hE<gt>\n"
3885 "#include E<lt>unistd.hE<gt>\n"
3886 "#include E<lt>stdio.hE<gt>\n"
3887 "#include E<lt>sys/types.hE<gt>\n"
3888 "#include E<lt>fcntl.hE<gt>\n"
3889 msgstr ""
3890 "#include E<lt>stdlib.hE<gt>\n"
3891 "#include E<lt>stdint.hE<gt>\n"
3892 "#include E<lt>unistd.hE<gt>\n"
3893 "#include E<lt>stdio.hE<gt>\n"
3894 "#include E<lt>sys/types.hE<gt>\n"
3895 "#include E<lt>fcntl.hE<gt>\n"
3896
3897 #. type: Plain text
3898 #: build/C/man2/spu_run.2:223
3899 #, no-wrap
3900 msgid ""
3901 "#define handle_error(msg) \\e\n"
3902 "    do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
3903 msgstr ""
3904 "#define handle_error(msg) \\e\n"
3905 "    do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
3906
3907 #. type: Plain text
3908 #: build/C/man2/spu_run.2:228
3909 #, no-wrap
3910 msgid ""
3911 "int main(void)\n"
3912 "{\n"
3913 "    int context, fd, spu_status;\n"
3914 "    uint32_t instruction, npc;\n"
3915 msgstr ""
3916 "int main(void)\n"
3917 "{\n"
3918 "    int context, fd, spu_status;\n"
3919 "    uint32_t instruction, npc;\n"
3920
3921 #. type: Plain text
3922 #: build/C/man2/spu_run.2:232
3923 #, no-wrap
3924 msgid ""
3925 "    context = spu_create(\"/spu/example-context\", 0, 0755);\n"
3926 "    if (context == -1)\n"
3927 "        handle_error(\"spu_create\");\n"
3928 msgstr ""
3929 "    context = spu_create(\"/spu/example-context\", 0, 0755);\n"
3930 "    if (context == -1)\n"
3931 "        handle_error(\"spu_create\");\n"
3932
3933 #. type: Plain text
3934 #: build/C/man2/spu_run.2:237
3935 #, no-wrap
3936 msgid ""
3937 "    /* write a \\(aqstop 0x1234\\(aq instruction to the SPU\\(aqs\n"
3938 "     * local store memory\n"
3939 "     */\n"
3940 "    instruction = 0x00001234;\n"
3941 msgstr ""
3942 "    /* write a \\(aqstop 0x1234\\(aq instruction to the SPU\\(aqs\n"
3943 "     * local store memory\n"
3944 "     */\n"
3945 "    instruction = 0x00001234;\n"
3946
3947 #. type: Plain text
3948 #: build/C/man2/spu_run.2:242
3949 #, no-wrap
3950 msgid ""
3951 "    fd = open(\"/spu/example-context/mem\", O_RDWR);\n"
3952 "    if (fd == -1)\n"
3953 "        handle_error(\"open\");\n"
3954 "    write(fd, &instruction, sizeof(instruction));\n"
3955 msgstr ""
3956 "    fd = open(\"/spu/example-context/mem\", O_RDWR);\n"
3957 "    if (fd == -1)\n"
3958 "        handle_error(\"open\");\n"
3959 "    write(fd, &instruction, sizeof(instruction));\n"
3960
3961 #. type: Plain text
3962 #: build/C/man2/spu_run.2:248
3963 #, no-wrap
3964 msgid ""
3965 "    /* set npc to the starting instruction address of the\n"
3966 "     * SPU program. Since we wrote the instruction at the\n"
3967 "     * start of the mem file, the entry point will be 0x0\n"
3968 "     */\n"
3969 "    npc = 0;\n"
3970 msgstr ""
3971 "    /* set npc to the starting instruction address of the\n"
3972 "     * SPU program. Since we wrote the instruction at the\n"
3973 "     * start of the mem file, the entry point will be 0x0\n"
3974 "     */\n"
3975 "    npc = 0;\n"
3976
3977 #. type: Plain text
3978 #: build/C/man2/spu_run.2:252
3979 #, no-wrap
3980 msgid ""
3981 "    spu_status = spu_run(context, &npc, NULL);\n"
3982 "    if (spu_status == -1)\n"
3983 "        handle_error(\"open\");\n"
3984 msgstr ""
3985 "    spu_status = spu_run(context, &npc, NULL);\n"
3986 "    if (spu_status == -1)\n"
3987 "        handle_error(\"open\");\n"
3988
3989 #. type: Plain text
3990 #: build/C/man2/spu_run.2:258
3991 #, no-wrap
3992 msgid ""
3993 "    /* we should see a status code of 0x1234002:\n"
3994 "     *   0x00000002 (spu was stopped due to stop-and-signal)\n"
3995 "     * | 0x12340000 (the stop-and-signal code)\n"
3996 "     */\n"
3997 "    printf(\"SPU Status: 0x%08x\\en\", spu_status);\n"
3998 msgstr ""
3999 "    /* we should see a status code of 0x1234002:\n"
4000 "     *   0x00000002 (spu was stopped due to stop-and-signal)\n"
4001 "     * | 0x12340000 (the stop-and-signal code)\n"
4002 "     */\n"
4003 "    printf(\"SPU Status: 0x%08x\\en\", spu_status);\n"
4004
4005 #. type: Plain text
4006 #: build/C/man2/spu_run.2:261 build/C/man2/stat.2:919
4007 #, no-wrap
4008 msgid ""
4009 "    exit(EXIT_SUCCESS);\n"
4010 "}\n"
4011 msgstr ""
4012 "    exit(EXIT_SUCCESS);\n"
4013 "}\n"
4014
4015 #. type: Plain text
4016 #: build/C/man2/spu_run.2:269
4017 msgid "B<close>(2), B<spu_create>(2), B<capabilities>(7), B<spufs>(7)"
4018 msgstr "B<close>(2), B<spu_create>(2), B<capabilities>(7), B<spufs>(7)"
4019
4020 #. type: TH
4021 #: build/C/man7/spufs.7:27
4022 #, no-wrap
4023 msgid "SPUFS"
4024 msgstr "SPUFS"
4025
4026 #. type: TH
4027 #: build/C/man7/spufs.7:27
4028 #, no-wrap
4029 msgid "2007-12-20"
4030 msgstr "2007-12-20"
4031
4032 #. type: Plain text
4033 #: build/C/man7/spufs.7:30
4034 msgid "spufs - SPU filesystem"
4035 msgstr "spufs - SPU ファイルシステム"
4036
4037 #. type: Plain text
4038 #: build/C/man7/spufs.7:34
4039 msgid "The SPU filesystem is used on PowerPC machines that implement the Cell Broadband Engine Architecture in order to access Synergistic Processor Units (SPUs)."
4040 msgstr "SPU ファイルシステムは、Cell Broadband Engine アーキテクチャーを実装した PowerPC マシンにおいて、Synergistic Processor Unit (SPU) にアクセスする ために使用される。"
4041
4042 #. type: Plain text
4043 #: build/C/man7/spufs.7:43
4044 msgid "The filesystem provides a name space similar to POSIX shared memory or message queues.  Users that have write permissions on the filesystem can use B<spu_create>(2)  to establish SPU contexts under the B<spufs> root directory."
4045 msgstr ""
4046 "このファイルシステムでは、POSIX 共有メモリーやメッセージキューに似た名前\n"
4047 "空間が提供される。 ファイルシステムに書き込み許可を持つユーザーは\n"
4048 "B<spu_create>(2) を使って B<spufs> のルートディレクトリに SPU コンテキ\n"
4049 "ストを作成できる。"
4050
4051 #. type: Plain text
4052 #: build/C/man7/spufs.7:50
4053 msgid "Every SPU context is represented by a directory containing a predefined set of files.  These files can be used for manipulating the state of the logical SPU.  Users can change permissions on the files, but can't add or remove files."
4054 msgstr ""
4055 "各 SPU コンテキストは、あらかじめ定義されたファイル群を含むディレクトリ\n"
4056 "として表現される。 これらのファイルを使って、論理 SPU の状態を操作でき\n"
4057 "る。ユーザーはこれらのファイルのアクセス許可を変更することはできるが、\n"
4058 "ファイルの追加・削除を行うことはできない。"
4059
4060 #. type: SS
4061 #: build/C/man7/spufs.7:50
4062 #, no-wrap
4063 msgid "Mount options"
4064 msgstr "マウントオプション"
4065
4066 #. type: TP
4067 #: build/C/man7/spufs.7:51
4068 #, no-wrap
4069 msgid "B<uid=E<lt>uidE<gt>>"
4070 msgstr "B<uid=E<lt>uidE<gt>>"
4071
4072 #. type: Plain text
4073 #: build/C/man7/spufs.7:54
4074 msgid "Set the user owning the mount point; the default is 0 (root)."
4075 msgstr "マウントポイントを所有するユーザーを設定する。 デフォルトは 0 (root) である。"
4076
4077 #. type: TP
4078 #: build/C/man7/spufs.7:54
4079 #, no-wrap
4080 msgid "B<gid=E<lt>gidE<gt>>"
4081 msgstr "B<gid=E<lt>gidE<gt>>"
4082
4083 #. type: Plain text
4084 #: build/C/man7/spufs.7:57
4085 msgid "Set the group owning the mount point; the default is 0 (root)."
4086 msgstr "マウントポイントを所有するグループを設定する。 デフォルトは 0 (root) である。"
4087
4088 #. type: TP
4089 #: build/C/man7/spufs.7:57
4090 #, no-wrap
4091 msgid "B<mode=E<lt>modeE<gt>>"
4092 msgstr "B<mode=E<lt>modeE<gt>>"
4093
4094 #. type: Plain text
4095 #: build/C/man7/spufs.7:63
4096 msgid "Set the mode of the top-level directory in B<spufs>, as an octal mode string.  The default is 0775."
4097 msgstr ""
4098
4099 #. type: SS
4100 #: build/C/man7/spufs.7:63
4101 #, no-wrap
4102 msgid "Files"
4103 msgstr "Files"
4104
4105 #. type: Plain text
4106 #: build/C/man7/spufs.7:75
4107 msgid "The files in B<spufs> mostly follow the standard behavior for regular system calls like B<read>(2)  or B<write>(2), but often support only a subset of the operations supported on regular filesystems.  This list details the supported operations and the deviations from the standard behavior described in the respective man pages."
4108 msgstr ""
4109 "B<spufs> のファイルは、ほとんどの場合 B<read>(2) や B<write>(2) と\n"
4110 "いった通常のシステムコールに対する標準的な振る舞いを示すが、多くの場合\n"
4111 "通常のファイルシステムでサポートされている操作の一部分だけがサポート\n"
4112 "されている。以下のリストでは、サポートされている操作とそれぞれのマニュ\n"
4113 "アルページに書かれている標準的な振る舞いとの違いについて説明する。"
4114
4115 #. type: Plain text
4116 #: build/C/man7/spufs.7:97
4117 msgid "All files that support the B<read>(2)  operation also support B<readv>(2)  and all files that support the B<write>(2)  operation also support B<writev>(2).  All files support the B<access>(2)  and B<stat>(2)  family of operations, but for the latter call, the only fields of the returned I<stat> structure that contain reliable information are I<st_mode>, I<st_nlink>, I<st_uid>, and I<st_gid>."
4118 msgstr ""
4119 "B<read>(2) 操作をサポートしている全てのファイルは B<readv>(2) を\n"
4120 "サポートしており、B<write>(2) 操作をサポートしている全てのファイルは\n"
4121 "B<writev>(2) をサポートしている。\n"
4122 "全てのファイルは、 B<access>(2) と B<stat>(2) 系の操作に対応しているが、\n"
4123 "B<stat>(2) では、呼び出した際に返される I<stat> 構造体のフィールドのう\n"
4124 "ち信頼できる情報が入っているのは I<st_mode>, I<st_nlink>, I<st_uid>,\n"
4125 "I<st_gid> だけである。"
4126
4127 #. type: Plain text
4128 #: build/C/man7/spufs.7:106
4129 msgid "All files support the B<chmod>(2)/B<fchmod>(2)  and B<chown>(2)/B<fchown>(2)  operations, but will not be able to grant permissions that contradict the possible operations (e.g., read access on the I<wbox> file)."
4130 msgstr "全てのファイルは B<chmod>(2)/B<fchmod>(2)  と B<chown>(2)/B<fchown>(2)  の操作に対応しているが、 そのファイルが対応している操作と矛盾するアクセス許可を 付与することはできない (例えば、 I<wbox> ファイルに対する読み出しアクセスなど)。"
4131
4132 #. type: Plain text
4133 #: build/C/man7/spufs.7:108
4134 msgid "The current set of files is:"
4135 msgstr "現時点でのファイルは以下の通りである。"
4136
4137 #. type: TP
4138 #: build/C/man7/spufs.7:108
4139 #, no-wrap
4140 msgid "I</capabilities>"
4141 msgstr "I</capabilities>"
4142
4143 #. type: Plain text
4144 #: build/C/man7/spufs.7:113
4145 msgid "Contains a comma-delimited string representing the capabilities of this SPU context.  Possible capabilities are:"
4146 msgstr ""
4147
4148 #. type: TP
4149 #: build/C/man7/spufs.7:114
4150 #, no-wrap
4151 msgid "B<sched>"
4152 msgstr "B<sched>"
4153
4154 #. type: Plain text
4155 #: build/C/man7/spufs.7:117
4156 msgid "This context may be scheduled."
4157 msgstr ""
4158
4159 #. type: TP
4160 #: build/C/man7/spufs.7:117
4161 #, no-wrap
4162 msgid "B<step>"
4163 msgstr "B<step>"
4164
4165 #. type: Plain text
4166 #: build/C/man7/spufs.7:120
4167 msgid "This context can be run in single-step mode, for debugging."
4168 msgstr ""
4169
4170 #. type: Plain text
4171 #: build/C/man7/spufs.7:122
4172 msgid "New capabilities flags may be added in the future."
4173 msgstr ""
4174
4175 #. type: TP
4176 #: build/C/man7/spufs.7:123
4177 #, no-wrap
4178 msgid "I</mem>"
4179 msgstr "I</mem>"
4180
4181 #. type: Plain text
4182 #: build/C/man7/spufs.7:132
4183 msgid "the contents of the local storage memory of the SPU.  This can be accessed like a regular shared memory file and contains both code and data in the address space of the SPU.  The possible operations on an open I<mem> file are:"
4184 msgstr "SPU のローカルストレージの内容。 このファイルは通常の共有メモリーファイルと同様にアクセスでき、 SPU のアドレス空間にはコードとデータの両方を格納できる。 オープンされた I<mem> ファイルに可能な操作は以下である。"
4185
4186 #. type: TP
4187 #: build/C/man7/spufs.7:133
4188 #, no-wrap
4189 msgid "B<read>(2), B<pread>(2), B<write>(2), B<pwrite>(2), B<lseek>(2)"
4190 msgstr "B<read>(2), B<pread>(2), B<write>(2), B<pwrite>(2), B<lseek>(2)"
4191
4192 #. type: Plain text
4193 #: build/C/man7/spufs.7:144
4194 msgid "These operate as usual, with the exception that B<lseek>(2), B<write>(2), and B<pwrite>(2)  are not supported beyond the end of the file.  The file size is the size of the local storage of the SPU, which is normally 256 kilobytes."
4195 msgstr "これらは通常通り動作するが、 ファイル末尾を越えての B<lseek>(2), B<write>(2), B<pwrite>(2)  に対応していない点だけが異なる。 ファイルサイズは SPU のローカルストレージのサイズであり、 通常は 256 キロバイトである。"
4196
4197 #. type: TP
4198 #: build/C/man7/spufs.7:144 build/C/man7/spufs.7:706 build/C/man7/spufs.7:725
4199 #, no-wrap
4200 msgid "B<mmap>(2)"
4201 msgstr "B<mmap>(2)"
4202
4203 #. type: Plain text
4204 #: build/C/man7/spufs.7:153
4205 msgid "Mapping I<mem> into the process address space provides access to the SPU local storage within the process address space.  Only B<MAP_SHARED> mappings are allowed."
4206 msgstr ""
4207 "I<mem> をプロセスのアドレス空間にマッピングすると、プロセスのアドレス\n"
4208 "空間の一部として SPU のローカルストレージにアクセスできるようになる。\n"
4209 "許可されているマッピングは B<MAP_SHARED> だけである。"
4210
4211 #. type: TP
4212 #: build/C/man7/spufs.7:154
4213 #, no-wrap
4214 msgid "I</regs>"
4215 msgstr "I</regs>"
4216
4217 #. type: Plain text
4218 #: build/C/man7/spufs.7:161
4219 msgid "Contains the saved general-purpose registers of the SPU context.  This file contains the 128-bit values of each register, from register 0 to register 127, in order.  This allows the general-purpose registers to be inspected for debugging."
4220 msgstr ""
4221
4222 #. type: Plain text
4223 #: build/C/man7/spufs.7:165
4224 msgid "Reading to or writing from this file requires that the context is scheduled out, so use of this file is not recommended in normal program operation."
4225 msgstr ""
4226
4227 #. type: Plain text
4228 #: build/C/man7/spufs.7:171
4229 msgid "The I<regs> file is not present on contexts that have been created with the B<SPU_CREATE_NOSCHED> flag."
4230 msgstr ""
4231
4232 #. type: TP
4233 #: build/C/man7/spufs.7:171
4234 #, no-wrap
4235 msgid "I</mbox>"
4236 msgstr "I</mbox>"
4237
4238 #. type: Plain text
4239 #: build/C/man7/spufs.7:181
4240 msgid "The first SPU-to-CPU communication mailbox.  This file is read-only and can be read in units of 4 bytes.  The file can be used only in nonblocking mode - even B<poll>(2)  cannot be used to block on this file.  The only possible operation on an open I<mbox> file is:"
4241 msgstr ""
4242 "SPU から CPU への通信用の 1 つ目のメールボックス。このファイルは読み出\n"
4243 "し専用で、読み出しは 4 バイト単位で行う。このファイルは非停止\n"
4244 "(non-blocking) モードでのみ使用でき、 B<poll>(2) であってもこの\n"
4245 "ファイルで停止 (block) することはできない。オープンされた I<mbox> \n"
4246 "ファイルに可能な操作は以下である。"
4247
4248 #. type: TP
4249 #: build/C/man7/spufs.7:182 build/C/man7/spufs.7:222 build/C/man7/spufs.7:317
4250 #: build/C/man7/spufs.7:381 build/C/man7/spufs.7:418 build/C/man7/spufs.7:463
4251 #: build/C/man7/spufs.7:517 build/C/man7/spufs.7:632 build/C/man7/spufs.7:676
4252 #: build/C/man7/spufs.7:754
4253 #, no-wrap
4254 msgid "B<read>(2)"
4255 msgstr "B<read>(2)"
4256
4257 #. type: Plain text
4258 #: build/C/man7/spufs.7:200
4259 msgid "If I<count> is smaller than four, B<read>(2)  returns -1 and sets I<errno> to B<EINVAL>.  If there is no data available in the mailbox (i.e., the SPU has not sent a mailbox message), the return value is set to -1 and I<errno> is set to B<EAGAIN>.  When data has been read successfully, four bytes are placed in the data buffer and the value four is returned."
4260 msgstr ""
4261 "I<count> が 4 より小さい場合、 B<read>(2) は -1 を返し、 I<errno> を\n"
4262 "B<EINVAL> に設定する。 メールボックスにデータがない場合 (すなわち SPU\n"
4263 "がメールボックスメッセージを送信していない場合)、-1 が返り、 I<errno>\n"
4264 "が B<EAGAIN> に設定される。データの読み出しに成功した場合、 4 バイトが\n"
4265 "データバッファーに格納され、返り値として 4 が返される。"
4266
4267 #. type: TP
4268 #: build/C/man7/spufs.7:201
4269 #, no-wrap
4270 msgid "I</ibox>"
4271 msgstr "I</ibox>"
4272
4273 #. type: Plain text
4274 #: build/C/man7/spufs.7:217
4275 msgid "The second SPU-to-CPU communication mailbox.  This file is similar to the first mailbox file, but can be read in blocking I/O mode, thus calling B<read>(2)  on an open I<ibox> file will block until the SPU has written data to its interrupt mailbox channel (unless the file has been opened with B<O_NONBLOCK>, see below).  Also, B<poll>(2)  and similar system calls can be used to monitor for the presence of mailbox data."
4276 msgstr ""
4277 "SPU から CPU への通信用の 2 つ目のメールボックスである。このファイルは\n"
4278 "1 つ目のメールボックスファイルと似ているが、停止 (blocking) I/O モード\n"
4279 "での読み出しが可能である。したがって、オープンされた I<ibox> ファイルに\n"
4280 "対して B<read>(2) を呼び出すと、(ファイルが B<O_NONBLOCK> (下記参照) で\n"
4281 "オープンされていない場合は) SPU がデータを割り込みメールボックスチャネ\n"
4282 "ル (interrupt mailbox channel) に書き込むまでその呼び出しは停止\n"
4283 "(block) する。また、 B<poll>(2) や同様のシステムコールを使って、メール\n"
4284 "ボックスにデータがあるかをを監視することができる。オープンされた\n"
4285 "I<ibox> ファイルに対して可能な操作は以下である。"
4286
4287 #. type: Plain text
4288 #: build/C/man7/spufs.7:221
4289 msgid "The possible operations on an open I<ibox> file are:"
4290 msgstr "オープンされた I<ibox> ファイルに対して可能な操作は以下である。"
4291
4292 #. type: Plain text
4293 #: build/C/man7/spufs.7:239
4294 msgid "If I<count> is smaller than four, B<read>(2)  returns -1 and sets I<errno> to B<EINVAL>.  If there is no data available in the mailbox and the file descriptor has been opened with B<O_NONBLOCK>, the return value is set to -1 and I<errno> is set to B<EAGAIN>."
4295 msgstr "I<count> が 4 より小さい場合、 B<read>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 メールボックスにデータがない場合、ファイルディスクリプターが B<O_NONBLOCK> でオープンされていれば、返り値は -1 となり、 I<errno> は B<EAGAIN> に設定される。"
4296
4297 #. type: Plain text
4298 #: build/C/man7/spufs.7:247
4299 msgid "If there is no data available in the mailbox and the file descriptor has been opened without B<O_NONBLOCK>, the call will block until the SPU writes to its interrupt mailbox channel.  When data has been read successfully, four bytes are placed in the data buffer and the value four is returned."
4300 msgstr "メールボックスにデータがない場合で、ファイルディスクリプターが B<O_NONBLOCK> なしでオープンされていれば、 SPU が自分の割り込みメールボックスチャネル (interrupt mailbox channel)  に書き込みを行うまで B<read>(2)  は停止 (block) する。 データの読み出しに成功した場合、 4 バイトがデータバッファーに格納され、返り値として 4 が返される。"
4301
4302 #. type: TP
4303 #: build/C/man7/spufs.7:247 build/C/man7/spufs.7:295 build/C/man7/spufs.7:685
4304 #, no-wrap
4305 msgid "B<poll>(2)"
4306 msgstr "B<poll>(2)"
4307
4308 #. type: Plain text
4309 #: build/C/man7/spufs.7:254
4310 msgid "Poll on the I<ibox> file returns I<(POLLIN | POLLRDNORM)> whenever data is available for reading."
4311 msgstr "I<ibox> ファイルに対する B<poll>(2)  は、読み出しデータが利用可能になる度に I<(POLLIN | POLLRDNORM)> を返す。"
4312
4313 #. type: TP
4314 #: build/C/man7/spufs.7:255
4315 #, no-wrap
4316 msgid "I</wbox>"
4317 msgstr "I</wbox>"
4318
4319 #. type: Plain text
4320 #: build/C/man7/spufs.7:267
4321 msgid "The CPU-to-SPU communication mailbox.  It is write-only and can be written in units of four bytes.  If the mailbox is full, B<write>(2)  will block, and B<poll>(2)  can be used to block until the mailbox is available for writing again.  The possible operations on an open I<wbox> file are:"
4322 msgstr ""
4323 "CPU から SPU への通信用のメールボックス。このファイルは書き込み専用で、\n"
4324 "書き込みは 4 バイト単位で行う。メールボックスが一杯の場合、\n"
4325 "B<write>(2) は停止 (block) する。 B<poll>(2) を使ってメールボックスに\n"
4326 "再度書き込み可能になるまで待つことができる。\n"
4327 "オープンされた I<wbox> ファイルに対して可能な操作は以下である。"
4328
4329 #. type: TP
4330 #: build/C/man7/spufs.7:268 build/C/man7/spufs.7:392 build/C/man7/spufs.7:432
4331 #: build/C/man7/spufs.7:476 build/C/man7/spufs.7:527 build/C/man7/spufs.7:638
4332 #: build/C/man7/spufs.7:652 build/C/man7/spufs.7:749
4333 #, no-wrap
4334 msgid "B<write>(2)"
4335 msgstr "B<write>(2)"
4336
4337 #. type: Plain text
4338 #: build/C/man7/spufs.7:286
4339 msgid "If I<count> is smaller than four, B<write>(2)  returns -1 and sets I<errno> to B<EINVAL>.  If there is no space available in the mailbox and the file descriptor has been opened with B<O_NONBLOCK>, the return value is set to -1 and I<errno> is set to B<EAGAIN>."
4340 msgstr "I<count> が 4 より小さい場合、 B<write>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 メールボックスに空き領域がない場合、ファイルディスクリプターが B<O_NONBLOCK> でオープンされていれば、返り値は -1 となり、 I<errno> は B<EAGAIN> に設定される。"
4341
4342 #. type: Plain text
4343 #: build/C/man7/spufs.7:295
4344 msgid "If there is no space available in the mailbox and the file descriptor has been opened without B<O_NONBLOCK>, the call will block until the SPU reads from its PPE (PowerPC Processing Element)  mailbox channel.  When data has been written successfully, the system call returns four as its function result."
4345 msgstr ""
4346 "メールボックスに空き領域がない場合で、ファイルディスクリプターが\n"
4347 "B<O_NONBLOCK> なしでオープンされていれば、 SPU が自分の PPE (PowerPC\n"
4348 "Processing Element) メールボックスチャネルから読み出しを行うまで\n"
4349 "B<write>(2) は停止 (block) する。 データの書き込みに成功した場合、\n"
4350 "返り値として 4 が返される。"
4351
4352 #. type: Plain text
4353 #: build/C/man7/spufs.7:302
4354 msgid "A poll on the I<wbox> file returns I<(POLLOUT | POLLWRNORM)> whenever space is available for writing."
4355 msgstr "I<wbox> ファイルに対する B<poll>(2)  は、書き込み用の空間が利用可能になる度に I<(POLLOUT | POLLWRNORM)> を返す。"
4356
4357 #. type: TP
4358 #: build/C/man7/spufs.7:303
4359 #, no-wrap
4360 msgid "I</mbox_stat>, I</ibox_stat>, I</wbox_stat>"
4361 msgstr "I</mbox_stat>, I</ibox_stat>, I</wbox_stat>"
4362
4363 #. type: Plain text
4364 #: build/C/man7/spufs.7:316
4365 msgid "These are read-only files that contain the length of the current queue of each mailbox\\(emthat is, how many words can be read from I<mbox> or I<ibox> or how many words can be written to I<wbox> without blocking.  The files can be read only in four-byte units and return a big-endian binary integer number.  The only possible operation on an open I<*box_stat> file is:"
4366 msgstr "これらのファイルは読み出し専用で、各メールボックスの現在のキュー長を保持する。 すなわち、停止 (blocking) せずに、 I<mbox> や I<ibox> から何ワードを読み出すことができ、 I<wbox> に何ワードを書き込むことができるか、ということである。これらのファイルは 4 バイト単位でのみ読み出しが可能で、ビッグエンディアンの整数値を返す。オープンされた I<*box_stat> ファイルに対して可能な操作は以下だけである。"
4367
4368 #. type: Plain text
4369 #: build/C/man7/spufs.7:337
4370 msgid "If I<count> is smaller than four, B<read>(2)  returns -1 and sets I<errno> to B<EINVAL>.  Otherwise, a four-byte value is placed in the data buffer.  This value is the number of elements that can be read from (for I<mbox_stat> and I<ibox_stat>)  or written to (for I<wbox_stat>)  the respective mailbox without blocking or returning an B<EAGAIN> error."
4371 msgstr "I<count> が 4 より小さい場合、 B<read>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 それ以外の場合、データバッファーに 4 バイトの値が書き込まれる。 この値は、各メールボックスにおいて停止せずに、または B<EAGAIN> エラーなしで、読み出し可能なエレメント数 (I<mbox_stat> や I<ibox_stat> の場合)、書き込み可能なエレメント数 (I<wbox_stat> の場合) である。"
4372
4373 #. type: TP
4374 #: build/C/man7/spufs.7:338
4375 #, no-wrap
4376 msgid "I</npc>, I</decr>, I</decr_status>, I</spu_tag_mask>, I</event_mask>, I</event_status>, I</srr0>, I</lslr>"
4377 msgstr ""
4378 "I</npc>, I</decr>, I</decr_status>, I</spu_tag_mask>, I</event_mask>,\n"
4379 "I</event_status>, I</srr0>, I</lslr>"
4380
4381 #. type: Plain text
4382 #: build/C/man7/spufs.7:350
4383 msgid "Internal registers of the SPU.  These files contain an ASCII string representing the hex value of the specified register.  Reads and writes on these files (except for I<npc>, see below) require that the SPU context be scheduled out, so frequent access to these files is not recommended for normal program operation."
4384 msgstr ""
4385
4386 #. type: Plain text
4387 #: build/C/man7/spufs.7:352
4388 msgid "The contents of these files are:"
4389 msgstr "これらのファイルの内容は以下の通り。"
4390
4391 #. type: TP
4392 #: build/C/man7/spufs.7:353
4393 #, no-wrap
4394 msgid "I<npc>"
4395 msgstr "I<npc>"
4396
4397 #. type: Plain text
4398 #: build/C/man7/spufs.7:356
4399 msgid "Next Program Counter - valid only when the SPU is in a stopped state."
4400 msgstr ""
4401
4402 #. type: TP
4403 #: build/C/man7/spufs.7:356
4404 #, no-wrap
4405 msgid "I<decr>"
4406 msgstr "I<decr>"
4407
4408 #. type: Plain text
4409 #: build/C/man7/spufs.7:359
4410 msgid "SPU Decrementer"
4411 msgstr "SPU Decrementer"
4412
4413 #. type: TP
4414 #: build/C/man7/spufs.7:359
4415 #, no-wrap
4416 msgid "I<decr_status>"
4417 msgstr "I<decr_status>"
4418
4419 #. type: Plain text
4420 #: build/C/man7/spufs.7:362
4421 msgid "Decrementer Status"
4422 msgstr "Decrementer の状態"
4423
4424 #. type: TP
4425 #: build/C/man7/spufs.7:362
4426 #, no-wrap
4427 msgid "I<spu_tag_mask>"
4428 msgstr "I<spu_tag_mask>"
4429
4430 #. type: Plain text
4431 #: build/C/man7/spufs.7:365
4432 msgid "MFC tag mask for SPU DMA"
4433 msgstr "SPU の DMA 用の MFA タグマスク"
4434
4435 #. type: TP
4436 #: build/C/man7/spufs.7:365
4437 #, no-wrap
4438 msgid "I<event_mask>"
4439 msgstr "I<event_mask>"
4440
4441 #. type: Plain text
4442 #: build/C/man7/spufs.7:368
4443 msgid "Event mask for SPU interrupts"
4444 msgstr "SPU の割り込みのイベントマスク"
4445
4446 #. type: TP
4447 #: build/C/man7/spufs.7:368
4448 #, no-wrap
4449 msgid "I<event_status>"
4450 msgstr "I<event_status>"
4451
4452 #. type: Plain text
4453 #: build/C/man7/spufs.7:371
4454 msgid "Number of SPU events pending (read-only)"
4455 msgstr ""
4456
4457 #. type: TP
4458 #: build/C/man7/spufs.7:371
4459 #, no-wrap
4460 msgid "I<srr0>"
4461 msgstr "I<srr0>"
4462
4463 #. type: Plain text
4464 #: build/C/man7/spufs.7:374
4465 msgid "Interrupt Return address register"
4466 msgstr "割り込みリターンアドレスレジスター"
4467
4468 #. type: TP
4469 #: build/C/man7/spufs.7:374
4470 #, no-wrap
4471 msgid "I<lslr>"
4472 msgstr ""
4473
4474 #. type: Plain text
4475 #: build/C/man7/spufs.7:377
4476 msgid "Local Store Limit Register"
4477 msgstr ""
4478
4479 #. type: Plain text
4480 #: build/C/man7/spufs.7:380
4481 msgid "The possible operations on these files are:"
4482 msgstr "これらのファイルに対して可能な操作は以下である。"
4483
4484 #. type: Plain text
4485 #: build/C/man7/spufs.7:388
4486 msgid "Reads the current register value.  If the register value is larger than the buffer passed to the B<read>(2)  system call, subsequent reads will continue reading from the same buffer, until the end of the buffer is reached."
4487 msgstr ""
4488
4489 #. type: Plain text
4490 #: build/C/man7/spufs.7:392
4491 msgid "When a complete string has been read, all subsequent read operations will return zero bytes and a new file descriptor needs to be opened to read a new value."
4492 msgstr ""
4493
4494 #. type: Plain text
4495 #: build/C/man7/spufs.7:402 build/C/man7/spufs.7:537
4496 msgid "A B<write>(2)  operation on the file sets the register to the value given in the string.  The string is parsed from the beginning until the first nonnumeric character or the end of the buffer.  Subsequent writes to the same file descriptor overwrite the previous setting."
4497 msgstr "このファイルへの B<write>(2)  操作はレジスター値を文字列で指定された値に設定する。 文字列の解釈は先頭から開始され、数字以外の文字が初めて登場するか、 バッファーの末尾に達するまで行われる。 同じファイルディスクリプターへ続けて write を行うと、 後の write により前の設定が上書きされる。"
4498
4499 #. type: Plain text
4500 #: build/C/man7/spufs.7:409
4501 msgid "Except for the I<npc> file, these files are not present on contexts that have been created with the B<SPU_CREATE_NOSCHED> flag."
4502 msgstr ""
4503
4504 #. type: TP
4505 #: build/C/man7/spufs.7:410
4506 #, no-wrap
4507 msgid "I</fpcr>"
4508 msgstr "I</fpcr>"
4509
4510 #. type: Plain text
4511 #: build/C/man7/spufs.7:417
4512 msgid "This file provides access to the Floating Point Status and Control Register (fcpr) as a binary, four-byte file.  The operations on the I<fpcr> file are:"
4513 msgstr ""
4514 "このファイルにより Floating Point Status and Control Register (fcpr) に\n"
4515 "アクセスできる。このファイルはバイナリで、大きさは 4 バイトである。 \n"
4516 "I<fpcr> ファイルに可能な操作は以下である。"
4517
4518 #. type: Plain text
4519 #: build/C/man7/spufs.7:432
4520 msgid "If I<count> is smaller than four, B<read>(2)  returns -1 and sets I<errno> to B<EINVAL>.  Otherwise, a four-byte value is placed in the data buffer; this is the current value of the I<fpcr> register."
4521 msgstr "I<count> が 4 より小さい場合、 B<read>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 それ以外の場合、データバッファーに 4 バイトの値が書き込まれる。 書き込まれる値は I<fpcr> レジスターの現在の値である。"
4522
4523 #. type: Plain text
4524 #: build/C/man7/spufs.7:446
4525 msgid "If I<count> is smaller than four, B<write>(2)  returns -1 and sets I<errno> to B<EINVAL>.  Otherwise, a four-byte value is copied from the data buffer, updating the value of the I<fpcr> register."
4526 msgstr "I<count> が 4 より小さい場合、 B<write>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 それ以外の場合、 4 バイトの値がデータバッファーからコピーされ、 I<fpcr> レジスターの値が更新される。"
4527
4528 #. type: TP
4529 #: build/C/man7/spufs.7:447
4530 #, no-wrap
4531 msgid "I</signal1>, I</signal2>"
4532 msgstr "I</signal1>, I</signal2>"
4533
4534 #. type: Plain text
4535 #: build/C/man7/spufs.7:462
4536 msgid "The files provide access to the two signal notification channels of an SPU.  These are read-write files that operate on four-byte words.  Writing to one of these files triggers an interrupt on the SPU.  The value written to the signal files can be read from the SPU through a channel read or from host user space through the file.  After the value has been read by the SPU, it is reset to zero.  The possible operations on an open I<signal1> or I<signal2> file are:"
4537 msgstr ""
4538 "これらのファイルにより SPU の二つのシグナル通知チャネル (signal\n"
4539 "notification channel) に アクセスできる。これらは 4 バイトワード単位の\n"
4540 "読み書きができる。これらのファイルの一つに書き込みを行うと、その SPU の\n"
4541 "割り込みが 発生するトリガーとなる。シグナルファイルへ書き込まれた値は、\n"
4542 "チャネル経由で SPU で読み出したり、このファイル経由でホストのユーザー空間\n"
4543 "で読み出したりできる。 SPU が値を読み出した後では、値は 0 にリセット\n"
4544 "される。オープンされた I<signal1> や I<signal2> ファイルに可能な操作は\n"
4545 "以下である。"
4546
4547 #. type: Plain text
4548 #: build/C/man7/spufs.7:476
4549 msgid "If I<count> is smaller than four, B<read>(2)  returns -1 and sets I<errno> to B<EINVAL>.  Otherwise, a four-byte value is placed in the data buffer; this is the current value of the specified signal notification register."
4550 msgstr "I<count> が 4 より小さい場合、 B<read>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 それ以外の場合、データバッファーに 4 バイトの値が書き込まれる。 書き込まれる値は、指定されたシグナル通知レジスターの現在の値である。"
4551
4552 #. type: Plain text
4553 #: build/C/man7/spufs.7:497
4554 msgid "If I<count> is smaller than four, B<write>(2)  returns -1 and sets I<errno> to B<EINVAL>.  Otherwise, a four-byte value is copied from the data buffer, updating the value of the specified signal notification register.  The signal notification register will either be replaced with the input data or will be updated to the bitwise OR operation of the old value and the input data, depending on the contents of the I<signal1_type> or I<signal2_type> files respectively."
4555 msgstr "I<count> が 4 より小さい場合、 B<write>(2)  は -1 を返し、 I<errno> を B<EINVAL> に設定する。 それ以外の場合、 4 バイトの値がデータバッファーからコピーされ、 指定されたシグナル通知レジスターの値が更新される。 シグナル通知レジスターの更新には、レジスター値を入力データで置き換えるモードと 以前の値と入力データのビット単位の OR をとった値に更新するモードがある。 どちらのモードになるかは、それぞれ I<signal1_type>, I<signal2_type> ファイルの内容によって決まる。"
4556
4557 #. type: TP
4558 #: build/C/man7/spufs.7:498
4559 #, no-wrap
4560 msgid "I</signal1_type>, I</signal2_type>"
4561 msgstr "I</signal1_type>, I</signal2_type>"
4562
4563 #. type: Plain text
4564 #: build/C/man7/spufs.7:516
4565 msgid "These two files change the behavior of the I<signal1> and I<signal2> notification files.  They contain a numeric ASCII string which is read as either \"1\" or \"0\".  In mode 0 (overwrite), the hardware replaces the contents of the signal channel with the data that is written to it.  In mode 1 (logical OR), the hardware accumulates the bits that are subsequently written to it.  The possible operations on an open I<signal1_type> or I<signal2_type> file are:"
4566 msgstr "これらのファイルは、シグナル通知ファイル I<signal1> と I<signal2> の動作を変更する。 これらのファイルは数値を表すアスキー文字列を保持し、 読み出すと \"1\" か \"0\" のどちらかが得られる。 モード 0 (上書きモード) では、ハードウェアはシグナルチャネルの内容を シグナルチャネルに書き込まれたデータで置き換える。 モード 1 (論理 OR モード) では、ハードウェアはシグナルチャネルに 書き込まれたビットを積算していく。 オープンされた I<signal1_type> や I<signal2_type> ファイルに可能な操作は以下である。"
4567
4568 #. type: Plain text
4569 #: build/C/man7/spufs.7:527
4570 msgid "When the count supplied to the B<read>(2)  call is shorter than the required length for the digit (plus a newline character), subsequent reads from the same file descriptor will complete the string.  When a complete string has been read, all subsequent read operations will return zero bytes and a new file descriptor needs to be opened to read the value again."
4571 msgstr ""
4572 "B<read>(2) に渡された I<count> がレジスターの数値 (と改行 (newline) 文字\n"
4573 "1 個) を格納するのに必要な長さより 短い場合、同じファイルディスクリプター\n"
4574 "を続けて read することで、文字列全体を読み出すことができる。文字列全体\n"
4575 "が読み出されると、それ以降の read 操作では 0 バイトが返され、新しい値を\n"
4576 "読み出すには新しいファイルディスクリプターをオープンする必要がある。"
4577
4578 #. type: TP
4579 #: build/C/man7/spufs.7:538
4580 #, no-wrap
4581 msgid "I</mbox_info>, I</ibox_info>, I</wbox_info>, I</dma_into>, I</proxydma_info>"
4582 msgstr "I</mbox_info>, I</ibox_info>, I</wbox_info>, I</dma_into>, I</proxydma_info>"
4583
4584 #. type: Plain text
4585 #: build/C/man7/spufs.7:557
4586 msgid "Read-only files that contain the saved state of the SPU mailboxes and DMA queues.  This allows the SPU status to be inspected, mainly for debugging.  The I<mbox_info> and I<ibox_info> files each contain the four-byte mailbox message that has been written by the SPU.  If no message has been written to these mailboxes, then contents of these files is undefined.  The I<mbox_stat>, I<ibox_stat> and I<wbox_stat> files contain the available message count."
4587 msgstr ""
4588
4589 #. type: Plain text
4590 #: build/C/man7/spufs.7:566
4591 msgid "The I<wbox_info> file contains an array of four-byte mailbox messages, which have been sent to the SPU.  With current CBEA machines, the array is four items in length, so up to 4 * 4 = 16 bytes can be read from this file.  If any mailbox queue entry is empty, then the bytes read at the corresponding location are undefined."
4592 msgstr ""
4593
4594 #. type: Plain text
4595 #: build/C/man7/spufs.7:571
4596 msgid "The I<dma_info> file contains the contents of the SPU MFC DMA queue, represented as the following structure:"
4597 msgstr ""
4598
4599 #. type: Plain text
4600 #: build/C/man7/spufs.7:582
4601 #, no-wrap
4602 msgid ""
4603 "struct spu_dma_info {\n"
4604 "    uint64_t         dma_info_type;\n"
4605 "    uint64_t         dma_info_mask;\n"
4606 "    uint64_t         dma_info_status;\n"
4607 "    uint64_t         dma_info_stall_and_notify;\n"
4608 "    uint64_t         dma_info_atomic_command_status;\n"
4609 "    struct mfc_cq_sr dma_info_command_data[16];\n"
4610 "};\n"
4611 msgstr ""
4612 "struct spu_dma_info {\n"
4613 "    uint64_t         dma_info_type;\n"
4614 "    uint64_t         dma_info_mask;\n"
4615 "    uint64_t         dma_info_status;\n"
4616 "    uint64_t         dma_info_stall_and_notify;\n"
4617 "    uint64_t         dma_info_atomic_command_status;\n"
4618 "    struct mfc_cq_sr dma_info_command_data[16];\n"
4619 "};\n"
4620
4621 #. type: Plain text
4622 #: build/C/man7/spufs.7:590
4623 msgid "The last member of this data structure is the actual DMA queue, containing 16 entries.  The I<mfc_cq_sr> structure is defined as:"
4624 msgstr ""
4625
4626 #. type: Plain text
4627 #: build/C/man7/spufs.7:599
4628 #, no-wrap
4629 msgid ""
4630 "struct mfc_cq_sr {\n"
4631 "    uint64_t mfc_cq_data0_RW;\n"
4632 "    uint64_t mfc_cq_data1_RW;\n"
4633 "    uint64_t mfc_cq_data2_RW;\n"
4634 "    uint64_t mfc_cq_data3_RW;\n"
4635 "};\n"
4636 msgstr ""
4637 "struct mfc_cq_sr {\n"
4638 "    uint64_t mfc_cq_data0_RW;\n"
4639 "    uint64_t mfc_cq_data1_RW;\n"
4640 "    uint64_t mfc_cq_data2_RW;\n"
4641 "    uint64_t mfc_cq_data3_RW;\n"
4642 "};\n"
4643
4644 #. type: Plain text
4645 #: build/C/man7/spufs.7:607
4646 msgid "The I<proxydma_info> file contains similar information, but describes the proxy DMA queue (i.e., DMAs initiated by entities outside the SPU) instead.  The file is in the following format:"
4647 msgstr ""
4648
4649 #. type: Plain text
4650 #: build/C/man7/spufs.7:616
4651 #, no-wrap
4652 msgid ""
4653 "struct spu_proxydma_info {\n"
4654 "    uint64_t         proxydma_info_type;\n"
4655 "    uint64_t         proxydma_info_mask;\n"
4656 "    uint64_t         proxydma_info_status;\n"
4657 "    struct mfc_cq_sr proxydma_info_command_data[8];\n"
4658 "};\n"
4659 msgstr ""
4660 "struct spu_proxydma_info {\n"
4661 "    uint64_t         proxydma_info_type;\n"
4662 "    uint64_t         proxydma_info_mask;\n"
4663 "    uint64_t         proxydma_info_status;\n"
4664 "    struct mfc_cq_sr proxydma_info_command_data[8];\n"
4665 "};\n"
4666
4667 #. type: Plain text
4668 #: build/C/man7/spufs.7:622
4669 msgid "Accessing these files requires that the SPU context is scheduled out - frequent use can be inefficient.  These files should not be used for normal program operation."
4670 msgstr ""
4671
4672 #. type: Plain text
4673 #: build/C/man7/spufs.7:626
4674 msgid "These files are not present on contexts that have been created with the B<SPU_CREATE_NOSCHED> flag."
4675 msgstr ""
4676
4677 #. type: TP
4678 #: build/C/man7/spufs.7:626
4679 #, no-wrap
4680 msgid "I</cntl>"
4681 msgstr "I</cntl>"
4682
4683 #. type: Plain text
4684 #: build/C/man7/spufs.7:631
4685 msgid "This file provides access to the SPU Run Control and SPU status registers, as an ASCII string.  The following operations are supported:"
4686 msgstr ""
4687
4688 #. type: Plain text
4689 #: build/C/man7/spufs.7:638
4690 msgid "Reads from the I<cntl> file will return an ASCII string with the hex value of the SPU Status register."
4691 msgstr ""
4692
4693 #. type: Plain text
4694 #: build/C/man7/spufs.7:643
4695 msgid "Writes to the I<cntl> file will set the context's SPU Run Control register."
4696 msgstr ""
4697
4698 #. type: TP
4699 #: build/C/man7/spufs.7:644
4700 #, no-wrap
4701 msgid "I</mfc>"
4702 msgstr "I</mfc>"
4703
4704 #. type: Plain text
4705 #: build/C/man7/spufs.7:651
4706 msgid "Provides access to the Memory Flow Controller of the SPU.  Reading from the file returns the contents of the SPU's MFC Tag Status register, and writing to the file initiates a DMA from the MFC.  The following operations are supported:"
4707 msgstr ""
4708
4709 #. type: Plain text
4710 #: build/C/man7/spufs.7:656
4711 msgid "Writes to this file need to be in the format of a MFC DMA command, defined as follows:"
4712 msgstr ""
4713
4714 #. type: Plain text
4715 #: build/C/man7/spufs.7:668
4716 #, no-wrap
4717 msgid ""
4718 "struct mfc_dma_command {\n"
4719 "    int32_t  pad;    /* reserved */\n"
4720 "    uint32_t lsa;    /* local storage address */\n"
4721 "    uint64_t ea;     /* effective address */\n"
4722 "    uint16_t size;   /* transfer size */\n"
4723 "    uint16_t tag;    /* command tag */\n"
4724 "    uint16_t class;  /* class ID */\n"
4725 "    uint16_t cmd;    /* command opcode */\n"
4726 "};\n"
4727 msgstr ""
4728 "struct mfc_dma_command {\n"
4729 "    int32_t  pad;    /* reserved */\n"
4730 "    uint32_t lsa;    /* local storage address */\n"
4731 "    uint64_t ea;     /* effective address */\n"
4732 "    uint16_t size;   /* transfer size */\n"
4733 "    uint16_t tag;    /* command tag */\n"
4734 "    uint16_t class;  /* class ID */\n"
4735 "    uint16_t cmd;    /* command opcode */\n"
4736 "};\n"
4737
4738 #. type: Plain text
4739 #: build/C/man7/spufs.7:676
4740 msgid "Writes are required to be exactly I<sizeof(struct mfc_dma_command)> bytes in size.  The command will be sent to the SPU's MFC proxy queue, and the tag stored in the kernel (see below)."
4741 msgstr ""
4742
4743 #. type: Plain text
4744 #: build/C/man7/spufs.7:685
4745 msgid "Reads the contents of the tag status register.  If the file is opened in blocking mode (i.e., without B<O_NONBLOCK>), then the read will block until a DMA tag (as performed by a previous write) is complete.  In nonblocking mode, the MFC tag status register will be returned without waiting."
4746 msgstr ""
4747
4748 #. type: Plain text
4749 #: build/C/man7/spufs.7:698
4750 msgid "Calling B<poll>(2)  on the I<mfc> file will block until a new DMA can be started (by checking for B<POLLOUT>)  or until a previously started DMA (by checking for B<POLLIN>)  has been completed."
4751 msgstr ""
4752
4753 #. type: Plain text
4754 #: build/C/man7/spufs.7:704
4755 msgid "I</mss> Provides access to the MFC MultiSource Synchronization (MSS) facility.  By B<mmap>(2)-ing this file, processes can access the MSS area of the SPU."
4756 msgstr ""
4757
4758 #. type: Plain text
4759 #: build/C/man7/spufs.7:706 build/C/man7/spufs.7:724
4760 msgid "The following operations are supported:"
4761 msgstr ""
4762
4763 #. type: Plain text
4764 #: build/C/man7/spufs.7:715
4765 msgid "Mapping B<mss> into the process address space gives access to the SPU MSS area within the process address space.  Only B<MAP_SHARED> mappings are allowed."
4766 msgstr ""
4767 "I<mss> をプロセスのアドレス空間にマッピングすると、プロセスのアドレス空\n"
4768 "間の一部として SPU の MSS 領域にアクセスできるようになる。\n"
4769 "許可されているマッピングは B<MAP_SHARED> だけである。"
4770
4771 #. type: TP
4772 #: build/C/man7/spufs.7:716
4773 #, no-wrap
4774 msgid "I</psmap>"
4775 msgstr "I</psmap>"
4776
4777 #. type: Plain text
4778 #: build/C/man7/spufs.7:722
4779 msgid "Provides access to the whole problem-state mapping of the SPU.  Applications can use this area to interface to the SPU, rather than writing to individual register files in B<spufs>."
4780 msgstr ""
4781
4782 #. type: Plain text
4783 #: build/C/man7/spufs.7:733
4784 msgid "Mapping B<psmap> gives a process a direct map of the SPU problem state area.  Only B<MAP_SHARED> mappings are supported."
4785 msgstr ""
4786 "I<psmap> をプロセスのアドレス空間にマッピングすると、\n"
4787 "SPU の problem state 領域に直接アクセスできるようになる。\n"
4788 "許可されているマッピングは B<MAP_SHARED> だけである。"
4789
4790 #. type: TP
4791 #: build/C/man7/spufs.7:734
4792 #, no-wrap
4793 msgid "I</phys-id>"
4794 msgstr "I</phys-id>"
4795
4796 #. type: Plain text
4797 #: build/C/man7/spufs.7:740
4798 msgid "Read-only file containing the physical SPU number that the SPU context is running on.  When the context is not running, this file contains the string \"-1\"."
4799 msgstr ""
4800
4801 #. type: Plain text
4802 #: build/C/man7/spufs.7:742
4803 msgid "The physical SPU number is given by an ASCII hex string."
4804 msgstr ""
4805
4806 #. type: TP
4807 #: build/C/man7/spufs.7:742
4808 #, no-wrap
4809 msgid "I</object-id>"
4810 msgstr "I</object-id>"
4811
4812 #. type: Plain text
4813 #: build/C/man7/spufs.7:748
4814 msgid "Allows applications to store (or retrieve) a single 64-bit ID into the context.  This ID is later used by profiling tools to uniquely identify the context."
4815 msgstr ""
4816
4817 #. type: Plain text
4818 #: build/C/man7/spufs.7:754
4819 msgid "By writing an ASCII hex value into this file, applications can set the object ID of the SPU context.  Any previous value of the object ID is overwritten."
4820 msgstr ""
4821
4822 #. type: Plain text
4823 #: build/C/man7/spufs.7:758
4824 msgid "Reading this file gives an ASCII hex string representing the object ID for this SPU context."
4825 msgstr ""
4826
4827 #. type: TP
4828 #: build/C/man7/spufs.7:760
4829 #, no-wrap
4830 msgid "I</etc/fstab>  entry"
4831 msgstr "I</etc/fstab>  entry"
4832
4833 #.  .SH AUTHORS
4834 #.  Arnd Bergmann <arndb@de.ibm.com>, Mark Nutter <mnutter@us.ibm.com>,
4835 #.  Ulrich Weigand <Ulrich.Weigand@de.ibm.com>, Jeremy Kerr <jk@ozlabs.org>
4836 #. type: Plain text
4837 #: build/C/man7/spufs.7:766
4838 msgid "none \t/spu \tspufs \tgid=spu \t0\t0"
4839 msgstr "none \t/spu \tspufs \tgid=spu \t0\t0"
4840
4841 #. type: Plain text
4842 #: build/C/man7/spufs.7:771
4843 msgid "B<close>(2), B<spu_create>(2), B<spu_run>(2), B<capabilities>(7)"
4844 msgstr "B<close>(2), B<spu_create>(2), B<spu_run>(2), B<capabilities>(7)"
4845
4846 #. type: Plain text
4847 #: build/C/man7/spufs.7:773
4848 msgid "I<The Cell Broadband Engine Architecture (CBEA) specification>"
4849 msgstr ""
4850
4851 #. type: TH
4852 #: build/C/man2/stat.2:40
4853 #, no-wrap
4854 msgid "STAT"
4855 msgstr "STAT"
4856
4857 #. type: TH
4858 #: build/C/man2/stat.2:40
4859 #, no-wrap
4860 msgid "2014-08-19"
4861 msgstr "2014-08-19"
4862
4863 #. type: Plain text
4864 #: build/C/man2/stat.2:43
4865 msgid "stat, fstat, lstat, fstatat - get file status"
4866 msgstr "stat, fstat, lstat, fstatat - ファイルの状態を取得する"
4867
4868 #. type: Plain text
4869 #: build/C/man2/stat.2:46 build/C/man2/ustat.2:36
4870 #, no-wrap
4871 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
4872 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
4873
4874 #. type: Plain text
4875 #: build/C/man2/stat.2:48
4876 #, no-wrap
4877 msgid "B<#include E<lt>sys/stat.hE<gt>>\n"
4878 msgstr "B<#include E<lt>sys/stat.hE<gt>>\n"
4879
4880 #. type: Plain text
4881 #: build/C/man2/stat.2:50
4882 #, no-wrap
4883 msgid "B<#include E<lt>unistd.hE<gt>>\n"
4884 msgstr "B<#include E<lt>unistd.hE<gt>>\n"
4885
4886 #. type: Plain text
4887 #: build/C/man2/stat.2:52
4888 #, no-wrap
4889 msgid "B<int stat(const char *>I<pathname>B<, struct stat *>I<buf>B<);>\n"
4890 msgstr "B<int stat(const char *>I<pathname>B<, struct stat *>I<buf>B<);>\n"
4891
4892 #. type: Plain text
4893 #: build/C/man2/stat.2:54
4894 #, no-wrap
4895 msgid "B<int fstat(int >I<fd>B<, struct stat *>I<buf>B<);>\n"
4896 msgstr "B<int fstat(int >I<fd>B<, struct stat *>I<buf>B<);>\n"
4897
4898 #. type: Plain text
4899 #: build/C/man2/stat.2:56
4900 #, no-wrap
4901 msgid "B<int lstat(const char *>I<pathname>B<, struct stat *>I<buf>B<);>\n"
4902 msgstr "B<int lstat(const char *>I<pathname>B<, struct stat *>I<buf>B<);>\n"
4903
4904 #. type: Plain text
4905 #: build/C/man2/stat.2:59
4906 #, no-wrap
4907 msgid ""
4908 "B<#include E<lt>fcntl.hE<gt>           >/* Definition of AT_* constants */\n"
4909 "B<#include E<lt>sys/stat.hE<gt>>\n"
4910 msgstr ""
4911 "B<#include E<lt>fcntl.hE<gt>           >/* AT_* 定数の定義 */\n"
4912 "B<#include E<lt>sys/stat.hE<gt>>\n"
4913
4914 #. type: Plain text
4915 #: build/C/man2/stat.2:63
4916 #, no-wrap
4917 msgid ""
4918 "B<int fstatat(int >I<dirfd>B<, const char *>I<pathname>B<, struct stat *>I<buf>B<,>\n"
4919 "B<            int >I<flags>B<);>\n"
4920 msgstr ""
4921 "B<int fstatat(int >I<dirfd>B<, const char *>I<pathname>B<, struct stat *>I<buf>B<,>\n"
4922 "B<            int >I<flags>B<);>\n"
4923
4924 #. type: Plain text
4925 #: build/C/man2/stat.2:73
4926 msgid "B<lstat>():"
4927 msgstr "B<lstat>():"
4928
4929 #. type: Plain text
4930 #: build/C/man2/stat.2:75
4931 msgid "/* glibc 2.19 and earlier */ _BSD_SOURCE ||"
4932 msgstr "/* glibc 2.19 以前 */ _BSD_SOURCE ||"
4933
4934 #. type: Plain text
4935 #: build/C/man2/stat.2:77
4936 msgid "/* Since glibc 2.20 */_DEFAULT_SOURCE ||"
4937 msgstr "/* glibc 2.20 以降 */_DEFAULT_SOURCE ||"
4938
4939 #. type: Plain text
4940 #: build/C/man2/stat.2:80
4941 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4942 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
4943
4944 #. type: Plain text
4945 #: build/C/man2/stat.2:82
4946 msgid "|| /* Since glibc 2.10: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4947 msgstr "|| /* glibc 2.10 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
4948
4949 #. type: Plain text
4950 #: build/C/man2/stat.2:85
4951 msgid "B<fstatat>():"
4952 msgstr "B<fstatat>():"
4953
4954 #. type: TP
4955 #: build/C/man2/stat.2:88
4956 #, no-wrap
4957 msgid "Since glibc 2.10:"
4958 msgstr "glibc 2.10 以降:"
4959
4960 #. type: Plain text
4961 #: build/C/man2/stat.2:91
4962 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
4963 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
4964
4965 #. type: TP
4966 #: build/C/man2/stat.2:91
4967 #, no-wrap
4968 msgid "Before glibc 2.10:"
4969 msgstr "glibc 2.10 より前:"
4970
4971 #. type: Plain text
4972 #: build/C/man2/stat.2:94
4973 msgid "_ATFILE_SOURCE"
4974 msgstr "_ATFILE_SOURCE"
4975
4976 #. type: Plain text
4977 #: build/C/man2/stat.2:109
4978 msgid "These functions return information about a file, in the buffer pointed to by I<stat>.  No permissions are required on the file itself, but\\(emin the case of B<stat>(), B<fstatat>(), and B<lstat>()\\(emexecute (search) permission is required on all of the directories in I<pathname> that lead to the file."
4979 msgstr "これらの関数は、ファイルについての情報を I<stat> が指すバッファーに格納して返す。 ファイルそのものに対するアクセス許可は必要としないが、 \\(emB<stat>(), B<fstatat>(), B<lstat>() の場合には \\(emそのファイルへ至る I<pathname> を構成する全てのディレクトリに対する実行 (検索) 許可が必要である。"
4980
4981 #. type: Plain text
4982 #: build/C/man2/stat.2:118
4983 msgid "B<stat>()  and B<fstatat>()  retrieve information about the file pointed to by I<pathname>; the differences for B<fstatat>()  are described below."
4984 msgstr "B<stat>() と B<fstatat>() は I<pathname> が指すファイルに関する情報を取得する。 B<fstatat>() の違いについては後で説明する。"
4985
4986 #. type: Plain text
4987 #: build/C/man2/stat.2:126
4988 msgid "B<lstat>()  is identical to B<stat>(), except that if I<pathname> is a symbolic link, then it returns information about the link itself, not the file that it refers to."
4989 msgstr "B<lstat>()  は B<stat>()  と同じであるが、 I<pathnames> がシンボリックリンクの場合、リンクが参照しているファイルではなく、 リンク自身の状態を返す点が異なる。"
4990
4991 #. type: Plain text
4992 #: build/C/man2/stat.2:133
4993 msgid "B<fstat>()  is identical to B<stat>(), except that the file about which information is to be retrieved is specified by the file descriptor I<fd>."
4994 msgstr "B<fstat>()  は B<stat>()  と同じだが、 状態を取得するファイルをファイルディスクリプター I<fd> で指定する点が異なる。"
4995
4996 #. type: Plain text
4997 #: build/C/man2/stat.2:137
4998 msgid "All of these system calls return a I<stat> structure, which contains the following fields:"
4999 msgstr "これらのシステムコールはいずれも、結果を I<stat> 構造体に入れて返す。 I<stat> 構造体には以下のフィールドが含まれている:"
5000
5001 #. type: Plain text
5002 #: build/C/man2/stat.2:151
5003 #, no-wrap
5004 msgid ""
5005 "struct stat {\n"
5006 "    dev_t     st_dev;         /* ID of device containing file */\n"
5007 "    ino_t     st_ino;         /* inode number */\n"
5008 "    mode_t    st_mode;        /* protection */\n"
5009 "    nlink_t   st_nlink;       /* number of hard links */\n"
5010 "    uid_t     st_uid;         /* user ID of owner */\n"
5011 "    gid_t     st_gid;         /* group ID of owner */\n"
5012 "    dev_t     st_rdev;        /* device ID (if special file) */\n"
5013 "    off_t     st_size;        /* total size, in bytes */\n"
5014 "    blksize_t st_blksize;     /* blocksize for filesystem I/O */\n"
5015 "    blkcnt_t  st_blocks;      /* number of 512B blocks allocated */\n"
5016 msgstr ""
5017 "struct stat {\n"
5018 "    dev_t     st_dev;     /* ファイルがあるデバイスの ID */\n"
5019 "    ino_t     st_ino;     /* inode 番号 */\n"
5020 "    mode_t    st_mode;    /* アクセス保護 */\n"
5021 "    nlink_t   st_nlink;   /* ハードリンクの数 */\n"
5022 "    uid_t     st_uid;     /* 所有者のユーザー ID */\n"
5023 "    gid_t     st_gid;     /* 所有者のグループ ID */\n"
5024 "    dev_t     st_rdev;    /* デバイス ID (特殊ファイルの場合) */\n"
5025 "    off_t     st_size;    /* 全体のサイズ (バイト単位) */\n"
5026 "    blksize_t st_blksize; /* ファイルシステム I/O での\n"
5027 "                             ブロックサイズ */\n"
5028 "    blkcnt_t  st_blocks;  /* 割り当てられた 512B のブロック数 */\n"
5029 "};\n"
5030
5031 #. type: Plain text
5032 #: build/C/man2/stat.2:155
5033 #, no-wrap
5034 msgid ""
5035 "    /* Since Linux 2.6, the kernel supports nanosecond\n"
5036 "       precision for the following timestamp fields.\n"
5037 "       For the details before Linux 2.6, see NOTES. */\n"
5038 msgstr ""
5039 "    /* Linux 2.6 以降では、カーネルは以下のタイムスタンプ\n"
5040 "       フィールドでナノ秒の精度をサポートしている。\n"
5041 "       Linux 2.6 より前のバージョンでの詳細は\n"
5042 "       下記の「注意」を参照。 */\n"
5043
5044 #. type: Plain text
5045 #: build/C/man2/stat.2:159
5046 #, no-wrap
5047 msgid ""
5048 "    struct timespec st_atim;  /* time of last access */\n"
5049 "    struct timespec st_mtim;  /* time of last modification */\n"
5050 "    struct timespec st_ctim;  /* time of last status change */\n"
5051 msgstr ""
5052 "    struct timespec st_atim;  /* 最終アクセス時刻 */\n"
5053 "    struct timespec st_mtim;  /* 最終修正時刻 */\n"
5054 "    struct timespec st_ctim;  /* 最終状態変更時刻 */\n"
5055
5056 #. type: Plain text
5057 #: build/C/man2/stat.2:164
5058 #, no-wrap
5059 msgid ""
5060 "#define st_atime st_atim.tv_sec      /* Backward compatibility */\n"
5061 "#define st_mtime st_mtim.tv_sec\n"
5062 "#define st_ctime st_ctim.tv_sec\n"
5063 "};\n"
5064 msgstr ""
5065 "#define st_atime st_atim.tv_sec      /* 後方互換性 */\n"
5066 "#define st_mtime st_mtim.tv_sec\n"
5067 "#define st_ctime st_ctim.tv_sec\n"
5068 "};\n"
5069
5070 #. type: Plain text
5071 #: build/C/man2/stat.2:177
5072 msgid "I<Note:> the order of fields in the I<stat> structure varies somewhat across architectures.  In addition, the definition above does not show the padding bytes that may be present between some fields on various architectures.  Consult the the glibc and kernel source code if you need to know the details."
5073 msgstr "I<注意:> I<stat> 構造体のフィールドの順序はアーキテクチャーにより様々である。 また、上記の定義では、フィールド間に存在することがあるパディングバイトは書かれていない。このパディングバイトはアーキテクチャーによっても異なる。詳細を知る必要がある場合は glibc とカーネルのソースを調べてほしい。"
5074
5075 #. type: Plain text
5076 #: build/C/man2/stat.2:186
5077 msgid "The I<st_dev> field describes the device on which this file resides.  (The B<major>(3)  and B<minor>(3)  macros may be useful to decompose the device ID in this field.)"
5078 msgstr "I<st_dev> フィールドは、このファイルが存在するデバイスを示す (マクロ B<major>(3), B<minor>(3)  は、このフィールドのデバイス ID を分解するのに役立つだろう)。"
5079
5080 #. type: Plain text
5081 #: build/C/man2/stat.2:190
5082 msgid "The I<st_rdev> field describes the device that this file (inode) represents."
5083 msgstr "I<st_rdev> フィールドは、このファイル (inode) が表すデバイスを示す。"
5084
5085 #. type: Plain text
5086 #: build/C/man2/stat.2:197
5087 msgid "The I<st_size> field gives the size of the file (if it is a regular file or a symbolic link) in bytes.  The size of a symbolic link is the length of the pathname it contains, without a terminating null byte."
5088 msgstr ""
5089 "I<st_size> フィールドは、(通常のファイルかシンボリックリンクの場合に)\n"
5090 "ファイルの大きさをバイト単位で示す。 シンボリックリンクの大きさは、\n"
5091 "シンボリックリンクに含まれている パス名の長さ (終端のヌルバイトは含まない)\n"
5092 "である。"
5093
5094 #. type: Plain text
5095 #: build/C/man2/stat.2:204
5096 msgid "The I<st_blocks> field indicates the number of blocks allocated to the file, 512-byte units.  (This may be smaller than I<st_size>/512 when the file has holes.)"
5097 msgstr "I<st_blocks> フィールドは、ファイルの大きさを 512 バイトのブロックサイズ単位で示す フィールドは、ファイルに割り当てされたブロック数を 512 バイト単位で示す。 (ファイルに穴があるような場合、この値は I<st_size>/512 より小さくなることもある)。"
5098
5099 #. type: Plain text
5100 #: build/C/man2/stat.2:210
5101 msgid "The I<st_blksize> field gives the \"preferred\" blocksize for efficient filesystem I/O.  (Writing to a file in smaller chunks may cause an inefficient read-modify-rewrite.)"
5102 msgstr "I<st_blksize> フィールドは、効率的にファイルシステム I/O ができる「好ましい」 ブロックサイズを示す (もっと小さい単位でファイルに書き込みを行うと、 読み出し--修正--再書き込みといった非効率な動作になってしまうかもしれない)。"
5103
5104 #. type: Plain text
5105 #: build/C/man2/stat.2:231
5106 msgid "Not all of the Linux filesystems implement all of the time fields.  Some filesystem types allow mounting in such a way that file and/or directory accesses do not cause an update of the I<st_atime> field.  (See I<noatime>, I<nodiratime>, and I<relatime> in B<mount>(8), and related information in B<mount>(2).)  In addition, I<st_atime> is not updated if a file is opened with the B<O_NOATIME>; see B<open>(2)."
5107 msgstr "全ての Linux のファイルシステムが全ての時間フィールドを 実装しているわけではない。 ファイルやディレクトリのアクセスが I<st_atime> フィールドを更新しないようなかたちでマウントできるファイルシステムもある。 (B<mount>(8)  の I<noatime>, I<nodiratime>, I<relatime> や B<mount>(2)  の関連する情報を参照)。 また、ファイルが B<O_NOATIME> 付きでオープンされている場合には I<st_atime> は更新されない。 B<open>(2)  参照。"
5108
5109 #. type: Plain text
5110 #: build/C/man2/stat.2:246
5111 msgid "The field I<st_atime> is changed by file accesses, for example, by B<execve>(2), B<mknod>(2), B<pipe>(2), B<utime>(2), and B<read>(2)  (of more than zero bytes).  Other routines, like B<mmap>(2), may or may not update I<st_atime>."
5112 msgstr "I<st_atime> フィールドはファイルアクセスがあった場合に変更される (例えば、 B<execve>(2), B<mknod>(2), B<pipe>(2), B<utime>(2)  を使用した場合や B<read>(2)  で 1 バイト以上読み込んだ場合など)。 B<mmap>(2)  などの他のルーチンでは、 I<st_atime> は更新されることもあれば、そうでない場合もある。"
5113
5114 #. type: Plain text
5115 #: build/C/man2/stat.2:265
5116 msgid "The field I<st_mtime> is changed by file modifications, for example, by B<mknod>(2), B<truncate>(2), B<utime>(2), and B<write>(2)  (of more than zero bytes).  Moreover, I<st_mtime> of a directory is changed by the creation or deletion of files in that directory.  The I<st_mtime> field is I<not> changed for changes in owner, group, hard link count, or mode."
5117 msgstr "I<st_mtime> フィールドは、ファイルが修正された場合に変更される (例えば、 B<mknod>(2), B<truncate>(2), B<utime>(2)  を使用した場合や B<write>(2)  で 1 バイト以上書き込みをした場合など)。 さらに、ディレクトリの I<st_mtime> は、そのディレクトリで ファイルが作成されたり削除されたりすると変更される。 I<st_mtime> フィールドは 所有者やグループやハードリンク数やモードの変更では変更 I<されない。>"
5118
5119 #. type: Plain text
5120 #: build/C/man2/stat.2:270
5121 msgid "The field I<st_ctime> is changed by writing or by setting inode information (i.e., owner, group, link count, mode, etc.)."
5122 msgstr "I<st_ctime> フィールドは書き込みや inode 情報 (所有者、グループ、リンク数、モードなど) の 設定によって変更される。"
5123
5124 #. type: Plain text
5125 #: build/C/man2/stat.2:274
5126 msgid "The following mask values are defined for the file type component of the I<st_mode> field:"
5127 msgstr "以下のマスク値が I<st_mode> フィールドのファイル種別の検査用に定義されている。"
5128
5129 #. type: tbl table
5130 #: build/C/man2/stat.2:277
5131 #, no-wrap
5132 msgid "S_IFMT\t0170000\tbit mask for the file type bit fields\n"
5133 msgstr "S_IFMT\t0170000\tファイル種別を示すビット領域を表すビットマスク\n"
5134
5135 #. type: tbl table
5136 #: build/C/man2/stat.2:279
5137 #, no-wrap
5138 msgid "S_IFSOCK\t0140000\tsocket\n"
5139 msgstr "S_IFSOCK\t0140000\tソケット\n"
5140
5141 #. type: tbl table
5142 #: build/C/man2/stat.2:280
5143 #, no-wrap
5144 msgid "S_IFLNK\t0120000\tsymbolic link\n"
5145 msgstr "S_IFLNK\t0120000\tシンボリックリンク\n"
5146
5147 #. type: tbl table
5148 #: build/C/man2/stat.2:281
5149 #, no-wrap
5150 msgid "S_IFREG\t0100000\tregular file\n"
5151 msgstr "S_IFREG\t0100000\t通常のファイル\n"
5152
5153 #. type: tbl table
5154 #: build/C/man2/stat.2:282
5155 #, no-wrap
5156 msgid "S_IFBLK\t0060000\tblock device\n"
5157 msgstr "S_IFBLK\t0060000\tブロックデバイス\n"
5158
5159 #. type: tbl table
5160 #: build/C/man2/stat.2:283
5161 #, no-wrap
5162 msgid "S_IFDIR\t0040000\tdirectory\n"
5163 msgstr "S_IFDIR\t0040000\tディレクトリ\n"
5164
5165 #. type: tbl table
5166 #: build/C/man2/stat.2:284
5167 #, no-wrap
5168 msgid "S_IFCHR\t0020000\tcharacter device\n"
5169 msgstr "S_IFCHR\t0020000\tキャラクターデバイス\n"
5170
5171 #. type: tbl table
5172 #: build/C/man2/stat.2:285
5173 #, no-wrap
5174 msgid "S_IFIFO\t0010000\tFIFO\n"
5175 msgstr "S_IFIFO\t0010000\tFIFO\n"
5176
5177 #. type: Plain text
5178 #: build/C/man2/stat.2:290
5179 msgid "Thus, to test for a regular file (for example), one could write:"
5180 msgstr "したがって、(例えば) 通常のファイルかどうかを検査するには、以下のようにすればよい。"
5181
5182 #. type: Plain text
5183 #: build/C/man2/stat.2:297
5184 #, no-wrap
5185 msgid ""
5186 "stat(pathname, &sb);\n"
5187 "if ((sb.st_mode & S_IFMT) == S_IFREG) {\n"
5188 "    /* Handle regular file */\n"
5189 "}\n"
5190 msgstr ""
5191 "stat(pathname, &sb);\n"
5192 "if ((sb.st_mode & S_IFMT) == S_IFREG) {\n"
5193 "    /* Handle regular file */\n"
5194 "}\n"
5195
5196 #. type: Plain text
5197 #: build/C/man2/stat.2:304
5198 msgid "Because tests of the above form are common, additional macros are defined by POSIX to allow the test of the file type in I<st_mode> to be written more concisely:"
5199 msgstr "上記の形の検査はよくあるので、 POSIX では以下のマクロが定義されており、 I<st_mode> のファイル種別の検査をより簡単に書けるようになっている。"
5200
5201 #. type: TP
5202 #: build/C/man2/stat.2:305
5203 #, no-wrap
5204 msgid "B<S_ISREG>(m)"
5205 msgstr "B<S_ISREG>(m)"
5206
5207 #. type: Plain text
5208 #: build/C/man2/stat.2:308
5209 msgid "is it a regular file?"
5210 msgstr "通常のファイルか?"
5211
5212 #. type: TP
5213 #: build/C/man2/stat.2:308
5214 #, no-wrap
5215 msgid "B<S_ISDIR>(m)"
5216 msgstr "B<S_ISDIR>(m)"
5217
5218 #. type: Plain text
5219 #: build/C/man2/stat.2:311
5220 msgid "directory?"
5221 msgstr "ディレクトリか?"
5222
5223 #. type: TP
5224 #: build/C/man2/stat.2:311
5225 #, no-wrap
5226 msgid "B<S_ISCHR>(m)"
5227 msgstr "B<S_ISCHR>(m)"
5228
5229 #. type: Plain text
5230 #: build/C/man2/stat.2:314
5231 msgid "character device?"
5232 msgstr "キャラクターデバイスか?"
5233
5234 #. type: TP
5235 #: build/C/man2/stat.2:314
5236 #, no-wrap
5237 msgid "B<S_ISBLK>(m)"
5238 msgstr "B<S_ISBLK>(m)"
5239
5240 #. type: Plain text
5241 #: build/C/man2/stat.2:317
5242 msgid "block device?"
5243 msgstr "ブロックデバイスか?"
5244
5245 #. type: TP
5246 #: build/C/man2/stat.2:317
5247 #, no-wrap
5248 msgid "B<S_ISFIFO>(m)"
5249 msgstr "B<S_ISFIFO>(m)"
5250
5251 #. type: Plain text
5252 #: build/C/man2/stat.2:320
5253 msgid "FIFO (named pipe)?"
5254 msgstr "FIFO (名前付きパイプ) か?"
5255
5256 #. type: TP
5257 #: build/C/man2/stat.2:320
5258 #, no-wrap
5259 msgid "B<S_ISLNK>(m)"
5260 msgstr "B<S_ISLNK>(m)"
5261
5262 #. type: Plain text
5263 #: build/C/man2/stat.2:323
5264 msgid "symbolic link? (Not in POSIX.1-1996.)"
5265 msgstr "シンボリックリンクか? (POSIX.1-1996 にはない)"
5266
5267 #. type: TP
5268 #: build/C/man2/stat.2:323
5269 #, no-wrap
5270 msgid "B<S_ISSOCK>(m)"
5271 msgstr "B<S_ISSOCK>(m)"
5272
5273 #. type: Plain text
5274 #: build/C/man2/stat.2:326
5275 msgid "socket? (Not in POSIX.1-1996.)"
5276 msgstr "ソケットか? (POSIX.1-1996 にはない)"
5277
5278 #. type: Plain text
5279 #: build/C/man2/stat.2:329
5280 msgid "The preceding code snippet could thus be rewritten as:"
5281 msgstr "上で挙げたコードは以下のように書き換えることができる。"
5282
5283 #. type: Plain text
5284 #: build/C/man2/stat.2:336
5285 #, no-wrap
5286 msgid ""
5287 "stat(pathname, &sb);\n"
5288 "if (S_ISREG(sb.st_mode)) {\n"
5289 "    /* Handle regular file */\n"
5290 "}\n"
5291 msgstr ""
5292 "stat(pathname, &sb);\n"
5293 "if (S_ISREG(sb.st_mode)) {\n"
5294 "    /* Handle regular file */\n"
5295 "}\n"
5296
5297 #. type: Plain text
5298 #: build/C/man2/stat.2:360
5299 msgid "The definitions of most of the above file type test macros are provided if any of the following feature test macros is defined: B<_BSD_SOURCE> (in glibc 2.19 and earlier), B<_SVID_SOURCE> (in glibc 2.19 and earlier), or B<_DEFAULT_SOURCE> (in glibc 2.20 and later).  In addition, definitions of all of the above macros except B<S_IFSOCK> and B<S_ISSOCK>()  are provided if B<_XOPEN_SOURCE> is defined.  The definition of B<S_IFSOCK> can also be exposed by defining B<_XOPEN_SOURCE> with a value of 500 or greater."
5300 msgstr "上記のほとんどのファイル種別検査マクロの定義は、 機能検査マクロ B<_BSD_SOURCE> (glibc 2.19 以前の場合)、 B<_SVID_SOURCE> (glibc 2.19 以前の場合)、 B<_DEFAULT_SOURCE> (glibc 2.20 以降の場合) のいずれかが定義されている場合に公開される。 さらに、 B<S_IFSOCK> と B<S_ISSOCK> 以外の上記のすべてのマクロの定義は B<_XOPEN_SOURCE> が定義されている場合にも公開される。 B<S_IFSOCK> の定義は B<_XOPEN_SOURCE> が値 500 以上で定義された場合にも公開される。"
5301
5302 #. type: Plain text
5303 #: build/C/man2/stat.2:372
5304 msgid "The definition of B<S_ISSOCK>()  is exposed if any of the following feature test macros is defined: B<_BSD_SOURCE> (in glibc 2.19 and earlier), B<_DEFAULT_SOURCE> (in glibc 2.20 and later), B<_XOPEN_SOURCE> with a value of 500 or greater, or B<_POSIX_C_SOURCE> with a value of 200112L or greater."
5305 msgstr "B<S_ISSOCK>() の定義が公開されるのは以下の機能検査マクロが定義されている場合である: B<_BSD_SOURCE> (glibc 2.19 以前の場合)、 B<_DEFAULT_SOURCE> (glibc 2.20 以降の場合)、 値 500 以上の B<_XOPEN_SOURCE>、 値が 200112L 以上の B<_POSIX_C_SOURCE>。"
5306
5307 #. type: Plain text
5308 #: build/C/man2/stat.2:377
5309 msgid "The following mask values are defined for the file permissions component of the I<st_mode> field:"
5310 msgstr "以下のマスク値が I<st_mode> フィールドのファイルのアクセス許可の検査用に定義されている。"
5311
5312 #. type: tbl table
5313 #: build/C/man2/stat.2:380
5314 #, no-wrap
5315 msgid "S_ISUID\t0004000\tset-user-ID bit\n"
5316 msgstr "S_ISUID\t0004000\tset-user-ID bit\n"
5317
5318 #. type: tbl table
5319 #: build/C/man2/stat.2:381
5320 #, no-wrap
5321 msgid "S_ISGID\t0002000\tset-group-ID bit (see below)\n"
5322 msgstr "S_ISGID\t0002000\tset-group-ID bit (下記参照)\n"
5323
5324 #. type: tbl table
5325 #: build/C/man2/stat.2:382
5326 #, no-wrap
5327 msgid "S_ISVTX\t0001000\tsticky bit (see below)\n"
5328 msgstr "S_ISVTX\t0001000\tスティッキービット (下記参照)\n"
5329
5330 #. type: tbl table
5331 #: build/C/man2/stat.2:384
5332 #, no-wrap
5333 msgid "S_IRWXU\t  00700\tmask for file owner permissions\n"
5334 msgstr "S_IRWXU\t  00700\tファイル所有者のアクセス許可用のビットマスク\n"
5335
5336 #. type: tbl table
5337 #: build/C/man2/stat.2:385
5338 #, no-wrap
5339 msgid "S_IRUSR\t  00400\towner has read permission\n"
5340 msgstr "S_IRUSR\t  00400\t所有者の読み込み許可\n"
5341
5342 #. type: tbl table
5343 #: build/C/man2/stat.2:386
5344 #, no-wrap
5345 msgid "S_IWUSR\t  00200\towner has write permission\n"
5346 msgstr "S_IWUSR\t  00200\t所有者の書き込み許可\n"
5347
5348 #. type: tbl table
5349 #: build/C/man2/stat.2:387
5350 #, no-wrap
5351 msgid "S_IXUSR\t  00100\towner has execute permission\n"
5352 msgstr "S_IXUSR\t  00100\t所有者の実行許可\n"
5353
5354 #. type: tbl table
5355 #: build/C/man2/stat.2:389
5356 #, no-wrap
5357 msgid "S_IRWXG\t  00070\tmask for group permissions\n"
5358 msgstr "S_IRWXG\t  00070\tグループのアクセス許可用のビットマスク\n"
5359
5360 #. type: tbl table
5361 #: build/C/man2/stat.2:390
5362 #, no-wrap
5363 msgid "S_IRGRP\t  00040\tgroup has read permission\n"
5364 msgstr "S_IRGRP\t  00040\tグループの読み込み許可\n"
5365
5366 #. type: tbl table
5367 #: build/C/man2/stat.2:391
5368 #, no-wrap
5369 msgid "S_IWGRP\t  00020\tgroup has write permission\n"
5370 msgstr "S_IWGRP\t  00020\tグループの書き込み許可\n"
5371
5372 #. type: tbl table
5373 #: build/C/man2/stat.2:392
5374 #, no-wrap
5375 msgid "S_IXGRP\t  00010\tgroup has execute permission\n"
5376 msgstr "S_IXGRP\t  00010\tグループの実行許可\n"
5377
5378 #. type: tbl table
5379 #: build/C/man2/stat.2:394
5380 #, no-wrap
5381 msgid "S_IRWXO\t  00007\tT{\n"
5382 msgstr "S_IRWXO\t  00007\tT{\n"
5383
5384 #. type: tbl table
5385 #: build/C/man2/stat.2:395
5386 #, no-wrap
5387 msgid "mask for permissions for others (not in group)\n"
5388 msgstr "他人 (others) のアクセス許可用のビットマスク\n"
5389
5390 #. type: tbl table
5391 #: build/C/man2/stat.2:396 build/C/man2/stat.2:695 build/C/man2/stat.2:703
5392 #: build/C/man2/stat.2:714 build/C/man2/stat.2:726 build/C/man2/stat.2:731
5393 #: build/C/man2/stat.2:734 build/C/man2/stat.2:738
5394 #, no-wrap
5395 msgid "T}\n"
5396 msgstr "T}\n"
5397
5398 #. type: tbl table
5399 #: build/C/man2/stat.2:397
5400 #, no-wrap
5401 msgid "S_IROTH\t  00004\tothers have read permission\n"
5402 msgstr "S_IROTH\t  00004\t他人の読み込み許可\n"
5403
5404 #. type: tbl table
5405 #: build/C/man2/stat.2:398
5406 #, no-wrap
5407 msgid "S_IWOTH\t  00002\tothers have write permission\n"
5408 msgstr "S_IWOTH\t  00002\t他人の書き込み許可\n"
5409
5410 #. type: tbl table
5411 #: build/C/man2/stat.2:399
5412 #, no-wrap
5413 msgid "S_IXOTH\t  00001\tothers have execute permission\n"
5414 msgstr "S_IXOTH\t  00001\t他人の実行許可\n"
5415
5416 #. type: Plain text
5417 #: build/C/man2/stat.2:416
5418 msgid "The set-group-ID bit (B<S_ISGID>)  has several special uses.  For a directory, it indicates that BSD semantics is to be used for that directory: files created there inherit their group ID from the directory, not from the effective group ID of the creating process, and directories created there will also get the B<S_ISGID> bit set.  For a file that does not have the group execution bit (B<S_IXGRP>)  set, the set-group-ID bit indicates mandatory file/record locking."
5419 msgstr "set-group-ID bit (B<S_ISGID>)  にはいくつかの特殊な使用法がある: ディレクトリに設定した場合には、そのディレクトリが BSD 方式で使用される ことを示す。つまり、そのディレクトリに作成されたファイルのグループID は 作成したプロセスの実効 (effective) グループID ではなく、ディレクトリの グループID を継承する。また、そのディレクトリに作成されたディレクトリにも B<S_ISGID> ビットが設定される。グループ実行ビット (B<S_IXGRP>)  が設定されていないファイルに設定された場合は、 set-group-ID ビットはファイル/レコードの 強制的な (mandatory) ロックを表す。"
5420
5421 #. type: Plain text
5422 #: build/C/man2/stat.2:425
5423 msgid "The sticky bit (B<S_ISVTX>)  on a directory means that a file in that directory can be renamed or deleted only by the owner of the file, by the owner of the directory, and by a privileged process."
5424 msgstr "ディレクトリにスティッキービット (S_ISVTX) が設定された場合は、 そのディレクトリのファイルの名前を変更したり、削除したりできるのは、 そのファイルの所有者か、そのディレクトリの所有者か、特権プロセス だけとなる。"
5425
5426 #. type: SS
5427 #: build/C/man2/stat.2:425
5428 #, no-wrap
5429 msgid "fstatat()"
5430 msgstr "fstatat()"
5431
5432 #. type: Plain text
5433 #: build/C/man2/stat.2:431
5434 msgid "The B<fstatat>()  system call operates in exactly the same way as B<stat>(), except for the differences described here."
5435 msgstr "B<fstatat>() システムコールは B<stat>() と全く同様に動作するが、以下で説明する点が異なる。"
5436
5437 #. type: Plain text
5438 #: build/C/man2/stat.2:441
5439 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<stat>()  for a relative pathname)."
5440 msgstr "指定された I<pathname> が相対パスの場合、 ファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<stat>() に相対パスを渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
5441
5442 #. type: Plain text
5443 #: build/C/man2/stat.2:453
5444 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<stat>())."
5445 msgstr "I<pathname> が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<stat>(2) と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
5446
5447 #. type: Plain text
5448 #: build/C/man2/stat.2:459
5449 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
5450 msgstr "I<pathname> で指定されたパス名が絶対パスの場合、 I<dirfd> は無視される。"
5451
5452 #. type: Plain text
5453 #: build/C/man2/stat.2:462
5454 msgid "I<flags> can either be 0, or include one or more of the following flags ORed:"
5455 msgstr "この I<flags> 引き数は下記のフラグの 0 個以上の論理和を取ったものである:"
5456
5457 #. type: TP
5458 #: build/C/man2/stat.2:462
5459 #, no-wrap
5460 msgid "B<AT_EMPTY_PATH> (since Linux 2.6.39)"
5461 msgstr "B<AT_EMPTY_PATH> (Linux 2.6.39 以降)"
5462
5463 #.  commit 65cfc6722361570bfe255698d9cd4dccaf47570d
5464 #.  Before glibc 2.16, defining _ATFILE_SOURCE sufficed
5465 #. type: Plain text
5466 #: build/C/man2/stat.2:485
5467 msgid "If I<pathname> is an empty string, operate on the file referred to by I<dirfd> (which may have been obtained using the B<open>(2)  B<O_PATH> flag).  If I<dirfd> is B<AT_FDCWD>, the call operates on the current working directory.  In this case, I<dirfd> can refer to any type of file, not just a directory.  This flag is Linux-specific; define B<_GNU_SOURCE> to obtain its definition."
5468 msgstr "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して操作を行う (I<dirfd> は B<open>(2) の B<O_PATH> フラグを使って取得できる)。 B<dirfd> が B<AT_FDCWD> の場合、呼び出しはカレントワーキングディレクトリに対して操作を行う。 この場合、 I<dirfd> は、ディレクトリだけでなく、任意のタイプのファイルを参照することができる。 このフラグは Linux 固有であり、その定義を得るには B<_GNU_SOURCE> を定義すること。"
5469
5470 #. type: TP
5471 #: build/C/man2/stat.2:485
5472 #, no-wrap
5473 msgid "B<AT_NO_AUTOMOUNT> (since Linux 2.6.38)"
5474 msgstr "B<AT_NO_AUTOMOUNT> (Linux 2.6.38 以降)"
5475
5476 #.  Before glibc 2.16, defining _ATFILE_SOURCE sufficed
5477 #. type: Plain text
5478 #: build/C/man2/stat.2:501
5479 msgid "Don't automount the terminal (\"basename\") component of I<pathname> if it is a directory that is an automount point.  This allows the caller to gather attributes of an automount point (rather than the location it would mount).  This flag can be used in tools that scan directories to prevent mass-automounting of a directory of automount points.  The B<AT_NO_AUTOMOUNT> flag has no effect if the mount point has already been mounted over.  This flag is Linux-specific; define B<_GNU_SOURCE> to obtain its definition."
5480 msgstr "I<pathname> がオートマウントポイントとなっているディレクトリの場合、 I<pathname> の最終 (\"basename\") 要素のオートマウントを行わない。 これにより (マウントされるはずの場所ではなく) オートマウントポイントの属性を取得することができる。 このフラグを使うと、 ディレクトリをスキャンするツールがオートマウントポイントのディレクトリを大量にオートマウントしてしまうのを防ぐことができる。 マウントポイントがすでにマウントされている場合 B<AT_NO_AUTOMOUNT> フラグは何の効果もない。 このフラグは Linux 固有であり、その定義を得るには B<_GNU_SOURCE> を定義すること。"
5481
5482 #. type: TP
5483 #: build/C/man2/stat.2:501
5484 #, no-wrap
5485 msgid "B<AT_SYMLINK_NOFOLLOW>"
5486 msgstr "B<AT_SYMLINK_NOFOLLOW>"
5487
5488 #. type: Plain text
5489 #: build/C/man2/stat.2:512
5490 msgid "If I<pathname> is a symbolic link, do not dereference it: instead return information about the link itself, like B<lstat>().  (By default, B<fstatat>()  dereferences symbolic links, like B<stat>().)"
5491 msgstr "(B<lstat>() 同様) I<pathname> がシンボリックリンクの場合リンクの展開を行わず、 リンク自身の情報を返す (デフォルトでは、 B<fstatat>() は、 B<stat>() と同様に、シンボリックリンクの展開を行う)。"
5492
5493 #. type: Plain text
5494 #: build/C/man2/stat.2:517
5495 msgid "See B<openat>(2)  for an explanation of the need for B<fstatat>()."
5496 msgstr "B<fstatat>() の必要性についての説明については B<openat>(2) を参照。"
5497
5498 #. type: Plain text
5499 #: build/C/man2/stat.2:530
5500 msgid "Search permission is denied for one of the directories in the path prefix of I<pathname>.  (See also B<path_resolution>(7).)"
5501 msgstr "I<pathname> が所属するディレクトリとその上位のディレクトリのいずれかに 対する検索許可がなかった (B<path_resolution>(7)  も参照のこと)。"
5502
5503 #. type: Plain text
5504 #: build/C/man2/stat.2:534
5505 msgid "I<fd> is bad."
5506 msgstr "I<fd> が不正である。"
5507
5508 #. type: Plain text
5509 #: build/C/man2/stat.2:537
5510 msgid "Bad address."
5511 msgstr "アドレスが間違っている。"
5512
5513 #. type: Plain text
5514 #: build/C/man2/stat.2:540
5515 msgid "Too many symbolic links encountered while traversing the path."
5516 msgstr "パスを辿る際に解決すべきシンボリックリンクが多過ぎた。"
5517
5518 #. type: Plain text
5519 #: build/C/man2/stat.2:551
5520 msgid "A component of I<pathname> does not exist, or I<pathname> is an empty string."
5521 msgstr "I<pathname> の構成要素が存在しないか、 I<pathname> が空文字列である。"
5522
5523 #. type: Plain text
5524 #: build/C/man2/stat.2:554
5525 msgid "Out of memory (i.e., kernel memory)."
5526 msgstr "カーネルのメモリーが足りない。"
5527
5528 #. type: Plain text
5529 #: build/C/man2/stat.2:559
5530 msgid "A component of the path prefix of I<pathname> is not a directory."
5531 msgstr "I<pathname> の前半部分 (prefix) の構成要素がディレクトリではない。"
5532
5533 #. type: TP
5534 #: build/C/man2/stat.2:559 build/C/man2/statfs.2:215
5535 #: build/C/man3/statvfs.3:154
5536 #, no-wrap
5537 msgid "B<EOVERFLOW>"
5538 msgstr "B<EOVERFLOW>"
5539
5540 #. type: Plain text
5541 #: build/C/man2/stat.2:578
5542 msgid "I<pathname> or I<fd> refers to a file whose size, inode number, or number of blocks cannot be represented in, respectively, the types I<off_t>, I<ino_t>, or I<blkcnt_t>.  This error can occur when, for example, an application compiled on a 32-bit platform without I<-D_FILE_OFFSET_BITS=64> calls B<stat>()  on a file whose size exceeds I<(1E<lt>E<lt>31)-1> bytes."
5543 msgstr ""
5544 "I<pathname> または I<fd> が、ファイルサイズ、inode 番号、ブロック数が\n"
5545 "それぞれ I<off_t> 型、 I<ino_t> 型、 I<blkcnt_t> 型で表現できないファイルを\n"
5546 "参照している。このエラーが起こるのは、例えば、32 ビットプラットフォーム上で\n"
5547 "I<-D_FILE_OFFSET_BITS=64> を指定せずにコンパイルされたアプリケーションが、\n"
5548 "ファイルサイズが I<(1E<lt>E<lt>31)-1> バイトを超えるファイルに対して\n"
5549 "B<stat>() を呼び出した場合である。"
5550
5551 #. type: Plain text
5552 #: build/C/man2/stat.2:581
5553 msgid "The following additional errors can occur for B<fstatat>():"
5554 msgstr "B<fstatat>() では以下のエラーも発生することがある。"
5555
5556 #. type: Plain text
5557 #: build/C/man2/stat.2:585
5558 msgid "I<dirfd> is not a valid file descriptor."
5559 msgstr "I<dirfd> が有効なファイルディスクリプターでない。"
5560
5561 #. type: Plain text
5562 #: build/C/man2/stat.2:589
5563 msgid "Invalid flag specified in I<flags>."
5564 msgstr "I<flags> に無効なフラグが指定された。"
5565
5566 #. type: Plain text
5567 #: build/C/man2/stat.2:595
5568 msgid "I<pathname> is relative and I<dirfd> is a file descriptor referring to a file other than a directory."
5569 msgstr "I<pathname> が相対パスで、 I<dirfd> がディレクトリ以外のファイルを参照しているファイルディスクリプターである。"
5570
5571 #. type: Plain text
5572 #: build/C/man2/stat.2:599
5573 msgid "B<fstatat>()  was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4."
5574 msgstr "B<fstatat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 で glibc に追加された。"
5575
5576 #.  SVr4 documents additional
5577 #.  .BR fstat ()
5578 #.  error conditions EINTR, ENOLINK, and EOVERFLOW.  SVr4
5579 #.  documents additional
5580 #.  .BR stat ()
5581 #.  and
5582 #.  .BR lstat ()
5583 #.  error conditions EINTR, EMULTIHOP, ENOLINK, and EOVERFLOW.
5584 #. type: Plain text
5585 #: build/C/man2/stat.2:612
5586 msgid "B<stat>(), B<fstat>(), B<lstat>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1.2008."
5587 msgstr "B<stat>(), B<fstat>(), B<lstat>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1.2008."
5588
5589 #. type: Plain text
5590 #: build/C/man2/stat.2:615
5591 msgid "B<fstatat>(): POSIX.1-2008."
5592 msgstr "B<fstatat>(): POSIX.1-2008."
5593
5594 #. type: Plain text
5595 #: build/C/man2/stat.2:629
5596 msgid "According to POSIX.1-2001, B<lstat>()  on a symbolic link need return valid information only in the I<st_size> field and the file-type component of the I<st_mode> field of the I<stat> structure.  POSIX.1-2008 tightens the specification, requiring B<lstat>()  to return valid information in all fields except the permission bits in I<st_mode>."
5597 msgstr ""
5598 "POSIX.1-2001 では、シンボリックリンクに対する B<lstat>() で\n"
5599 "有効な情報を返すように求められていたのは、 I<stat> 構造体の I<st_size>\n"
5600 "と I<st_mode> のファイル種別要素だけであった。\n"
5601 "POSIX.1-2008 では規定が厳しくなり、 B<lstat>() は I<st_mode> の\n"
5602 "アクセス許可ビット以外の全てのフィールドに有効な情報を返すことが\n"
5603 "求められるようになっている。"
5604
5605 #. type: Plain text
5606 #: build/C/man2/stat.2:649
5607 msgid "Use of the I<st_blocks> and I<st_blksize> fields may be less portable.  (They were introduced in BSD.  The interpretation differs between systems, and possibly on a single system when NFS mounts are involved.)  If you need to obtain the definition of the I<blkcnt_t> or I<blksize_t> types from I<E<lt>sys/stat.hE<gt>>, then define B<_XOPEN_SOURCE> with the value 500 or greater (before including I<any> header files)."
5608 msgstr ""
5609 "I<st_blocks> と I<st_blksize> フィールドの使用はあまり移植性がない\n"
5610 "(これらのフィールドは BSD によって導入された。 システムごとに解釈が\n"
5611 "異なっており、 NFS マウントの場合には同じシステムでも異なる可能性がある)。\n"
5612 "I<E<lt>sys/stat.hE<gt>> から I<blkcnt_t> の I<blksize_t> 型定義を\n"
5613 "読み込みたい場合は、(I<どの>ヘッダファイルをインクルードするよりも前に)\n"
5614 "B<_XOPEN_SOURCE> を 500 以上の値で定義すること。"
5615
5616 #. type: Plain text
5617 #: build/C/man2/stat.2:667
5618 msgid "POSIX.1-1990 did not describe the B<S_IFMT>, B<S_IFSOCK>, B<S_IFLNK>, B<S_IFREG>, B<S_IFBLK>, B<S_IFDIR>, B<S_IFCHR>, B<S_IFIFO>, B<S_ISVTX> constants, but instead demanded the use of the macros B<S_ISDIR>(), and so on.  The B<S_IF*> constants are present in POSIX.1-2001 and later."
5619 msgstr ""
5620 "POSIX.1-1990 には B<S_IFMT>, B<S_IFSOCK>, B<S_IFLNK>, B<S_IFREG>,\n"
5621 "B<S_IFBLK>, B<S_IFDIR>, B<S_IFCHR>, B<S_IFIFO>, B<S_ISVTX> 定数に関する\n"
5622 "記述はなかったが、代わりに B<S_ISDIR>() のようなマクロを使用するように\n"
5623 "要求していた。 B<S_IF*> 定数は POSIX.1-2001 以降には存在する。"
5624
5625 #. type: Plain text
5626 #: build/C/man2/stat.2:675
5627 msgid "The B<S_ISLNK>()  and B<S_ISSOCK>()  macros are not in POSIX.1-1996, but both are present in POSIX.1-2001; the former is from SVID 4, the latter from SUSv2."
5628 msgstr ""
5629 "マクロ B<S_ISLNK>() と B<S_ISSOCK>() は POSIX.1-1996 にはないが、\n"
5630 "POSIX.1-2001 には両方とも存在する。 前者は SVID 4 に、後者は SUSv2 に\n"
5631 "由来している。"
5632
5633 #. type: Plain text
5634 #: build/C/man2/stat.2:685
5635 msgid "UNIX\\ V7 (and later systems) had B<S_IREAD>, B<S_IWRITE>, B<S_IEXEC>, where POSIX prescribes the synonyms B<S_IRUSR>, B<S_IWUSR>, B<S_IXUSR>."
5636 msgstr ""
5637 "UNIX\\ V7 (とその後のシステム) は B<S_IREAD>, B<S_IWRITE>, B<S_IEXEC> を持っており、\n"
5638 "POSIX はその同義語として B<S_IRUSR>, B<S_IWUSR>, B<S_IXUSR> を規定している。"
5639
5640 #. type: SS
5641 #: build/C/man2/stat.2:685
5642 #, no-wrap
5643 msgid "Other systems"
5644 msgstr "他のシステム"
5645
5646 #. type: Plain text
5647 #: build/C/man2/stat.2:687
5648 msgid "Values that have been (or are) in use on various systems:"
5649 msgstr "各種システムで使用されていた(いる)値:"
5650
5651 #. type: tbl table
5652 #: build/C/man2/stat.2:690
5653 #, no-wrap
5654 msgid "hex\tname\tls\toctal\tdescription\n"
5655 msgstr "16進\t名前\tls\t8進数\t説明\n"
5656
5657 #. type: tbl table
5658 #: build/C/man2/stat.2:691
5659 #, no-wrap
5660 msgid "f000\tS_IFMT\t\t170000\tmask for file type\n"
5661 msgstr "f000\tS_IFMT\t\t170000\tファイル種別フィールドのビットマスク\n"
5662
5663 #. type: tbl table
5664 #: build/C/man2/stat.2:692
5665 #, no-wrap
5666 msgid "0000\t\t\t000000\tT{\n"
5667 msgstr "0000\t\t\t000000\tT{\n"
5668
5669 #. type: tbl table
5670 #: build/C/man2/stat.2:693
5671 #, no-wrap
5672 msgid "SCO out-of-service inode; BSD unknown type; SVID-v2 and XPG2\n"
5673 msgstr "SCO では 使用不能 inode; BSD では不明なファイル種別;\n"
5674
5675 #. type: tbl table
5676 #: build/C/man2/stat.2:694
5677 #, no-wrap
5678 msgid "have both 0 and 0100000 for ordinary file\n"
5679 msgstr "SVID-v2 と XPG2 では 0 と 0100000 の両方が通常のファイル\n"
5680
5681 #. type: tbl table
5682 #: build/C/man2/stat.2:696
5683 #, no-wrap
5684 msgid "1000\tS_IFIFO\tp|\t010000\tFIFO (named pipe)\n"
5685 msgstr "1000\tS_IFIFO\tp|\t010000\tFIFO (名前付きパイプ)\n"
5686
5687 #. type: tbl table
5688 #: build/C/man2/stat.2:697
5689 #, no-wrap
5690 msgid "2000\tS_IFCHR\tc\t020000\tcharacter special (V7)\n"
5691 msgstr "2000\tS_IFCHR\tc\t020000\tキャラクター特殊ファイル (V7)\n"
5692
5693 #. type: tbl table
5694 #: build/C/man2/stat.2:698
5695 #, no-wrap
5696 msgid "3000\tS_IFMPC\t\t030000\tmultiplexed character special (V7)\n"
5697 msgstr "3000\tS_IFMPC\t\t030000\t多重化されたキャラクター特殊ファイル (V7)\n"
5698
5699 #. type: tbl table
5700 #: build/C/man2/stat.2:699
5701 #, no-wrap
5702 msgid "4000\tS_IFDIR\td/\t040000\tdirectory (V7)\n"
5703 msgstr "4000\tS_IFDIR\td/\t040000\tディレクトリ (V7)\n"
5704
5705 #. type: tbl table
5706 #: build/C/man2/stat.2:700
5707 #, no-wrap
5708 msgid "5000\tS_IFNAM\t\t050000\tT{\n"
5709 msgstr "5000\tS_IFNAM\t\t050000\tT{\n"
5710
5711 #. type: tbl table
5712 #: build/C/man2/stat.2:701
5713 #, no-wrap
5714 msgid "XENIX named special file with two subtypes, distinguished by\n"
5715 msgstr "XENIX の二つの副型を持つ名前付きの特殊ファイル\n"
5716
5717 #. type: tbl table
5718 #: build/C/man2/stat.2:702
5719 #, no-wrap
5720 msgid "I<st_rdev> values 1, 2\n"
5721 msgstr "副型は I<st_rdev> の値 1, 2 で区別される\n"
5722
5723 #. type: tbl table
5724 #: build/C/man2/stat.2:704
5725 #, no-wrap
5726 msgid "0001\tS_INSEM\ts\t000001\tXENIX semaphore subtype of IFNAM\n"
5727 msgstr "0001\tS_INSEM\ts\t000001\tXENIX の IFNAM セマフォ副型\n"
5728
5729 #. type: tbl table
5730 #: build/C/man2/stat.2:705
5731 #, no-wrap
5732 msgid "0002\tS_INSHD\tm\t000002\tXENIX shared data subtype of IFNAM\n"
5733 msgstr "0002\tS_INSHD\tm\t000002\tXENIX の IFNAM 共有データ副型\n"
5734
5735 #. type: tbl table
5736 #: build/C/man2/stat.2:706
5737 #, no-wrap
5738 msgid "6000\tS_IFBLK\tb\t060000\tblock special (V7)\n"
5739 msgstr "6000\tS_IFBLK\tb\t060000\tブロック特殊ファイル (V7)\n"
5740
5741 #. type: tbl table
5742 #: build/C/man2/stat.2:707
5743 #, no-wrap
5744 msgid "7000\tS_IFMPB\t\t070000\tmultiplexed block special (V7)\n"
5745 msgstr "7000\tS_IFMPB\t\t070000\t多重化されたブロック特殊ファイル (V7)\n"
5746
5747 #. type: tbl table
5748 #: build/C/man2/stat.2:708
5749 #, no-wrap
5750 msgid "8000\tS_IFREG\t-\t100000\tregular (V7)\n"
5751 msgstr "8000\tS_IFREG\t-\t100000\t通常ファイル (V7)\n"
5752
5753 #. type: tbl table
5754 #: build/C/man2/stat.2:709
5755 #, no-wrap
5756 msgid "9000\tS_IFCMP\t\t110000\tVxFS compressed\n"
5757 msgstr "9000\tS_IFCMP\t\t110000\tVxFS 圧縮ファイル\n"
5758
5759 #. type: tbl table
5760 #: build/C/man2/stat.2:710
5761 #, no-wrap
5762 msgid "9000\tS_IFNWK\tn\t110000\tnetwork special (HP-UX)\n"
5763 msgstr "9000\tS_IFNWK\tn\t110000\tネットワーク特殊ファイル (HP-UX)\n"
5764
5765 #. type: tbl table
5766 #: build/C/man2/stat.2:711
5767 #, no-wrap
5768 msgid "a000\tS_IFLNK\tl@\t120000\tsymbolic link (BSD)\n"
5769 msgstr "a000\tS_IFLNK\tl@\t120000\tシンボリックリンク (BSD)\n"
5770
5771 #. type: tbl table
5772 #: build/C/man2/stat.2:712
5773 #, no-wrap
5774 msgid "b000\tS_IFSHAD\t\t130000\tT{\n"
5775 msgstr "b000\tS_IFSHAD\t\t130000\tT{\n"
5776
5777 #. type: tbl table
5778 #: build/C/man2/stat.2:713
5779 #, no-wrap
5780 msgid "Solaris shadow inode for ACL (not seen by user space)\n"
5781 msgstr "Solaris の ACL 用の隠し inode (ユーザー空間からは見えない)\n"
5782
5783 #. type: tbl table
5784 #: build/C/man2/stat.2:715
5785 #, no-wrap
5786 msgid "c000\tS_IFSOCK\ts=\t140000\tsocket (BSD; also \"S_IFSOC\" on VxFS)\n"
5787 msgstr "c000\tS_IFSOCK\ts=\t140000\tソケット (BSD; VxFS の \"S_IFSOC\")\n"
5788
5789 #. type: tbl table
5790 #: build/C/man2/stat.2:716
5791 #, no-wrap
5792 msgid "d000\tS_IFDOOR\tDE<gt>\t150000\tSolaris door\n"
5793 msgstr "d000\tS_IFDOOR\tDE<gt>\t150000\tSolaris の door ファイル\n"
5794
5795 #. type: tbl table
5796 #: build/C/man2/stat.2:717
5797 #, no-wrap
5798 msgid "e000\tS_IFWHT\tw%\t160000\tBSD whiteout (not used for inode)\n"
5799 msgstr "e000\tS_IFWHT\tw%\t160000\tBSD の空白ファイル (inode を使用しない)\n"
5800
5801 #. type: tbl table
5802 #: build/C/man2/stat.2:718
5803 #, no-wrap
5804 msgid "0200\tS_ISVTX\t\t001000\tT{\n"
5805 msgstr "0200\tS_ISVTX\t\t001000\tT{\n"
5806
5807 #. type: tbl table
5808 #: build/C/man2/stat.2:719
5809 #, no-wrap
5810 msgid "sticky bit: save swapped text even after use (V7)\n"
5811 msgstr "スティッキービット: 使用後もスワップに残す (V7)\n"
5812
5813 #. type: tbl table
5814 #: build/C/man2/stat.2:720 build/C/man2/stat.2:722 build/C/man2/stat.2:724
5815 #: build/C/man2/stat.2:729
5816 #, no-wrap
5817 msgid ".br\n"
5818 msgstr ".br\n"
5819
5820 #. type: tbl table
5821 #: build/C/man2/stat.2:721
5822 #, no-wrap
5823 msgid "reserved (SVID-v2)\n"
5824 msgstr "予約 (SVID-v2)\n"
5825
5826 #. type: tbl table
5827 #: build/C/man2/stat.2:723
5828 #, no-wrap
5829 msgid "On nondirectories: don't cache this file (SunOS)\n"
5830 msgstr "ディレクトリ以外: ファイルをキャッシュしない (SunOS)\n"
5831
5832 #. type: tbl table
5833 #: build/C/man2/stat.2:725
5834 #, no-wrap
5835 msgid "On directories: restricted deletion flag (SVID-v4.2)\n"
5836 msgstr "ディレクトリの場合: 削除制限フラグ (SVID-v4.2)\n"
5837
5838 #. type: tbl table
5839 #: build/C/man2/stat.2:727
5840 #, no-wrap
5841 msgid "0400\tS_ISGID\t\t002000\tT{\n"
5842 msgstr "0400\tS_ISGID\t\t002000\tT{\n"
5843
5844 #. type: tbl table
5845 #: build/C/man2/stat.2:728
5846 #, no-wrap
5847 msgid "set-group-ID on execution (V7)\n"
5848 msgstr "実行時の set-group-ID (V7)\n"
5849
5850 #. type: tbl table
5851 #: build/C/man2/stat.2:730
5852 #, no-wrap
5853 msgid "for directories: use BSD semantics for propagation of GID\n"
5854 msgstr "ディレクトリの場合: GID の伝搬に BSD 方式を使用する\n"
5855
5856 #. type: tbl table
5857 #: build/C/man2/stat.2:732
5858 #, no-wrap
5859 msgid "0400\tS_ENFMT\t\t002000\tT{\n"
5860 msgstr "0400\tS_ENFMT\t\t002000\tT{\n"
5861
5862 #. type: tbl table
5863 #: build/C/man2/stat.2:733
5864 #, no-wrap
5865 msgid "System V file locking enforcement (shared with S_ISGID)\n"
5866 msgstr "System V ファイルロックを強制する (S_ISGID と共有)\n"
5867
5868 #. type: tbl table
5869 #: build/C/man2/stat.2:735
5870 #, no-wrap
5871 msgid "0800\tS_ISUID\t\t004000\tset-user-ID on execution (V7)\n"
5872 msgstr "0800\tS_ISUID\t\t004000\t実行時の set-user-ID (V7)\n"
5873
5874 #. type: tbl table
5875 #: build/C/man2/stat.2:736
5876 #, no-wrap
5877 msgid "0800\tS_CDF\t\t004000\tT{\n"
5878 msgstr "0800\tS_CDF\t\t004000\tT{\n"
5879
5880 #. type: tbl table
5881 #: build/C/man2/stat.2:737
5882 #, no-wrap
5883 msgid "directory is a context dependent file (HP-UX)\n"
5884 msgstr "ディレクトリがコンテキスト依存ファイル (HP-UX)\n"
5885
5886 #. type: Plain text
5887 #: build/C/man2/stat.2:743
5888 msgid "A sticky command appeared in Version 32V AT&T UNIX."
5889 msgstr "スティッキー コマンドは Version 32V AT&T UNIX で登場した。"
5890
5891 #. type: Plain text
5892 #: build/C/man2/stat.2:750
5893 msgid "On Linux, B<lstat>()  will generally not trigger automounter action, whereas B<stat>()  will (but see B<fstatat>(2))."
5894 msgstr ""
5895 "Linux では、 B<lstat>() は一般には自動マウント動作 (automounter action) の\n"
5896 "きっかけとならないが、 B<stat>() はきっかけとなる (B<fstatat>(2) を参照)。"
5897
5898 #. type: Plain text
5899 #: build/C/man2/stat.2:758
5900 msgid "For most files under the I</proc> directory, B<stat>()  does not return the file size in the I<st_size> field; instead the field is returned with the value 0."
5901 msgstr "I</proc> ディレクトリ以下にあるファイルのほとんどでは、 B<stat>()  を呼び出した際に、 I<st_size> フィールドにファイルサイズが返されない。 代わりに I<st_size> フィールドには 0 が返される。"
5902
5903 #. type: SS
5904 #: build/C/man2/stat.2:758
5905 #, no-wrap
5906 msgid "Timestamp fields"
5907 msgstr "タイムスタンプフィールド"
5908
5909 #. type: Plain text
5910 #: build/C/man2/stat.2:769
5911 msgid "Older kernels and older standards did not support nanosecond timestamp fields.  Instead, there were three timestamp fields\\(emI<st_atime>, I<st_mtime>, and I<st_ctime>\\(emtyped as I<time_t> that recorded timestamps with one-second precision."
5912 msgstr "古いカーネルや古い標準では、ナノ秒精度のタイムスタンプフィールドはサポートされていなかった。 代わりに 3 つの I<time_t> 型のタイムスタンプフィールド I<st_atime>, I<st_mtime>, and I<st_ctime> があった。これらのフィールドには 1 秒単位のタイムスタンプが記録されていた。"
5913
5914 #. type: Plain text
5915 #: build/C/man2/stat.2:791
5916 msgid "Since kernel 2.5.48, the I<stat> structure supports nanosecond resolution for the three file timestamp fields.  The nanosecond components of each timestamp are available via names of the form I<st_atim.tv_nsec> if the B<_BSD_SOURCE> or B<_SVID_SOURCE> feature test macro is defined.  Nanosecond timestamps are nowadays standardized, starting with POSIX.1-2008, and, starting with version 2.12, glibc also exposes the nanosecond component names if B<_POSIX_C_SOURCE> is defined with the value 200809L or greater, or B<_XOPEN_SOURCE> is defined with the value 700 or greater.  If none of the aforementioned macros are defined, then the nanosecond values are exposed with names of the form I<st_atimensec>."
5917 msgstr "カーネル 2.5.48 以降では、 I<stat> 構造体は 3 つのファイルのタイムスタンプ関連のフィールドでナノ秒単位の精度に対応している。 機能検査マクロ B<_BSD_SOURCE> か B<_SVID_SOURCE> が定義された場合に、各タイムスタンプのナノ秒の情報は I<st_atim.tv_nsec> という形式の名前で参照できる。 ナノ秒のタイムスタンプは現在では標準化されており、 POSIX.1-2008 からである。 バージョン 2.12 以降の glibc では、 B<_POSIX_C_SOURCE> が 200809L 以上の値で定義されるか、 B<_XOPEN_SOURCE> が 700 以上の値で定義された場合にも、 このナノ秒のタイムスタンプが公開される。 上記のマクロのいずれも定義されていない場合、ナノ秒の値は I<st_atimensec> という形式の名前で公開される。"
5918
5919 #.  commit ef7f38359ea8b3e9c7f2cae9a4d4935f55ca9e80
5920 #. type: Plain text
5921 #: build/C/man2/stat.2:798
5922 msgid "Nanosecond timestamps are supported on XFS, JFS, Btrfs, and ext4 (since Linux 2.6.23).  Nanosecond timestamps are not supported in ext2, ext3, and Reiserfs.  On filesystems that do not support subsecond timestamps, the nanosecond fields are returned with the value 0."
5923 msgstr "ナノ秒のタイムスタンプは XFS, JFS, Btrfs, ext4 でサポートされている (Linux 2.6.23 以降)。 ナノ秒のタイムスタンプは ext2, ext3, Reiserfs ではサポートされていない。 サブ秒のタイムスタンプをサポートしていないファイルシステムでは、 ナノ秒のフィールドには値 0 が入る。"
5924
5925 #. type: SS
5926 #: build/C/man2/stat.2:798
5927 #, no-wrap
5928 msgid "Underlying kernel interface"
5929 msgstr "背後のカーネルインターフェース"
5930
5931 #.  A note from Andries Brouwer, July 2007
5932 #.  > Is the story not rather more complicated for some calls like
5933 #.  > stat(2)?
5934 #.  Yes and no, mostly no. See /usr/include/sys/stat.h .
5935 #.  The idea is here not so much that syscalls change, but that
5936 #.  the definitions of struct stat and of the types dev_t and mode_t change.
5937 #.  This means that libc (even if it does not call the kernel
5938 #.  but only calls some internal function) must know what the
5939 #.  format of dev_t or of struct stat is.
5940 #.  The communication between the application and libc goes via
5941 #.  the include file <sys/stat.h> that defines a _STAT_VER and
5942 #.  _MKNOD_VER describing the layout of the data that user space
5943 #.  uses. Each (almost each) occurrence of stat() is replaced by
5944 #.  an occurrence of xstat() where the first parameter of xstat()
5945 #.  is this version number _STAT_VER.
5946 #.  Now, also the definitions used by the kernel change.
5947 #.  But glibc copes with this in the standard way, and the
5948 #.  struct stat as returned by the kernel is repacked into
5949 #.  the struct stat as expected by the application.
5950 #.  Thus, _STAT_VER and this setup cater for the application-libc
5951 #.  interface, rather than the libc-kernel interface.
5952 #.  (Note that the details depend on gcc being used as c compiler.)
5953 #. type: Plain text
5954 #: build/C/man2/stat.2:850
5955 msgid "Over time, increases in the size of the I<stat> structure have led to three successive versions of B<stat>(): I<sys_stat>()  (slot I<__NR_oldstat>), I<sys_newstat>()  (slot I<__NR_stat>), and I<sys_stat64()> (new in kernel 2.4; slot I<__NR_stat64>).  The glibc B<stat>()  wrapper function hides these details from applications, invoking the most recent version of the system call provided by the kernel, and repacking the returned information if required for old binaries.  Similar remarks apply for B<fstat>()  and B<lstat>()."
5956 msgstr "時間の経過とともに、 I<stat> 構造体のサイズが大きくなり、この影響で B<stat>()  には 3つのバージョンが存在する: I<sys_stat>()  (スロットは I<__NR_oldstat>)、 I<sys_newstat>()  (スロットは I<__NR_stat>)、 I<sys_stat64>()  (カーネル 2.4 で導入; スロットは I<__NR_stat64>).  glibc の B<stat>()  ラッパー関数はこれらの詳細をアプリケーションから隠蔽してくれる。 具体的には、カーネルが提供しているシステムコールのうち最新のバージョンを 起動し、古いバイナリの場合には必要に応じて返された情報を再構成 (repack) する。 B<fstat>()  と B<lstat>()  についても同様である。"
5957
5958 #. type: Plain text
5959 #: build/C/man2/stat.2:855
5960 msgid "The underlying system call employed by the glibc B<fstatat>()  wrapper function is actually called B<fstatat64>()."
5961 msgstr "glibc の B<fstatat>() ラッパー関数が内部で利用するシステムコールは、実際には B<fstatat64>() である。"
5962
5963 #. type: Plain text
5964 #: build/C/man2/stat.2:861
5965 msgid "The following program calls B<stat>()  and displays selected fields in the returned I<stat> structure."
5966 msgstr "以下のプログラムは B<stat>()  を呼び出し、返ってきた I<stat> 構造体のフィールドのいくつかを表示する。"
5967
5968 #. type: Plain text
5969 #: build/C/man2/stat.2:868
5970 #, no-wrap
5971 msgid ""
5972 "#include E<lt>sys/types.hE<gt>\n"
5973 "#include E<lt>sys/stat.hE<gt>\n"
5974 "#include E<lt>time.hE<gt>\n"
5975 "#include E<lt>stdio.hE<gt>\n"
5976 "#include E<lt>stdlib.hE<gt>\n"
5977 msgstr ""
5978 "#include E<lt>sys/types.hE<gt>\n"
5979 "#include E<lt>sys/stat.hE<gt>\n"
5980 "#include E<lt>time.hE<gt>\n"
5981 "#include E<lt>stdio.hE<gt>\n"
5982 "#include E<lt>stdlib.hE<gt>\n"
5983
5984 #. type: Plain text
5985 #: build/C/man2/stat.2:873
5986 #, no-wrap
5987 msgid ""
5988 "int\n"
5989 "main(int argc, char *argv[])\n"
5990 "{\n"
5991 "    struct stat sb;\n"
5992 msgstr ""
5993 "int\n"
5994 "main(int argc, char *argv[])\n"
5995 "{\n"
5996 "    struct stat sb;\n"
5997
5998 #. type: Plain text
5999 #: build/C/man2/stat.2:878
6000 #, no-wrap
6001 msgid ""
6002 "    if (argc != 2) {\n"
6003 "        fprintf(stderr, \"Usage: %s E<lt>pathnameE<gt>\\en\", argv[0]);\n"
6004 "        exit(EXIT_FAILURE);\n"
6005 "    }\n"
6006 msgstr ""
6007 "    if (argc != 2) {\n"
6008 "        fprintf(stderr, \"Usage: %s E<lt>pathnameE<gt>\\en\", argv[0]);\n"
6009 "        exit(EXIT_FAILURE);\n"
6010 "    }\n"
6011
6012 #. type: Plain text
6013 #: build/C/man2/stat.2:883
6014 #, no-wrap
6015 msgid ""
6016 "    if (stat(argv[1], &sb) == -1) {\n"
6017 "        perror(\"stat\");\n"
6018 "        exit(EXIT_FAILURE);\n"
6019 "    }\n"
6020 msgstr ""
6021 "    if (stat(argv[1], &sb) == -1) {\n"
6022 "        perror(\"stat\");\n"
6023 "        exit(EXIT_FAILURE);\n"
6024 "    }\n"
6025
6026 #. type: Plain text
6027 #: build/C/man2/stat.2:885
6028 #, no-wrap
6029 msgid "    printf(\"File type:                \");\n"
6030 msgstr "    printf(\"File type:                \");\n"
6031
6032 #. type: Plain text
6033 #: build/C/man2/stat.2:896
6034 #, no-wrap
6035 msgid ""
6036 "    switch (sb.st_mode & S_IFMT) {\n"
6037 "    case S_IFBLK:  printf(\"block device\\en\");            break;\n"
6038 "    case S_IFCHR:  printf(\"character device\\en\");        break;\n"
6039 "    case S_IFDIR:  printf(\"directory\\en\");               break;\n"
6040 "    case S_IFIFO:  printf(\"FIFO/pipe\\en\");               break;\n"
6041 "    case S_IFLNK:  printf(\"symlink\\en\");                 break;\n"
6042 "    case S_IFREG:  printf(\"regular file\\en\");            break;\n"
6043 "    case S_IFSOCK: printf(\"socket\\en\");                  break;\n"
6044 "    default:       printf(\"unknown?\\en\");                break;\n"
6045 "    }\n"
6046 msgstr ""
6047 "    switch (sb.st_mode & S_IFMT) {\n"
6048 "    case S_IFBLK:  printf(\"block device\\en\");            break;\n"
6049 "    case S_IFCHR:  printf(\"character device\\en\");        break;\n"
6050 "    case S_IFDIR:  printf(\"directory\\en\");               break;\n"
6051 "    case S_IFIFO:  printf(\"FIFO/pipe\\en\");               break;\n"
6052 "    case S_IFLNK:  printf(\"symlink\\en\");                 break;\n"
6053 "    case S_IFREG:  printf(\"regular file\\en\");            break;\n"
6054 "    case S_IFSOCK: printf(\"socket\\en\");                  break;\n"
6055 "    default:       printf(\"unknown?\\en\");                break;\n"
6056 "    }\n"
6057
6058 #. type: Plain text
6059 #: build/C/man2/stat.2:898
6060 #, no-wrap
6061 msgid "    printf(\"I-node number:            %ld\\en\", (long) sb.st_ino);\n"
6062 msgstr "    printf(\"I-node number:            %ld\\en\", (long) sb.st_ino);\n"
6063
6064 #. type: Plain text
6065 #: build/C/man2/stat.2:901
6066 #, no-wrap
6067 msgid ""
6068 "    printf(\"Mode:                     %lo (octal)\\en\",\n"
6069 "            (unsigned long) sb.st_mode);\n"
6070 msgstr ""
6071 "    printf(\"Mode:                     %lo (octal)\\en\",\n"
6072 "            (unsigned long) sb.st_mode);\n"
6073
6074 #. type: Plain text
6075 #: build/C/man2/stat.2:905
6076 #, no-wrap
6077 msgid ""
6078 "    printf(\"Link count:               %ld\\en\", (long) sb.st_nlink);\n"
6079 "    printf(\"Ownership:                UID=%ld   GID=%ld\\en\",\n"
6080 "            (long) sb.st_uid, (long) sb.st_gid);\n"
6081 msgstr ""
6082 "    printf(\"Link count:               %ld\\en\", (long) sb.st_nlink);\n"
6083 "    printf(\"Ownership:                UID=%ld   GID=%ld\\en\",\n"
6084 "            (long) sb.st_uid, (long) sb.st_gid);\n"
6085
6086 #. type: Plain text
6087 #: build/C/man2/stat.2:912
6088 #, no-wrap
6089 msgid ""
6090 "    printf(\"Preferred I/O block size: %ld bytes\\en\",\n"
6091 "            (long) sb.st_blksize);\n"
6092 "    printf(\"File size:                %lld bytes\\en\",\n"
6093 "            (long long) sb.st_size);\n"
6094 "    printf(\"Blocks allocated:         %lld\\en\",\n"
6095 "            (long long) sb.st_blocks);\n"
6096 msgstr ""
6097 "    printf(\"Preferred I/O block size: %ld bytes\\en\",\n"
6098 "            (long) sb.st_blksize);\n"
6099 "    printf(\"File size:                %lld bytes\\en\",\n"
6100 "            (long long) sb.st_size);\n"
6101 "    printf(\"Blocks allocated:         %lld\\en\",\n"
6102 "            (long long) sb.st_blocks);\n"
6103
6104 #. type: Plain text
6105 #: build/C/man2/stat.2:916
6106 #, no-wrap
6107 msgid ""
6108 "    printf(\"Last status change:       %s\", ctime(&sb.st_ctime));\n"
6109 "    printf(\"Last file access:         %s\", ctime(&sb.st_atime));\n"
6110 "    printf(\"Last file modification:   %s\", ctime(&sb.st_mtime));\n"
6111 msgstr ""
6112 "    printf(\"Last status change:       %s\", ctime(&sb.st_ctime));\n"
6113 "    printf(\"Last file access:         %s\", ctime(&sb.st_atime));\n"
6114 "    printf(\"Last file modification:   %s\", ctime(&sb.st_mtime));\n"
6115
6116 #. type: Plain text
6117 #: build/C/man2/stat.2:930
6118 msgid "B<ls>(1), B<stat>(1), B<access>(2), B<chmod>(2), B<chown>(2), B<readlink>(2), B<utime>(2), B<capabilities>(7), B<symlink>(7)"
6119 msgstr "B<ls>(1), B<stat>(1), B<access>(2), B<chmod>(2), B<chown>(2), B<readlink>(2), B<utime>(2), B<capabilities>(7), B<symlink>(7)"
6120
6121 #. type: TH
6122 #: build/C/man2/statfs.2:28
6123 #, no-wrap
6124 msgid "STATFS"
6125 msgstr "STATFS"
6126
6127 #. type: TH
6128 #: build/C/man2/statfs.2:28
6129 #, no-wrap
6130 msgid "2014-06-13"
6131 msgstr "2014-06-13"
6132
6133 #. type: Plain text
6134 #: build/C/man2/statfs.2:31
6135 msgid "statfs, fstatfs - get filesystem statistics"
6136 msgstr "statfs, fstatfs - ファイルシステムの統計を取得する"
6137
6138 #. type: Plain text
6139 #: build/C/man2/statfs.2:33
6140 msgid "B<#include E<lt>sys/vfs.hE<gt> >/* or E<lt>sys/statfs.hE<gt> */"
6141 msgstr "B<#include E<lt>sys/vfs.hE<gt> >/* または E<lt>sys/statfs.hE<gt> */"
6142
6143 #. type: Plain text
6144 #: build/C/man2/statfs.2:35
6145 msgid "B<int statfs(const char *>I<path>B<, struct statfs *>I<buf>B<);>"
6146 msgstr "B<int statfs(const char *>I<path>B<, struct statfs *>I<buf>B<);>"
6147
6148 #. type: Plain text
6149 #: build/C/man2/statfs.2:37
6150 msgid "B<int fstatfs(int >I<fd>B<, struct statfs *>I<buf>B<);>"
6151 msgstr "B<int fstatfs(int >I<fd>B<, struct statfs *>I<buf>B<);>"
6152
6153 #. type: Plain text
6154 #: build/C/man2/statfs.2:47
6155 msgid "The function B<statfs>()  returns information about a mounted filesystem.  I<path> is the pathname of any file within the mounted filesystem.  I<buf> is a pointer to a I<statfs> structure defined approximately as follows:"
6156 msgstr "関数 B<statfs>()  はマウントされたファイルシステムについての情報を返す。 I<path> はマウントされたファイルシステムにあるファイルのパス名である。 I<buf> は I<statfs> 構造体へのポインターで、およそ以下のように定義される:"
6157
6158 #. type: Plain text
6159 #: build/C/man2/statfs.2:55
6160 #, no-wrap
6161 msgid ""
6162 "#if __WORDSIZE == 32\t\t/* System word size */\n"
6163 "# define __SWORD_TYPE           int\n"
6164 "#else /* __WORDSIZE == 64 */\n"
6165 "# define __SWORD_TYPE\t\tlong int\n"
6166 "#endif\n"
6167 msgstr ""
6168 "#if __WORDSIZE == 32\t\t/* システムのワードサイズ */\n"
6169 "# define __SWORD_TYPE           int\n"
6170 "#else /* __WORDSIZE == 64 */\n"
6171 "# define __SWORD_TYPE\t\tlong int\n"
6172 "#endif\n"
6173
6174 #. type: Plain text
6175 #: build/C/man2/statfs.2:70
6176 #, no-wrap
6177 msgid ""
6178 "struct statfs {\n"
6179 "    __SWORD_TYPE f_type;    /* type of filesystem (see below) */\n"
6180 "    __SWORD_TYPE f_bsize;   /* optimal transfer block size */\n"
6181 "    fsblkcnt_t   f_blocks;  /* total data blocks in filesystem */\n"
6182 "    fsblkcnt_t   f_bfree;   /* free blocks in fs */\n"
6183 "    fsblkcnt_t   f_bavail;  /* free blocks available to\n"
6184 "                               unprivileged user */\n"
6185 "    fsfilcnt_t   f_files;   /* total file nodes in filesystem */\n"
6186 "    fsfilcnt_t   f_ffree;   /* free file nodes in fs */\n"
6187 "    fsid_t       f_fsid;    /* filesystem id */\n"
6188 "    __SWORD_TYPE f_namelen; /* maximum length of filenames */\n"
6189 "    __SWORD_TYPE f_frsize;  /* fragment size (since Linux 2.6) */\n"
6190 "    __SWORD_TYPE f_spare[5];\n"
6191 "};\n"
6192 msgstr ""
6193 "struct statfs {\n"
6194 "    __SWORD_TYPE f_type;    /* ファイルシステムの種別 (下記参照) */\n"
6195 "    __SWORD_TYPE f_bsize;   /* 最適な転送ブロックサイズ */\n"
6196 "    fsblkcnt_t   f_blocks;  /* ファイルシステムの総データブロック数 */\n"
6197 "    fsblkcnt_t   f_bfree;   /* ファイルシステムの空きブロック数 */\n"
6198 "    fsblkcnt_t   f_bavail;  /* 非特権ユーザーが利用可能な空きブロック数 */\n"
6199 "    fsfilcnt_t   f_files;   /* ファイルシステムの総ファイルノード数 */\n"
6200 "    fsfilcnt_t   f_ffree;   /* ファイルシステムの空きファイルノード数 */\n"
6201 "    fsid_t       f_fsid;    /* ファイルシステムの ID */\n"
6202 "    __SWORD_TYPE f_namelen; /* ファイル名の最大長 */\n"
6203 "    __SWORD_TYPE f_frsize;  /* フラグメントサイズ (Linux 2.6 以降) */\n"
6204 "    __SWORD_TYPE f_spare[5];\n"
6205 "};\n"
6206
6207 #. type: Plain text
6208 #: build/C/man2/statfs.2:72
6209 #, no-wrap
6210 msgid "Filesystem types:\n"
6211 msgstr "ファイルシステムの型:\n"
6212
6213 #. type: Plain text
6214 #: build/C/man2/statfs.2:142
6215 #, no-wrap
6216 msgid ""
6217 "   ADFS_SUPER_MAGIC      0xadf5\n"
6218 "   AFFS_SUPER_MAGIC      0xADFF\n"
6219 "   BDEVFS_MAGIC          0x62646576\n"
6220 "   BEFS_SUPER_MAGIC      0x42465331\n"
6221 "   BFS_MAGIC             0x1BADFACE\n"
6222 "   BINFMTFS_MAGIC        0x42494e4d\n"
6223 "   BTRFS_SUPER_MAGIC     0x9123683E\n"
6224 "   CGROUP_SUPER_MAGIC    0x27e0eb\n"
6225 "   CIFS_MAGIC_NUMBER     0xFF534D42\n"
6226 "   CODA_SUPER_MAGIC      0x73757245\n"
6227 "   COH_SUPER_MAGIC       0x012FF7B7\n"
6228 "   CRAMFS_MAGIC          0x28cd3d45\n"
6229 "   DEBUGFS_MAGIC         0x64626720\n"
6230 "   DEVFS_SUPER_MAGIC     0x1373\n"
6231 "   DEVPTS_SUPER_MAGIC    0x1cd1\n"
6232 "   EFIVARFS_MAGIC        0xde5e81e4\n"
6233 "   EFS_SUPER_MAGIC       0x00414A53\n"
6234 "   EXT_SUPER_MAGIC       0x137D\n"
6235 "   EXT2_OLD_SUPER_MAGIC  0xEF51\n"
6236 "   EXT2_SUPER_MAGIC      0xEF53\n"
6237 "   EXT3_SUPER_MAGIC      0xEF53\n"
6238 "   EXT4_SUPER_MAGIC      0xEF53\n"
6239 "   FUSE_SUPER_MAGIC      0x65735546\n"
6240 "   FUTEXFS_SUPER_MAGIC   0xBAD1DEA\n"
6241 "   HFS_SUPER_MAGIC       0x4244\n"
6242 "   HOSTFS_SUPER_MAGIC    0x00c0ffee\n"
6243 "   HPFS_SUPER_MAGIC      0xF995E849\n"
6244 "   HUGETLBFS_MAGIC       0x958458f6\n"
6245 "   ISOFS_SUPER_MAGIC     0x9660\n"
6246 "   JFFS2_SUPER_MAGIC     0x72b6\n"
6247 "   JFS_SUPER_MAGIC       0x3153464a\n"
6248 "   MINIX_SUPER_MAGIC     0x137F /* orig. minix */\n"
6249 "   MINIX_SUPER_MAGIC2    0x138F /* 30 char minix */\n"
6250 "   MINIX2_SUPER_MAGIC    0x2468 /* minix V2 */\n"
6251 "   MINIX2_SUPER_MAGIC2   0x2478 /* minix V2, 30 char names */\n"
6252 "   MINIX3_SUPER_MAGIC    0x4d5a /* minix V3 fs, 60 char names */\n"
6253 "   MQUEUE_MAGIC          0x19800202\n"
6254 "   MSDOS_SUPER_MAGIC     0x4d44\n"
6255 "   NCP_SUPER_MAGIC       0x564c\n"
6256 "   NFS_SUPER_MAGIC       0x6969\n"
6257 "   NILFS_SUPER_MAGIC     0x3434\n"
6258 "   NTFS_SB_MAGIC         0x5346544e\n"
6259 "   OPENPROM_SUPER_MAGIC  0x9fa1\n"
6260 "   PIPEFS_MAGIC          0x50495045\n"
6261 "   PROC_SUPER_MAGIC      0x9fa0\n"
6262 "   PSTOREFS_MAGIC        0x6165676C\n"
6263 "   QNX4_SUPER_MAGIC      0x002f\n"
6264 "   QNX6_SUPER_MAGIC      0x68191122\n"
6265 "   RAMFS_MAGIC           0x858458f6\n"
6266 "   REISERFS_SUPER_MAGIC  0x52654973\n"
6267 "   ROMFS_MAGIC           0x7275\n"
6268 "   SELINUX_MAGIC         0xf97cff8c\n"
6269 "   SMACK_MAGIC           0x43415d53\n"
6270 "   SMB_SUPER_MAGIC       0x517B\n"
6271 "   SOCKFS_MAGIC          0x534F434B\n"
6272 "   SQUASHFS_MAGIC        0x73717368\n"
6273 "   SYSFS_MAGIC           0x62656572\n"
6274 "   SYSV2_SUPER_MAGIC     0x012FF7B6\n"
6275 "   SYSV4_SUPER_MAGIC     0x012FF7B5\n"
6276 "   TMPFS_MAGIC           0x01021994\n"
6277 "   UDF_SUPER_MAGIC       0x15013346\n"
6278 "   UFS_MAGIC             0x00011954\n"
6279 "   USBDEVICE_SUPER_MAGIC 0x9fa2\n"
6280 "   V9FS_MAGIC            0x01021997\n"
6281 "   VXFS_SUPER_MAGIC      0xa501FCF5\n"
6282 "   XENFS_SUPER_MAGIC     0xabba1974\n"
6283 "   XENIX_SUPER_MAGIC     0x012FF7B4\n"
6284 "   XFS_SUPER_MAGIC       0x58465342\n"
6285 "   _XIAFS_SUPER_MAGIC    0x012FD16D\n"
6286 msgstr ""
6287 "   ADFS_SUPER_MAGIC      0xadf5\n"
6288 "   AFFS_SUPER_MAGIC      0xADFF\n"
6289 "   BDEVFS_MAGIC          0x62646576\n"
6290 "   BEFS_SUPER_MAGIC      0x42465331\n"
6291 "   BFS_MAGIC             0x1BADFACE\n"
6292 "   BINFMTFS_MAGIC        0x42494e4d\n"
6293 "   BTRFS_SUPER_MAGIC     0x9123683E\n"
6294 "   CGROUP_SUPER_MAGIC    0x27e0eb\n"
6295 "   CIFS_MAGIC_NUMBER     0xFF534D42\n"
6296 "   CODA_SUPER_MAGIC      0x73757245\n"
6297 "   COH_SUPER_MAGIC       0x012FF7B7\n"
6298 "   CRAMFS_MAGIC          0x28cd3d45\n"
6299 "   DEBUGFS_MAGIC         0x64626720\n"
6300 "   DEVFS_SUPER_MAGIC     0x1373\n"
6301 "   DEVPTS_SUPER_MAGIC    0x1cd1\n"
6302 "   EFIVARFS_MAGIC        0xde5e81e4\n"
6303 "   EFS_SUPER_MAGIC       0x00414A53\n"
6304 "   EXT_SUPER_MAGIC       0x137D\n"
6305 "   EXT2_OLD_SUPER_MAGIC  0xEF51\n"
6306 "   EXT2_SUPER_MAGIC      0xEF53\n"
6307 "   EXT3_SUPER_MAGIC      0xEF53\n"
6308 "   EXT4_SUPER_MAGIC      0xEF53\n"
6309 "   FUSE_SUPER_MAGIC      0x65735546\n"
6310 "   FUTEXFS_SUPER_MAGIC   0xBAD1DEA\n"
6311 "   HFS_SUPER_MAGIC       0x4244\n"
6312 "   HOSTFS_SUPER_MAGIC    0x00c0ffee\n"
6313 "   HPFS_SUPER_MAGIC      0xF995E849\n"
6314 "   HUGETLBFS_MAGIC       0x958458f6\n"
6315 "   ISOFS_SUPER_MAGIC     0x9660\n"
6316 "   JFFS2_SUPER_MAGIC     0x72b6\n"
6317 "   JFS_SUPER_MAGIC       0x3153464a\n"
6318 "   MINIX_SUPER_MAGIC     0x137F /* オリジナルの minix */\n"
6319 "   MINIX_SUPER_MAGIC2    0x138F /* 30 文字ファイル名の minix */\n"
6320 "   MINIX2_SUPER_MAGIC    0x2468 /* minix V2 */\n"
6321 "   MINIX2_SUPER_MAGIC2   0x2478 /* minix V2, 30 文字ファイル名 */\n"
6322 "   MINIX3_SUPER_MAGIC    0x4d5a /* minix V3 ファイルシステム, 60 文字ファイル名 */\n"
6323 "   MQUEUE_MAGIC          0x19800202\n"
6324 "   MSDOS_SUPER_MAGIC     0x4d44\n"
6325 "   NCP_SUPER_MAGIC       0x564c\n"
6326 "   NFS_SUPER_MAGIC       0x6969\n"
6327 "   NILFS_SUPER_MAGIC     0x3434\n"
6328 "   NTFS_SB_MAGIC         0x5346544e\n"
6329 "   OPENPROM_SUPER_MAGIC  0x9fa1\n"
6330 "   PIPEFS_MAGIC          0x50495045\n"
6331 "   PROC_SUPER_MAGIC      0x9fa0\n"
6332 "   PSTOREFS_MAGIC        0x6165676C\n"
6333 "   QNX4_SUPER_MAGIC      0x002f\n"
6334 "   QNX6_SUPER_MAGIC      0x68191122\n"
6335 "   RAMFS_MAGIC           0x858458f6\n"
6336 "   REISERFS_SUPER_MAGIC  0x52654973\n"
6337 "   ROMFS_MAGIC           0x7275\n"
6338 "   SELINUX_MAGIC         0xf97cff8c\n"
6339 "   SMACK_MAGIC           0x43415d53\n"
6340 "   SMB_SUPER_MAGIC       0x517B\n"
6341 "   SOCKFS_MAGIC          0x534F434B\n"
6342 "   SQUASHFS_MAGIC        0x73717368\n"
6343 "   SYSFS_MAGIC           0x62656572\n"
6344 "   SYSV2_SUPER_MAGIC     0x012FF7B6\n"
6345 "   SYSV4_SUPER_MAGIC     0x012FF7B5\n"
6346 "   TMPFS_MAGIC           0x01021994\n"
6347 "   UDF_SUPER_MAGIC       0x15013346\n"
6348 "   UFS_MAGIC             0x00011954\n"
6349 "   USBDEVICE_SUPER_MAGIC 0x9fa2\n"
6350 "   V9FS_MAGIC            0x01021997\n"
6351 "   VXFS_SUPER_MAGIC      0xa501FCF5\n"
6352 "   XENFS_SUPER_MAGIC     0xabba1974\n"
6353 "   XENIX_SUPER_MAGIC     0x012FF7B4\n"
6354 "   XFS_SUPER_MAGIC       0x58465342\n"
6355 "   _XIAFS_SUPER_MAGIC    0x012FD16D\n"
6356
6357 #. type: Plain text
6358 #: build/C/man2/statfs.2:148
6359 msgid "Most of these MAGIC constants are defined in I</usr/include/linux/magic.h>, and some are hardcoded in kernel sources."
6360 msgstr "これらの MAGIC 定数のほとんどは I</usr/include/linux/magic.h> で定義されており、いくつかはカーネルソースで直接書かれている。"
6361
6362 #. type: Plain text
6363 #: build/C/man2/statfs.2:152
6364 msgid "Nobody knows what I<f_fsid> is supposed to contain (but see below)."
6365 msgstr "I<f_fsid> にどんな値が入るべきなのかは誰も知らない (但し、下記を参照)。"
6366
6367 #. type: Plain text
6368 #: build/C/man2/statfs.2:157
6369 msgid "Fields that are undefined for a particular filesystem are set to 0.  B<fstatfs>()  returns the same information about an open file referenced by descriptor I<fd>."
6370 msgstr "それぞれのファイルシステムにおいて未定義のフィールドには 0 が 設定される。 B<fstatfs>()  はディスクリプター I<fd> によって参照されるオープンされたファイルについて、同じ情報を返す。"
6371
6372 #. type: Plain text
6373 #: build/C/man2/statfs.2:170
6374 msgid "(B<statfs>())  Search permission is denied for a component of the path prefix of I<path>.  (See also B<path_resolution>(7).)"
6375 msgstr "(B<statfs>()  の場合)  I<path> のディレクトリ部分に検索許可が与えられていない (B<path_resolution>(7)  も参照すること)。"
6376
6377 #. type: Plain text
6378 #: build/C/man2/statfs.2:175
6379 msgid "(B<fstatfs>())  I<fd> is not a valid open file descriptor."
6380 msgstr "(B<fstatfs>()  の場合)  I<fd> は有効なオープンされたファイルディスクリプターではない。"
6381
6382 #. type: Plain text
6383 #: build/C/man2/statfs.2:181
6384 msgid "I<buf> or I<path> points to an invalid address."
6385 msgstr "I<buf> または I<path> が不正なアドレスを指している。"
6386
6387 #. type: Plain text
6388 #: build/C/man2/statfs.2:184 build/C/man3/statvfs.3:123
6389 msgid "This call was interrupted by a signal."
6390 msgstr "この呼び出しがシグナルで中断された。"
6391
6392 #. type: TP
6393 #: build/C/man2/statfs.2:184 build/C/man3/statvfs.3:123
6394 #, no-wrap
6395 msgid "B<EIO>"
6396 msgstr "B<EIO>"
6397
6398 #. type: Plain text
6399 #: build/C/man2/statfs.2:187 build/C/man3/statvfs.3:126
6400 msgid "An I/O error occurred while reading from the filesystem."
6401 msgstr "ファイルシステムからの読み込みの間に I/O エラーが発生した。"
6402
6403 #. type: Plain text
6404 #: build/C/man2/statfs.2:192
6405 msgid "(B<statfs>())  Too many symbolic links were encountered in translating I<path>."
6406 msgstr "(B<statfs>()  の場合)  I<path> を解決するのに辿るべきシンボリックリンクが多すぎる。"
6407
6408 #. type: Plain text
6409 #: build/C/man2/statfs.2:197
6410 msgid "(B<statfs>())  I<path> is too long."
6411 msgstr "(B<statfs>()  の場合)  I<path> が長過ぎる。"
6412
6413 #. type: Plain text
6414 #: build/C/man2/statfs.2:203
6415 msgid "(B<statfs>())  The file referred to by I<path> does not exist."
6416 msgstr "(B<statfs>()  の場合)  I<path> によって参照されるファイルが存在しない。"
6417
6418 #. type: Plain text
6419 #: build/C/man2/statfs.2:206 build/C/man3/statvfs.3:145
6420 msgid "Insufficient kernel memory was available."
6421 msgstr "十分なカーネルメモリーがない。"
6422
6423 #. type: Plain text
6424 #: build/C/man2/statfs.2:209 build/C/man3/statvfs.3:148
6425 msgid "The filesystem does not support this call."
6426 msgstr "ファイルシステムがこの呼び出しをサポートしていない。"
6427
6428 #. type: Plain text
6429 #: build/C/man2/statfs.2:215
6430 msgid "(B<statfs>())  A component of the path prefix of I<path> is not a directory."
6431 msgstr "(B<statfs>()  の場合)  I<path> のディレクトリ部分がディレクトリでない。"
6432
6433 #. type: Plain text
6434 #: build/C/man2/statfs.2:218 build/C/man3/statvfs.3:157
6435 msgid "Some values were too large to be represented in the returned struct."
6436 msgstr "いくつかの値が大き過ぎて、返り値の構造体で表現できない。"
6437
6438 #. type: Plain text
6439 #: build/C/man2/statfs.2:224
6440 msgid "Linux-specific.  The Linux B<statfs>()  was inspired by the 4.4BSD one (but they do not use the same structure)."
6441 msgstr "Linux 固有である。 Linux の B<statfs>()  は 4.4BSD のものに影響を受けている。 (しかし同じ構造体を使用しているわけではない)"
6442
6443 #. type: Plain text
6444 #: build/C/man2/statfs.2:246
6445 msgid "The original Linux B<statfs>()  and B<fstatfs>()  system calls were not designed with extremely large file sizes in mind.  Subsequently, Linux 2.6 added new B<statfs64>()  and B<fstatfs64>()  system calls that employ a new structure, I<statfs64>.  The new structure contains the same fields as the original I<statfs> structure, but the sizes of various fields are increased, to accommodate large file sizes.  The glibc B<statfs>()  and B<fstatfs>()  wrapper functions transparently deal with the kernel differences."
6446 msgstr ""
6447 "元々の Linux の B<statfs>() と B<fstatfs>() システムコールは\n"
6448 "非常に大きなファイルサイズを念頭に入れて設計されていなかった。\n"
6449 "その後、Linux 2.6 で、新しい構造体 I<statfs64> を使用する\n"
6450 "新しいシステムコール B<statfs64>() と B<fstatfs64>() が追加された。\n"
6451 "新しい構造体は元の I<statfs> 構造体と同じフィールドを持つが、\n"
6452 "いろいろなフィールドのサイズが大きなファイルサイズに対応できるように\n"
6453 "増やされている。 glibc の B<statfs>() と B<fstatfs>() のラッパー関数は\n"
6454 "カーネルによるこれらの違いを吸収している。"
6455
6456 #. type: Plain text
6457 #: build/C/man2/statfs.2:251
6458 msgid "Some systems only have I<E<lt>sys/vfs.hE<gt>>, other systems also have I<E<lt>sys/statfs.hE<gt>>, where the former includes the latter.  So it seems including the former is the best choice."
6459 msgstr "I<E<lt>sys/vfs.hE<gt>> しか持たないシステムもあり、 I<E<lt>sys/statfs.hE<gt>> も持っているシステムもある。 前者は後者をインクルードするので、 前者をインクルードするのが良いと考えられる。"
6460
6461 #. type: Plain text
6462 #: build/C/man2/statfs.2:261
6463 msgid "LSB has deprecated the library calls B<statfs>()  and B<fstatfs>()  and tells us to use B<statvfs>(2)  and B<fstatvfs>(2)  instead."
6464 msgstr "LSB ではライブラリコール B<statfs>(), B<fstatfs>()  を非推奨として、代わりに B<statvfs>(2), B<fstatvfs>(2)  を使うように指示している。"
6465
6466 #. type: SS
6467 #: build/C/man2/statfs.2:261
6468 #, no-wrap
6469 msgid "The f_fsid field"
6470 msgstr "f_fsid フィールド"
6471
6472 #. type: Plain text
6473 #: build/C/man2/statfs.2:286
6474 msgid "Solaris, Irix and POSIX have a system call B<statvfs>(2)  that returns a I<struct statvfs> (defined in I<E<lt>sys/statvfs.hE<gt>>)  containing an I<unsigned long> I<f_fsid>.  Linux, SunOS, HP-UX, 4.4BSD have a system call B<statfs>()  that returns a I<struct statfs> (defined in I<E<lt>sys/vfs.hE<gt>>)  containing a I<fsid_t> I<f_fsid>, where I<fsid_t> is defined as I<struct { int val[2]; }>.  The same holds for FreeBSD, except that it uses the include file I<E<lt>sys/mount.hE<gt>>."
6475 msgstr "Solaris, Irix, POSIX にはシステムコール B<statvfs>(2)  があり、 I<struct statvfs> を返す (I<E<lt>sys/statvfs.hE<gt>> で定義されている)。 この構造体には、 I<unsigned long> I<f_fsid> が含まれている。 Linux, SunOS, HP-UX, 4.4BSD にはシステムコール B<statfs>()  があり、 I<struct statfs> を返す (I<E<lt>sys/vfs.hE<gt>> で定義されている)。 この構造体には I<fsid_t> I<f_fsid>, が含まれており、 I<fsid_t> は I<struct { int val[2]; }> と定義されている。 FreeBSD でも同じであるが、インクルードファイル I<E<lt>sys/mount.hE<gt>> を使う。"
6476
6477 #. type: Plain text
6478 #: build/C/man2/statfs.2:299
6479 msgid "The general idea is that I<f_fsid> contains some random stuff such that the pair (I<f_fsid>,I<ino>)  uniquely determines a file.  Some operating systems use (a variation on) the device number, or the device number combined with the filesystem type.  Several operating systems restrict giving out the I<f_fsid> field to the superuser only (and zero it for unprivileged users), because this field is used in the filehandle of the filesystem when NFS-exported, and giving it out is a security concern."
6480 msgstr "I<f_fsid> はあるランダムな値を持ち、 (I<f_fsid>,I<ino>)  という 1 組の値でファイルを一意に決定できるようにする、 というのが基本的な考え方である。 いくつかの OS では、デバイス番号 (の変種) を使ったり、 デバイス番号とファイルシステムタイプを組み合わせて使ったりしている。 OS の中には I<f_fsid> フィールドの取得をスーパーユーザーに限定しているものもある (非特権ユーザーが取得すると 0 となる)。 NFS でエクスポートされる場合、 このフィールドがファイルシステムのファイルハンドルで使われており、 この値を提供するとセキュリティ上の問題がある。"
6481
6482 #. type: Plain text
6483 #: build/C/man2/statfs.2:305
6484 msgid "Under some operating systems, the I<fsid> can be used as the second argument to the B<sysfs>(2)  system call."
6485 msgstr "いくつかの OS では、 I<fsid> を B<sysfs>(2)  システムコールの第 2 引き数として使用できる。"
6486
6487 #.  broken in commit ff0c7d15f9787b7e8c601533c015295cc68329f8
6488 #.  fixed in commit d70ef97baf048412c395bb5d65791d8fe133a52b
6489 #. type: Plain text
6490 #: build/C/man2/statfs.2:314
6491 msgid "From Linux 2.6.38 up to and including Linux 3.1, B<fstatfs>()  failed with the error B<ENOSYS> for file descriptors created by B<pipe>(2)."
6492 msgstr "Linux 2.6.38 から Linux 3.1 までは (3.1 を含む)、 B<fstatfs>() は B<pipe>(2) で作成されたファイルディスクリプターに対してはエラー B<ENOSYS> で失敗していた。"
6493
6494 #. type: Plain text
6495 #: build/C/man2/statfs.2:318
6496 msgid "B<stat>(2), B<statvfs>(2), B<path_resolution>(7)"
6497 msgstr "B<stat>(2), B<statvfs>(2), B<path_resolution>(7)"
6498
6499 #. type: TH
6500 #: build/C/man3/statvfs.3:30
6501 #, no-wrap
6502 msgid "STATVFS"
6503 msgstr "STATVFS"
6504
6505 #. type: TH
6506 #: build/C/man3/statvfs.3:30
6507 #, no-wrap
6508 msgid "2013-09-26"
6509 msgstr "2013-09-26"
6510
6511 #. type: Plain text
6512 #: build/C/man3/statvfs.3:33
6513 msgid "statvfs, fstatvfs - get filesystem statistics"
6514 msgstr "statvfs, fstatvfs - ファイルシステムの統計を取得する"
6515
6516 #. type: Plain text
6517 #: build/C/man3/statvfs.3:35
6518 msgid "B<#include E<lt>sys/statvfs.hE<gt>>"
6519 msgstr "B<#include E<lt>sys/statvfs.hE<gt>>"
6520
6521 #. type: Plain text
6522 #: build/C/man3/statvfs.3:37
6523 msgid "B<int statvfs(const char *>I<path>B<, struct statvfs *>I<buf>B<);>"
6524 msgstr "B<int statvfs(const char *>I<path>B<, struct statvfs *>I<buf>B<);>"
6525
6526 #. type: Plain text
6527 #: build/C/man3/statvfs.3:39
6528 msgid "B<int fstatvfs(int >I<fd>B<, struct statvfs *>I<buf>B<);>"
6529 msgstr "B<int fstatvfs(int >I<fd>B<, struct statvfs *>I<buf>B<);>"
6530
6531 #. type: Plain text
6532 #: build/C/man3/statvfs.3:49
6533 msgid "The function B<statvfs>()  returns information about a mounted filesystem.  I<path> is the pathname of any file within the mounted filesystem.  I<buf> is a pointer to a I<statvfs> structure defined approximately as follows:"
6534 msgstr "関数 B<statvfs>()  はマウントされたファイルシステムについての情報を返す。 I<path> はマウントされたファイルシステム中の任意のファイルのパス名である。 I<buf> は、だいたい以下のように定義されている I<statvfs> 構造体へのポインターである:"
6535
6536 #. type: Plain text
6537 #: build/C/man3/statvfs.3:65
6538 #, no-wrap
6539 msgid ""
6540 "struct statvfs {\n"
6541 "    unsigned long  f_bsize;    /* filesystem block size */\n"
6542 "    unsigned long  f_frsize;   /* fragment size */\n"
6543 "    fsblkcnt_t     f_blocks;   /* size of fs in f_frsize units */\n"
6544 "    fsblkcnt_t     f_bfree;    /* # free blocks */\n"
6545 "    fsblkcnt_t     f_bavail;   /* # free blocks for unprivileged users */\n"
6546 "    fsfilcnt_t     f_files;    /* # inodes */\n"
6547 "    fsfilcnt_t     f_ffree;    /* # free inodes */\n"
6548 "    fsfilcnt_t     f_favail;   /* # free inodes for unprivileged users */\n"
6549 "    unsigned long  f_fsid;     /* filesystem ID */\n"
6550 "    unsigned long  f_flag;     /* mount flags */\n"
6551 "    unsigned long  f_namemax;  /* maximum filename length */\n"
6552 "};\n"
6553 msgstr ""
6554 "struct statvfs {\n"
6555 "    unsigned long  f_bsize;    /* ファイルシステムのブロックサイズ */\n"
6556 "    unsigned long  f_frsize;   /* フラグメントサイズ */\n"
6557 "    fsblkcnt_t     f_blocks;   /* ファイルシステムのサイズ (f_frsize 単位) */\n"
6558 "    fsblkcnt_t     f_bfree;    /* 解放されているブロック数 */\n"
6559 "    fsblkcnt_t     f_bafvail;   /* 非特権ユーザー用に解放されているブロック数 */\n"
6560 "    fsfilcnt_t     f_files;    /* inode 数 */\n"
6561 "    fsfilcnt_t     f_ffree;    /* 解放されている inode の数 */\n"
6562 "    fsfilcnt_t     f_favail;   /* 非特権ユーザー用に解放されている inode の数 */\n"
6563 "    unsigned long  f_fsid;     /* ファイルシステム ID */\n"
6564 "    unsigned long  f_flag;     /* マウントフラグ */\n"
6565 "    unsigned long  f_namemax;  /* ファイル名の長さの最大値 */\n"
6566 "};\n"
6567
6568 #. type: Plain text
6569 #: build/C/man3/statvfs.3:76
6570 msgid "Here the types I<fsblkcnt_t> and I<fsfilcnt_t> are defined in I<E<lt>sys/types.hE<gt>>.  Both used to be I<unsigned long>."
6571 msgstr "ここで、型 I<fsblkcnt_t> と I<fsfilcnt_t> は I<E<lt>sys/types.hE<gt>> で定義されている。 かつて、これらは共に I<unsigned long> であった。"
6572
6573 #. type: Plain text
6574 #: build/C/man3/statvfs.3:82
6575 msgid "The field I<f_flag> is a bit mask (of mount flags, see B<mount>(8)).  Bits defined by POSIX are"
6576 msgstr "フィールド I<f_flag> は (マウントフラグの) ビットマスクである (マウントフラグについては、 B<mount>(8)  を参照すること)。 POSIX で定義されているビットは以下の通り:"
6577
6578 #. type: TP
6579 #: build/C/man3/statvfs.3:82
6580 #, no-wrap
6581 msgid "B<ST_RDONLY>"
6582 msgstr "B<ST_RDONLY>"
6583
6584 #. type: Plain text
6585 #: build/C/man3/statvfs.3:85
6586 msgid "Read-only filesystem."
6587 msgstr "読み込み専用のファイルシステム。"
6588
6589 #. type: TP
6590 #: build/C/man3/statvfs.3:85
6591 #, no-wrap
6592 msgid "B<ST_NOSUID>"
6593 msgstr "B<ST_NOSUID>"
6594
6595 #. type: Plain text
6596 #: build/C/man3/statvfs.3:89
6597 msgid "Set-user-ID/set-group-ID bits are ignored by B<exec>(3)."
6598 msgstr "B<exec>(3)  に無視される set-user-id/set-group-ID ビット。"
6599
6600 #. type: Plain text
6601 #: build/C/man3/statvfs.3:92
6602 msgid "It is unspecified whether all members of the returned struct have meaningful values on all filesystems."
6603 msgstr "返された構造体の全てのメンバが全てのファイルシステムで 意味のある値であるか否かは、指定されていない。"
6604
6605 #. type: Plain text
6606 #: build/C/man3/statvfs.3:96
6607 msgid "B<fstatvfs>()  returns the same information about an open file referenced by descriptor I<fd>."
6608 msgstr "B<fstatvfs>()  は、ディスクリプター I<fd> で参照されるオープンされたファイルについて、同じ情報を返す。"
6609
6610 #. type: Plain text
6611 #: build/C/man3/statvfs.3:109
6612 msgid "(B<statvfs>())  Search permission is denied for a component of the path prefix of I<path>.  (See also B<path_resolution>(7).)"
6613 msgstr "(B<statvfs>()  の場合)  I<path> のディレクトリ部分に検索許可が与えられていない (B<path_resolution>(7)  も参照すること)。"
6614
6615 #. type: Plain text
6616 #: build/C/man3/statvfs.3:114
6617 msgid "(B<fstatvfs>())  I<fd> is not a valid open file descriptor."
6618 msgstr "(B<fstatvfs>()  の場合)  I<fd> が有効なオープンファイルディスクリプターではない。"
6619
6620 #. type: Plain text
6621 #: build/C/man3/statvfs.3:120
6622 msgid "I<Buf> or I<path> points to an invalid address."
6623 msgstr "I<buf> または I<path> が無効なアドレスを指している。"
6624
6625 #. type: Plain text
6626 #: build/C/man3/statvfs.3:131
6627 msgid "(B<statvfs>())  Too many symbolic links were encountered in translating I<path>."
6628 msgstr "(B<statvfs>()  の場合)  I<path> にシンボリックリンクが多すぎる。"
6629
6630 #. type: Plain text
6631 #: build/C/man3/statvfs.3:136
6632 msgid "(B<statvfs>())  I<path> is too long."
6633 msgstr "(B<statvfs>()  の場合)  I<path> が長すぎる。"
6634
6635 #. type: Plain text
6636 #: build/C/man3/statvfs.3:142
6637 msgid "(B<statvfs>())  The file referred to by I<path> does not exist."
6638 msgstr "(B<statvfs>()  の場合)  I<path> で参照されるファイルが存在しない。"
6639
6640 #. type: Plain text
6641 #: build/C/man3/statvfs.3:154
6642 msgid "(B<statvfs>())  A component of the path prefix of I<path> is not a directory."
6643 msgstr "(B<statvfs>()  の場合)  I<path> のディレクトリ部分がディレクトリでない。"
6644
6645 #. type: SH
6646 #: build/C/man3/statvfs.3:157
6647 #, no-wrap
6648 msgid "ATTRIBUTES"
6649 msgstr "属性"
6650
6651 #. type: SS
6652 #: build/C/man3/statvfs.3:158
6653 #, no-wrap
6654 msgid "Multithreading (see pthreads(7))"
6655 msgstr "マルチスレッディング (pthreads(7) 参照)"
6656
6657 #. type: Plain text
6658 #: build/C/man3/statvfs.3:164
6659 msgid "The B<statvfs>()  and B<fstatvfs>()  functions are thread-safe."
6660 msgstr "関数 B<statvfs>() と B<fstatvfs>()はスレッドセーフである。"
6661
6662 #. type: Plain text
6663 #: build/C/man3/statvfs.3:166
6664 msgid "POSIX.1-2001."
6665 msgstr "POSIX.1-2001."
6666
6667 #. type: Plain text
6668 #: build/C/man3/statvfs.3:172
6669 msgid "The Linux kernel has system calls B<statfs>(2)  and B<fstatfs>(2)  to support this library call."
6670 msgstr "Linux カーネルには、このライブラリコールをサポートするために、 B<statfs>(2), B<fstatfs>(2)  システムコールがある。"
6671
6672 #. type: Plain text
6673 #: build/C/man3/statvfs.3:174
6674 msgid "The current glibc implementations of"
6675 msgstr "現在の glibc の実装において、"
6676
6677 #. type: Plain text
6678 #: build/C/man3/statvfs.3:179
6679 #, no-wrap
6680 msgid ""
6681 "   pathconf(path, _PC_REC_XFER_ALIGN);\n"
6682 "   pathconf(path, _PC_ALLOC_SIZE_MIN);\n"
6683 "   pathconf(path, _PC_REC_MIN_XFER_SIZE);\n"
6684 msgstr ""
6685 "   pathconf(path, _PC_REC_XFER_ALIGN);\n"
6686 "   pathconf(path, _PC_ALLOC_SIZE_MIN);\n"
6687 "   pathconf(path, _PC_REC_MIN_XFER_SIZE);\n"
6688
6689 #. type: Plain text
6690 #: build/C/man3/statvfs.3:188
6691 msgid "respectively use the I<f_frsize>, I<f_frsize>, and I<f_bsize> fields of the return value of I<statvfs(path,buf)>."
6692 msgstr "は、それぞれ I<statvfs(path,buf)> の返り値の I<f_frsize>, I<f_frsize>, I<f_bsize> フィールドを使う。"
6693
6694 #. type: Plain text
6695 #: build/C/man3/statvfs.3:190
6696 msgid "B<statfs>(2)"
6697 msgstr "B<statfs>(2)"
6698
6699 #. type: TH
6700 #: build/C/man2/sysfs.2:27
6701 #, no-wrap
6702 msgid "SYSFS"
6703 msgstr "SYSFS"
6704
6705 #. type: TH
6706 #: build/C/man2/sysfs.2:27
6707 #, no-wrap
6708 msgid "2010-06-27"
6709 msgstr "2010-06-27"
6710
6711 #. type: Plain text
6712 #: build/C/man2/sysfs.2:30
6713 msgid "sysfs - get filesystem type information"
6714 msgstr "sysfs - ファイルシステム (file system) の情報を取得する"
6715
6716 #. type: Plain text
6717 #: build/C/man2/sysfs.2:32
6718 msgid "B<int sysfs(int >I<option>B<, const char *>I<fsname>B<);>"
6719 msgstr "B<int sysfs(int >I<option>B<, const char *>I<fsname>B<);>"
6720
6721 #. type: Plain text
6722 #: build/C/man2/sysfs.2:34
6723 msgid "B<int sysfs(int >I<option>B<, unsigned int >I<fs_index>B<, char *>I<buf>B<);>"
6724 msgstr "B<int sysfs(int >I<option>B<, unsigned int >I<fs_index>B<, char *>I<buf>B<);>"
6725
6726 #. type: Plain text
6727 #: build/C/man2/sysfs.2:36
6728 msgid "B<int sysfs(int >I<option>B<);>"
6729 msgstr "B<int sysfs(int >I<option>B<);>"
6730
6731 #. type: Plain text
6732 #: build/C/man2/sysfs.2:45
6733 msgid "B<sysfs>()  returns information about the filesystem types currently present in the kernel.  The specific form of the B<sysfs>()  call and the information returned depends on the I<option> in effect:"
6734 msgstr "B<sysfs>()  は現在カーネル (kernel) に存在しているファイルシステムの型 (type) 情報を返す。 それぞれの B<sysfs>()  コールの形式と返される情報は I<option> に依存しており、それは:"
6735
6736 #. type: TP
6737 #: build/C/man2/sysfs.2:45
6738 #, no-wrap
6739 msgid "B<1>"
6740 msgstr "B<1>"
6741
6742 #. type: Plain text
6743 #: build/C/man2/sysfs.2:50
6744 msgid "Translate the filesystem identifier string I<fsname> into a filesystem type index."
6745 msgstr "ファイルシステム識別文字列 (identifier string)  I<fsname> をファイルシステムの型インデックス (type index) に翻訳する。"
6746
6747 #. type: TP
6748 #: build/C/man2/sysfs.2:50
6749 #, no-wrap
6750 msgid "B<2>"
6751 msgstr "B<2>"
6752
6753 #. type: Plain text
6754 #: build/C/man2/sysfs.2:61
6755 msgid "Translate the filesystem type index I<fs_index> into a null-terminated filesystem identifier string.  This string will be written to the buffer pointed to by I<buf>.  Make sure that I<buf> has enough space to accept the string."
6756 msgstr "ファイルシステムの型インデックス I<fs_index> をヌル終端されたファイルシステム識別文字列に翻訳する。 この文字列は I<buf> で指定されたバッファーへ書き込まれる。 I<buf> に文字列を入れるだけの十分な容量があることを確かめること。"
6757
6758 #. type: TP
6759 #: build/C/man2/sysfs.2:61
6760 #, no-wrap
6761 msgid "B<3>"
6762 msgstr "B<3>"
6763
6764 #. type: Plain text
6765 #: build/C/man2/sysfs.2:65
6766 msgid "Return the total number of filesystem types currently present in the kernel."
6767 msgstr "現在カーネルに存在するファイルシステム型の数の合計を返す。"
6768
6769 #. type: Plain text
6770 #: build/C/man2/sysfs.2:67
6771 msgid "The numbering of the filesystem type indexes begins with zero."
6772 msgstr "ファイルシステムの型インデックスの数はゼロから始まる。"
6773
6774 #. type: Plain text
6775 #: build/C/man2/sysfs.2:79
6776 msgid "On success, B<sysfs>()  returns the filesystem index for option B<1>, zero for option B<2>, and the number of currently configured filesystems for option B<3>.  On error, -1 is returned, and I<errno> is set appropriately."
6777 msgstr "成功した場合 B<sysfs>()  は、 オプション B<1> では ファイルシステムのインデックスを返す。 オプション B<2> ではゼロを返す。 オプション B<3> は現在設定されているファイルシステムの数を返す。 エラーの場合は、-1 が返され、 I<errno> が適切に設定される。"
6778
6779 #. type: Plain text
6780 #: build/C/man2/sysfs.2:84
6781 msgid "Either I<fsname> or I<buf> is outside your accessible address space."
6782 msgstr "fsnameI< と >buf のどちらかがアクセス可能なアドレス空間の外にある。"
6783
6784 #. type: Plain text
6785 #: build/C/man2/sysfs.2:92
6786 msgid "I<fsname> is not a valid filesystem type identifier; I<fs_index> is out-of-bounds; I<option> is invalid."
6787 msgstr "I<fsname> が正しいファイルシステムの型識別子ではない; I<fs_index> が範囲の外にある; I<option> が正しくない。"
6788
6789 #.  SVr4 documents additional error conditions ENOLINK, ECOMM, and EINTR
6790 #.  but has no ENOSYS condition.
6791 #. type: Plain text
6792 #: build/C/man2/sysfs.2:94 build/C/man2/ustat.2:98
6793 msgid "SVr4."
6794 msgstr "SVr4."
6795
6796 #. type: Plain text
6797 #: build/C/man2/sysfs.2:101
6798 msgid "This System-V derived system call is obsolete; don't use it.  On systems with I</proc>, the same information can be obtained via I</proc/filesystems>; use that interface instead."
6799 msgstr "この System-V 由来のシステムコールは廃止予定 (obsolete) であり、 使用しないこと。 I</proc> が利用できるシステムでは、同じ情報が I</proc/filesystems> 経由で取得でき、このインターフェースを使用すること。"
6800
6801 #. type: Plain text
6802 #: build/C/man2/sysfs.2:104
6803 msgid "There is no libc or glibc support.  There is no way to guess how large I<buf> should be."
6804 msgstr "libc または glibc のサポートは存在しない。 I<buf> の大きさがどれだけ必要かを推測する方法がない。"
6805
6806 #. type: TH
6807 #: build/C/man2/umount.2:30
6808 #, no-wrap
6809 msgid "UMOUNT"
6810 msgstr "UMOUNT"
6811
6812 #. type: TH
6813 #: build/C/man2/umount.2:30
6814 #, no-wrap
6815 msgid "2014-02-26"
6816 msgstr "2014-02-26"
6817
6818 #. type: Plain text
6819 #: build/C/man2/umount.2:33
6820 msgid "umount, umount2 - unmount filesystem"
6821 msgstr "umount, umount2 - ファイルシステムをアンマウントする"
6822
6823 #. type: Plain text
6824 #: build/C/man2/umount.2:38
6825 #, no-wrap
6826 msgid "B<int umount(const char *>I<target>B<);>\n"
6827 msgstr "B<int umount(const char *>I<target>B<);>\n"
6828
6829 #. type: Plain text
6830 #: build/C/man2/umount.2:40
6831 #, no-wrap
6832 msgid "B<int umount2(const char *>I<target>B<, int >I<flags>B<);>\n"
6833 msgstr "B<int umount2(const char *>I<target>B<, int >I<flags>B<);>\n"
6834
6835 #.  Note: the kernel naming differs from the glibc naming
6836 #.  umount2 is the glibc name for what the kernel now calls umount
6837 #.  and umount is the glibc name for oldumount
6838 #. type: Plain text
6839 #: build/C/man2/umount.2:50
6840 msgid "B<umount>()  and B<umount2>()  remove the attachment of the (topmost) filesystem mounted on I<target>."
6841 msgstr "B<umount>()  と B<umount2>()  は I<target> にマウントされている (最上位の) ファイルシステムを外す。"
6842
6843 #. type: Plain text
6844 #: build/C/man2/umount.2:54
6845 msgid "Appropriate privilege (Linux: the B<CAP_SYS_ADMIN> capability) is required to unmount filesystems."
6846 msgstr "ファイルシステムのアンマウントを行うには、 適切な権限 (Linux では B<CAP_SYS_ADMIN> ケーパビリティ) が必要である。"
6847
6848 #. type: Plain text
6849 #: build/C/man2/umount.2:62
6850 msgid "Linux 2.1.116 added the B<umount2>()  system call, which, like B<umount>(), unmounts a target, but allows additional I<flags> controlling the behavior of the operation:"
6851 msgstr "Linux 2.1.116 から、 B<umount2>()  システムコールが追加された。これは B<umount>()  と同様に I<target> をアンマウントするが、 I<flags> が追加されており、操作時の振る舞いを制御できる。"
6852
6853 #. type: TP
6854 #: build/C/man2/umount.2:62
6855 #, no-wrap
6856 msgid "B<MNT_FORCE> (since Linux 2.1.116)"
6857 msgstr "B<MNT_FORCE> (2.1.116 以降)"
6858
6859 #. type: Plain text
6860 #: build/C/man2/umount.2:67
6861 msgid "Force unmount even if busy.  This can cause data loss.  (Only for NFS mounts.)"
6862 msgstr "使用中 (busy) でも強制的にアンマウントを実行する。 これを行うとデータを失う可能性がある。 (NFS マウント専用)"
6863
6864 #. type: TP
6865 #: build/C/man2/umount.2:67
6866 #, no-wrap
6867 msgid "B<MNT_DETACH> (since Linux 2.4.11)"
6868 msgstr "B<MNT_DETACH> (2.4.11 以降)"
6869
6870 #. type: Plain text
6871 #: build/C/man2/umount.2:72
6872 msgid "Perform a lazy unmount: make the mount point unavailable for new accesses, and actually perform the unmount when the mount point ceases to be busy."
6873 msgstr "遅延アンマウントを行う。マウントポイントに対する新規のアクセスは 不可能となり、実際のアンマウントはマウントポイントがビジーで なくなった時点で行う。"
6874
6875 #. type: TP
6876 #: build/C/man2/umount.2:72
6877 #, no-wrap
6878 msgid "B<MNT_EXPIRE> (since Linux 2.6.8)"
6879 msgstr "B<MNT_EXPIRE> (Linux 2.6.8 以降)"
6880
6881 #. type: Plain text
6882 #: build/C/man2/umount.2:91
6883 msgid "Mark the mount point as expired.  If a mount point is not currently in use, then an initial call to B<umount2>()  with this flag fails with the error B<EAGAIN>, but marks the mount point as expired.  The mount point remains expired as long as it isn't accessed by any process.  A second B<umount2>()  call specifying B<MNT_EXPIRE> unmounts an expired mount point.  This flag cannot be specified with either B<MNT_FORCE> or B<MNT_DETACH>."
6884 msgstr "マウントポイントに期限切れの印をつける。 マウントポイントが現在使用中でない場合、このフラグをつけて B<umount2>()  を初めて呼び出すと B<EAGAIN> エラーで失敗するが、マウントポイントには期限切れ (expire)  の印がつけられる。 そのマウントポイントはいずれかのプロセスがアクセスしない限り 期限切れの印がついたままとなる。 もう一度 B<MNT_EXPIRE> をつけて B<umount2>()  を呼び出すと、期限切れの印のついたマウントポイントが アンマウントされる。 このフラグを B<MNT_FORCE> もしくは B<MNT_DETACH> と同時に指定することはできない。"
6885
6886 #. type: TP
6887 #: build/C/man2/umount.2:91
6888 #, no-wrap
6889 msgid "B<UMOUNT_NOFOLLOW> (since Linux 2.6.34)"
6890 msgstr "B<UMOUNT_NOFOLLOW> (Linux 2.6.34 以降)"
6891
6892 #.  Later added to 2.6.33-stable
6893 #. type: Plain text
6894 #: build/C/man2/umount.2:99
6895 msgid "Don't dereference I<target> if it is a symbolic link.  This flag allows security problems to be avoided in set-user-ID-I<root> programs that allow unprivileged users to unmount filesystems."
6896 msgstr ""
6897 "I<target> がシンボリックリンクの場合に、シンボリックリンクの展開を行わない。\n"
6898 "このフラグを使うと、 I<root> に set-user-ID されたプログラムにおいて、\n"
6899 "非特権ユーザーがファイルシステムのアンマウントをできてしまうという\n"
6900 "セキュリティ問題を回避することができる。"
6901
6902 #. type: TP
6903 #: build/C/man2/umount.2:110
6904 #, no-wrap
6905 msgid "B<EAGAIN>"
6906 msgstr "B<EAGAIN>"
6907
6908 #. type: Plain text
6909 #: build/C/man2/umount.2:117
6910 msgid "A call to B<umount2>()  specifying B<MNT_EXPIRE> successfully marked an unbusy filesystem as expired."
6911 msgstr "B<MNT_EXPIRE> を指定した B<umount2>()  の呼び出しで、正常に未使用のファイルシステムに期限切れの印を つけることができた。"
6912
6913 #. type: Plain text
6914 #: build/C/man2/umount.2:121
6915 msgid "I<target> could not be unmounted because it is busy."
6916 msgstr "使用中 (busy) のため、 I<target> をアンマウントできなかった。"
6917
6918 #. type: Plain text
6919 #: build/C/man2/umount.2:125
6920 msgid "I<target> points outside the user address space."
6921 msgstr "I<target> がユーザーアドレス空間の外を指している。"
6922
6923 #. type: Plain text
6924 #: build/C/man2/umount.2:129
6925 msgid "I<target> is not a mount point."
6926 msgstr "I<target> がマウントポイントではない。"
6927
6928 #. type: Plain text
6929 #: build/C/man2/umount.2:138
6930 msgid "B<umount2>()  was called with B<MNT_EXPIRE> and either B<MNT_DETACH> or B<MNT_FORCE>."
6931 msgstr "B<MNT_EXPIRE> が指定された B<umount2>() で、 B<MNT_DETACH> か B<MNT_FORCE> が同時に指定された。"
6932
6933 #. type: TP
6934 #: build/C/man2/umount.2:138
6935 #, no-wrap
6936 msgid "B<EINVAL> (since Linux 2.6.34)"
6937 msgstr "B<EINVAL> (Linux 2.6.34 以降)"
6938
6939 #. type: Plain text
6940 #: build/C/man2/umount.2:143
6941 msgid "B<umount2>()  was called with an invalid flag value in I<flags>."
6942 msgstr "I<flags> に無効なフラグが指定されて B<umount2>() が呼び出された。"
6943
6944 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=10092
6945 #. type: Plain text
6946 #: build/C/man2/umount.2:162
6947 msgid "B<MNT_DETACH> and B<MNT_EXPIRE> are available in glibc since version 2.11."
6948 msgstr "B<MNT_DETACH> と B<MNT_EXPIRE> はバージョン 2.11 以降の glibc で利用できる。"
6949
6950 #. type: Plain text
6951 #: build/C/man2/umount.2:165
6952 msgid "These functions are Linux-specific and should not be used in programs intended to be portable."
6953 msgstr "この関数は Linux 固有の関数であり、移植を考慮したプログラムでは 使用すべきでない。"
6954
6955 #. type: Plain text
6956 #: build/C/man2/umount.2:176
6957 msgid "The original B<umount>()  function was called as I<umount(device)> and would return B<ENOTBLK> when called with something other than a block device.  In Linux 0.98p4, a call I<umount(dir)> was added, in order to support anonymous devices.  In Linux 2.3.99-pre7, the call I<umount(device)> was removed, leaving only I<umount(dir)> (since now devices can be mounted in more than one place, so specifying the device does not suffice)."
6958 msgstr "元々の B<umount>()  関数は I<umount(device)> の形で呼び出され、 ブロックデバイス以外を指定して呼び出すと B<ENOTBLK> を返した。 Linux 0.98p4 で、無名デバイス (anonymous device) に対応するために I<umount(dir)> の形での呼び出しが加えられた。 Linux 2.3.99-pre7 で、I<umount(device)> は削除され、 I<umount(dir)> だけが残された (一つのデバイスを複数の位置にマウント出来るようになったため、 デバイスを指定しただけでは不十分だからである)。"
6959
6960 #. type: Plain text
6961 #: build/C/man2/umount.2:181
6962 msgid "B<mount>(2), B<path_resolution>(7), B<mount>(8), B<umount>(8)"
6963 msgstr "B<mount>(2), B<path_resolution>(7), B<mount>(8), B<umount>(8)"
6964
6965 #. type: TH
6966 #: build/C/man2/ustat.2:30
6967 #, no-wrap
6968 msgid "USTAT"
6969 msgstr "USTAT"
6970
6971 #. type: TH
6972 #: build/C/man2/ustat.2:30
6973 #, no-wrap
6974 msgid "2003-08-04"
6975 msgstr "2003-08-04"
6976
6977 #. type: Plain text
6978 #: build/C/man2/ustat.2:33
6979 msgid "ustat - get filesystem statistics"
6980 msgstr "ustat - ファイルシステム (file system) の統計を得る"
6981
6982 #. type: Plain text
6983 #: build/C/man2/ustat.2:38
6984 #, no-wrap
6985 msgid "B<#include E<lt>unistd.hE<gt>>    /* libc[45] */\n"
6986 msgstr "B<#include E<lt>unistd.hE<gt>>    /* libc[45] */\n"
6987
6988 #. type: Plain text
6989 #: build/C/man2/ustat.2:40
6990 #, no-wrap
6991 msgid "B<#include E<lt>ustat.hE<gt>>     /* glibc2 */\n"
6992 msgstr "B<#include E<lt>ustat.hE<gt>>     /* glibc2 */\n"
6993
6994 #. type: Plain text
6995 #: build/C/man2/ustat.2:42
6996 #, no-wrap
6997 msgid "B<int ustat(dev_t >I<dev>B<, struct ustat *>I<ubuf>B<);>\n"
6998 msgstr "B<int ustat(dev_t >I<dev>B<, struct ustat *>I<ubuf>B<);>\n"
6999
7000 #. type: Plain text
7001 #: build/C/man2/ustat.2:54
7002 msgid "B<ustat>()  returns information about a mounted filesystem.  I<dev> is a device number identifying a device containing a mounted filesystem.  I<ubuf> is a pointer to a I<ustat> structure that contains the following members:"
7003 msgstr "B<ustat>()  はマウント (mount) されたファイルシステムの情報を返す。 I<dev> は調べるファイルシステムを含んでいるデバイス (device) の デバイス番号。 I<ubuf> は以下のメンバーを含む ustat 構造体へのポインター:"
7004
7005 #. type: Plain text
7006 #: build/C/man2/ustat.2:61
7007 #, no-wrap
7008 msgid ""
7009 "daddr_t f_tfree;      /* Total free blocks */\n"
7010 "ino_t   f_tinode;     /* Number of free inodes */\n"
7011 "char    f_fname[6];   /* Filsys name */\n"
7012 "char    f_fpack[6];   /* Filsys pack name */\n"
7013 msgstr ""
7014 "daddr_t f_tfree;      /* Total free blocks */\n"
7015 "ino_t   f_tinode;     /* Number of free inodes */\n"
7016 "char    f_fname[6];   /* Filsys name */\n"
7017 "char    f_fpack[6];   /* Filsys pack name */\n"
7018
7019 #. type: Plain text
7020 #: build/C/man2/ustat.2:70
7021 msgid "The last two fields, I<f_fname> and I<f_fpack>, are not implemented and will always be filled with null bytes (\\(aq\\e0\\(aq)."
7022 msgstr "後の二つのフィールド I<f_fname> と I<f_fpack> は実装されておらず、常にヌルバイト (\\(aq\\e0\\(aq) で埋められる。"
7023
7024 #. type: Plain text
7025 #: build/C/man2/ustat.2:79
7026 msgid "On success, zero is returned and the I<ustat> structure pointed to by I<ubuf> will be filled in.  On error, -1 is returned, and I<errno> is set appropriately."
7027 msgstr "成功した場合にはゼロが返され、 I<ubuf> が指す I<ustat> 構造体が埋められる。 エラーの場合は -1 が返され、 I<errno> が適切に設定される。"
7028
7029 #. type: Plain text
7030 #: build/C/man2/ustat.2:84
7031 msgid "I<ubuf> points outside of your accessible address space."
7032 msgstr "I<ubuf> がアクセス可能な空間の外側を指している。"
7033
7034 #. type: Plain text
7035 #: build/C/man2/ustat.2:88
7036 msgid "I<dev> does not refer to a device containing a mounted filesystem."
7037 msgstr "I<dev> がマウントされたファイルシステムを含むデバイスを参照していない。"
7038
7039 #. type: Plain text
7040 #: build/C/man2/ustat.2:94
7041 msgid "The mounted filesystem referenced by I<dev> does not support this operation, or any version of Linux before 1.3.16."
7042 msgstr "I<dev> で参照されるマウントされたファイルシステムがこの操作 (operation) を サポートしていないか、Linux のバージョンが 1.3.16 以前である。"
7043
7044 #. type: Plain text
7045 #: build/C/man2/ustat.2:104
7046 msgid "B<ustat>()  is deprecated and has been provided only for compatibility.  All new programs should use B<statfs>(2)  instead."
7047 msgstr "B<ustat>()  は推奨されず、互換性のためだけに提供される。 新しいプログラムは全てこれの代りに B<statfs>(2)  を使用するべきである。"
7048
7049 #. type: SS
7050 #: build/C/man2/ustat.2:104
7051 #, no-wrap
7052 msgid "HP-UX notes"
7053 msgstr "HP-UX における注意"
7054
7055 #.  Some software tries to use this in order to test whether the
7056 #.  underlying filesystem is NFS.
7057 #. type: Plain text
7058 #: build/C/man2/ustat.2:118
7059 msgid "The HP-UX version of the I<ustat> structure has an additional field, I<f_blksize>, that is unknown elsewhere.  HP-UX warns: For some filesystems, the number of free inodes does not change.  Such filesystems will return -1 in the field I<f_tinode>.  For some filesystems, inodes are dynamically allocated.  Such filesystems will return the current number of free inodes."
7060 msgstr "HP-UX 版の構造体 I<ustat> には、その他にフィールド I<f_blksize> が存在するが、他では見かけない。 HP-UX は次のように警告している: ファイルシステムの中には、解放されている inode の数を変更しないものもある。 このようなファイルシステムは、フィールド I<f_tinode> に -1 を返す。 ファイルシステムの中には、inode を動的に確保するものもある。 このようなファイルシステムは、現在解放されている inode の数を返す。"
7061
7062 #. type: Plain text
7063 #: build/C/man2/ustat.2:121
7064 msgid "B<stat>(2), B<statfs>(2)"
7065 msgstr "B<stat>(2), B<statfs>(2)"
7066
7067 #~ msgid "The returned file handler can only be passed to B<spu_run>(2)  or closed; other operations are not defined on it.  A logical SPU context is destroyed when its file descriptor is closed as well as all the file descriptors pointing to files inside it.  When an SPU context is destroyed all its directory entries in the SPUFS are removed."
7068 #~ msgstr "返されたファイルハンドラーは、 B<spu_run>(2)  に渡すか、クローズするかしかできない。 他の操作は定義されていない。 論理 SPU コンテキストが破棄されるのは、 コンテキスト自身へのファイルディスクリプターがクローズされ、 その中のファイルへのファイルディスクリプターが全てクローズされたときである。 SPU コンテキストが破棄されると、SPUFS 内のそのディレクトリの全てのエントリー が削除される。"
7069
7070 #~ msgid "Allow mapping of some of the hardware registers of the SPU into user space.  This flag requires the B<CAP_SYS_RAWIO> capability."
7071 #~ msgstr "SPU のハードウェアレジスターのいくつかをユーザー空間にマッピングすることを 許可する。このフラグを指定するには B<CAP_SYS_RAWIO> ケーパビリティが必要である。"
7072
7073 #~ msgid "The new directory and files are created in the SPUFS with the permissions set by the I<mode> argument minus those set in the process's B<umask>(2).  The actual permissions set for each file also depend on whether the file supports read and/or write accesses."
7074 #~ msgstr "SPUFS 内に新しく生成されたディレクトリとファイルのアクセス許可は、 I<mode> 引き数からそのプロセスの B<umask>(2)  を引いた値に設定される。 各ファイルの実際のアクセス許可は、そのファイルが読み出しアクセスや 書き込みアクセスをサポートしているかも考慮して決まる。"
7075
7076 #~ msgid "These files expose internal registers of the SPU.  The values are represented as ASCII strings containing the numeric value of each register.  These can be used in read/write mode for debugging, but normal operation of programs should not rely on these files because accesses to any of them except I<npc> require an SPU context save, which is very inefficient."
7077 #~ msgstr "これらのファイルは SPU の内部レジスターを公開するものである。 値は、各レジスターの数値を含むアスキー文字列で表現される。 これらのファイルはデバッグ用として読み出し/書き込みの両モードで利用できるが、 プログラムの通常の操作はこれらのファイルに依存すべきではない。 なぜなら、これらのファイルのうち I<npc> 以外へのアクセスでは SPU コンテキストの保存が必須であり、 SPU コンテキストの保存は非常に効率が悪いからである。"