OSDN Git Service

56e28393161a0477d9ea1fbbd7c2d0d24f9e3746
[linuxjm/LDP_man-pages.git] / draft / man2 / setxattr.2
1 .\"
2 .\" Extended attributes system calls manual pages
3 .\"
4 .\" Copyright (C) Andreas Gruenbacher, February 2001
5 .\" Copyright (C) Silicon Graphics Inc, September 2001
6 .\"
7 .\" This is free documentation; you can redistribute it and/or
8 .\" modify it under the terms of the GNU General Public License as
9 .\" published by the Free Software Foundation; either version 2 of
10 .\" the License, or (at your option) any later version.
11 .\"
12 .\" The GNU General Public License's references to "object code"
13 .\" and "executables" are to be interpreted as the output of any
14 .\" document formatting or typesetting system, including
15 .\" intermediate and printed output.
16 .\"
17 .\" This manual is distributed in the hope that it will be useful,
18 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
19 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 .\" GNU General Public License for more details.
21 .\"
22 .\" You should have received a copy of the GNU General Public
23 .\" License along with this manual; if not, write to the Free
24 .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
25 .\" USA.
26 .\"
27 .\" Japanese Version Copyright (c) 2003  Akihiro MOTOKI
28 .\"         all rights reserved.
29 .\" Translated Tue Jul  8 04:43:40 JST 2003
30 .\"         by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
31 .\"
32 .\"WORD:        extended attributes     拡張属性
33 .\"WORD:        namespace               名前空間
34 .\"
35 .TH SETXATTR 2 2001-12-31 "Linux" "Linux Programmer's Manual"
36 .\"O .SH NAME
37 .\"O setxattr, lsetxattr, fsetxattr \- set an extended attribute value
38 .SH 名前
39 setxattr, lsetxattr, fsetxattr \- 拡張属性の値を設定する
40 .\"O .SH SYNOPSIS
41 .SH 書式
42 .fam C
43 .nf
44 .B #include <sys/types.h>
45 .B #include <attr/xattr.h>
46 .sp
47 .BI "int setxattr(const char\ *" path ", const char\ *" name ,
48 .BI "              const void\ *" value ", size_t " size ", int " flags );
49 .BI "int lsetxattr(const char\ *" path ", const char\ *" name ,
50 .BI "              const void\ *" value ", size_t " size ", int " flags );
51 .BI "int fsetxattr(int " fd ", const char\ *" name ,
52 .BI "              const void\ *" value ", size_t " size ", int " flags );
53 .fi
54 .fam T
55 .\"O .SH DESCRIPTION
56 .SH 説明
57 .\"O Extended attributes are
58 .\"O .IR name :\c
59 .\"O .I value
60 .\"O pairs associated with inodes (files, directories, symbolic links, etc.).
61 .\"O They are extensions to the normal attributes which are associated
62 .\"O with all inodes in the system (i.e., the
63 .\"O .BR stat (2)
64 .\"O data).
65 .\"O A complete overview of extended attributes concepts can be found in
66 .\"O .BR attr (5).
67 拡張属性は、inode (ファイル、ディレクトリ、シンボリックリンク等) に
68 関連付けられた
69 .IR name :\c
70 .I value
71 の対である。
72 これらは、システム上のすべての inode に関連付けられた通常の属性
73 .RB ( stat (2)
74 が返すデータ) を拡張するものである。
75 拡張属性のコンセプトは
76 .BR attr (5)
77 に書かれている。
78 .PP
79 .\"O .BR setxattr ()
80 .\"O sets the
81 .\"O .I value
82 .\"O of the extended attribute identified by
83 .\"O .I name
84 .\"O and associated with the given
85 .\"O .I path
86 .\"O in the file system.
87 .\"O The
88 .\"O .I size
89 .\"O of the
90 .\"O .I value
91 .\"O must be specified.
92 .BR setxattr ()
93 は、ファイルシステム内の指定された
94 .I path
95 に対応する、名前
96 .I name
97 の拡張属性の値
98 .I value
99 を設定する。
100 .I value
101
102 .I size
103 は必ず指定しなければならない。
104 .PP
105 .\"O .BR lsetxattr ()
106 .\"O is identical to
107 .\"O .BR setxattr (),
108 .\"O except in the case of a symbolic link, where the extended attribute is
109 .\"O set on the link itself, not the file that it refers to.
110 .BR lsetxattr ()
111
112 .BR setxattr ()
113 と同じだが、シンボリックリンクの場合に、リンクが参照しているファイル
114 ではなく、リンクそのものの拡張属性を設定する点だけが異なる。
115 .PP
116 .\"O .BR fsetxattr ()
117 .\"O is identical to
118 .\"O .BR setxattr (),
119 .\"O only the extended attribute is set on the open file referred to by
120 .\"O .I fd
121 .\"O (as returned by
122 .\"O .BR open (2))
123 .\"O in place of
124 .\"O .IR path .
125 .BR fsetxattr ()
126
127 .BR setxattr ()
128 と同じだが、
129 .I path
130 の代わりに
131 .I fd
132 で参照されたオープン済みファイルの情報だけを設定する点が異なる
133 .RI ( filedes
134
135 .BR open (2)
136 によって返される)。
137 .PP
138 .\"O An extended attribute name is a simple null-terminated string.
139 .\"O The
140 .\"O .I name
141 .\"O includes a namespace prefix; there may be several, disjoint
142 .\"O namespaces associated with an individual inode.
143 .\"O The
144 .\"O .I value
145 .\"O of an extended attribute is a chunk of arbitrary textual or
146 .\"O binary data of specified length.
147 拡張属性の名前
148 は普通の NULL 終端された文字列である。
149 .I name
150 には、名前空間を表す接頭辞 (prefix) が含まれる。
151 個々の inode に対して、互いに独立な名前空間が複数あってもよい。
152 拡張属性の値
153 .I value
154 は、ある一定の長さの任意のテキスト・データまたは
155 バイナリ・データの集合である。
156 .PP
157 .\"O The
158 .\"O .I flags
159 .\"O argument can be used to refine the semantics of the operation.
160 操作の意味を明確にするために
161 .I flags
162 引き数を使用することができる。
163 .\"O .B XATTR_CREATE
164 .\"O specifies a pure create, which fails if the named
165 .\"O attribute exists already.
166 .B XATTR_CREATE
167 は属性の作成だけを行うことを指定する。
168 指定された名前の属性がすでに存在する場合は失敗する。
169 .\"O .B XATTR_REPLACE
170 .\"O specifies a pure replace operation, which fails if the
171 .\"O named attribute does not already exist.
172 .B XATTR_REPLACE
173 は属性の置換だけを行うことを指定する。
174 指定された名前の属性がまだ存在しない場合は失敗する。
175 .\"O By default (no flags), the extended attribute will be created if
176 .\"O need be, or will simply replace the value if the attribute exists.
177 デフォルトでは (フラグを指定しない場合)、拡張属性は必要な場合は作成され、
178 属性がすでに存在する場合は属性値の置換を行う。
179 .\"O .SH RETURN VALUE
180 .SH 返り値
181 .\"O On success, zero is returned.
182 .\"O On failure, \-1 is returned and
183 .\"O .I errno
184 .\"O is set appropriately.
185 成功した場合、 0 が返される。
186 失敗した場合、 \-1 が返され、
187 .I errno
188 に適切な値がセットされる。
189 .PP
190 .\"O If
191 .\"O .B XATTR_CREATE
192 .\"O is specified, and the attribute exists already,
193 .\"O .I errno
194 .\"O is set to
195 .\"O .BR EEXIST .
196 .B XATTR_CREATE
197 が指定され、かつ属性がすでに存在する場合、
198 .I errno
199
200 .B EEXIST
201 がセットされる。
202 .\"O If
203 .\"O .B XATTR_REPLACE
204 .\"O is specified, and the attribute does not exist,
205 .\"O .I errno
206 .\"O is set to
207 .\"O .BR ENOATTR .
208 .B XATTR_REPLACE
209 が指定され、属性がまだ存在しない場合、
210 .I errno
211
212 .B ENOATTR
213 がセットされる。
214 .PP
215 .\"O If there is insufficient space remaining to store the extended attribute,
216 .\"O .I errno
217 .\"O is set to either
218 .\"O .BR ENOSPC ,
219 .\"O or
220 .\"O .B EDQUOT
221 .\"O if quota enforcement was the cause.
222 拡張属性を記憶するのに十分なスペースが残っていない場合、
223 .I errno
224
225 .B ENOSPC
226 または
227 .B EDQUOT
228 (quota による制限が原因の場合) がセットされる。
229 .PP
230 .\"O If extended attributes are not supported by the file system, or are disabled,
231 .\"O .I errno
232 .\"O is set to
233 .\"O .BR ENOTSUP .
234 拡張属性がそのファイルシステムでサポートされていない場合、
235 もしくは無効になっている場合、
236 .I errno
237
238 .B ENOTSUP
239 がセットされる。
240 .PP
241 .\"O The errors documented for the
242 .\"O .BR stat (2)
243 .\"O system call are also applicable here.
244 .BR stat (2)
245 システムコールの説明に書かれているエラーは
246 これらのシステムコールにも適用される。
247 .\"O .SH VERSIONS
248 .SH バージョン
249 .\"O These system calls have been available on Linux since kernel 2.4;
250 .\"O glibc support is provided since version 2.3.
251 これらのシステムコールはカーネル 2.4 以降の Linux で利用できる。
252 glibc でのサポートはバージョン 2.3 以降で行われている。
253 .\"O .SH "CONFORMING TO"
254 .SH 準拠
255 .\"O These system calls are Linux-specific.
256 これらのシステムコールは Linux 独自である。
257 .\"O .\" .SH AUTHORS
258 .\" .SH 著者
259 .\"O .\" Andreas Gruenbacher,
260 .\"O .\" .RI < a.gruenbacher@computer.org >
261 .\"O .\" and the SGI XFS development team,
262 .\"O .\" .RI < linux-xfs@oss.sgi.com >.
263 .\"O .\" Please send any bug reports or comments to these addresses.
264 .\" Andreas Gruenbacher,
265 .\" .RI < a.gruenbacher@computer.org >
266 .\" と SGI XFS 開発チーム,
267 .\" .RI < linux-xfs@oss.sgi.com >。
268 .\" バグレポートやコメントは上記のアドレスまで送って下さい。
269 .\"O .SH SEE ALSO
270 .SH 関連項目
271 .BR getfattr (1),
272 .BR setfattr (1),
273 .BR getxattr (2),
274 .BR listxattr (2),
275 .BR open (2),
276 .BR removexattr (2),
277 .BR stat (2),
278 .BR attr (5),
279 .BR symlink (7)