CHFLAGS
Section: System Calls (2)
索引
jman
BSD mandoc
索引
名称
chflags
lchflags
fchflags
- ファイルフラグを設定する
索引
ライブラリ
Lb libc
索引
書式
In sys/stat.h
In unistd.h
Ft int
Fn chflags const char *path u_long flags
Ft int
Fn lchflags const char *path int flags
Ft int
Fn fchflags int fd u_long flags
索引
解説
名前が
Fa path
によって指定されるファイル、または記述子
Fa fd
によって参照されるファイルのフラグが
Fa flags
に変更されます。
Fn lchflags
システムコールは
Fn chflags
と同じですが、指定されたファイルがシンボリックリンクだった場合の
動作が異なります。
この場合
Fn lchflags
は、リンクが指している先のファイルではなく、リンク自身のフラグを変更します。
指定されたフラグは次の値の論理和
( or
を取ることで作成されます。
- UF_NODUMP
-
そのファイルを dump の対象外とします。
- UF_IMMUTABLE
-
そのファイルは変更禁止です。
- UF_APPEND
-
そのファイルは末尾への追加だけが可能です。
- UF_NOUNLINK
-
そのファイルは名前を変更したり削除できません。
- UF_OPAQUE
-
ユニオンファイルシステムのスタックを通じて見るとき、
このディレクトリは不透明です。
- SF_ARCHIVED
-
そのファイルはアーカイブ可能です。
- SF_IMMUTABLE
-
そのファイルは変更禁止です。
- SF_APPEND
-
そのファイルは末尾への追加だけが可能です。
- SF_NOUNLINK
-
そのファイルは名前を変更したり削除できません。
``UF_IMMUTABLE''
``UF_APPEND''
``UF_NOUNLINK''
``UF_NODUMP''
``UF_OPAQUE''
フラグは、ファイルの所有者またはスーパユーザのどちらかによって
設定または設定解除できます。
``SF_IMMUTABLE''
``SF_APPEND''
``SF_NOUNLINK''
``SF_ARCHIVED''
フラグは、スーパユーザだけが設定または設定解除できます。
スーパユーザのみが設定できるフラグを
スーパユーザでないものが設定しようとしても
警告なしで無視されます。
これらのフラグはいつでも設定できますが、
通常は、システムがシングルユーザモードにあるときにだけ
設定解除するのが普通です (詳細については
init(8)
を参照してください)。
索引
戻り値
Rv -std
索引
エラー
Fn chflags
システムコールの処理は以下の場合に失敗します:
- Bq Er ENOTDIR
-
パスの構成要素中にディレクトリ以外のものが含まれています。
- Bq Er ENAMETOOLONG
-
パス名の構成要素が 255 文字を越えているか、
またはパス名全体が 1023 文字を越えています。
- Bq Er ENOENT
-
指定されたファイルが存在しません。
- Bq Er EACCES
-
指定されたパスには、検索が許可されていないディレクトリが含まれています。
- Bq Er ELOOP
-
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
- Bq Er EPERM
-
実効ユーザ ID がファイルの所有者と一致せず、かつ、実効ユーザ ID が
スーパユーザでありません。
- Bq Er EROFS
-
指定されたファイルは読取り専用ファイルシステム上にあります。
- Bq Er EFAULT
-
Fa path
引数が、プロセスに割り当てられたアドレス空間の範囲外を指しています。
- Bq Er EIO
-
ファイルシステムに読み書きしている間に
入出力
エラーが発生しました。
- Bq Er EOPNOTSUPP
-
ファイルシステムがファイルフラグをサポートしません。
Fn fchflags
システムコールの処理は以下の場合に失敗します:
- Bq Er EBADF
-
記述子が有効ではありません。
- Bq Er EINVAL
-
Fa fd
引数がファイルではなくソケットを参照しています。
- Bq Er EPERM
-
実効ユーザ ID がファイルの所有者と一致せず、
実効ユーザ ID がスーパユーザではありません。
- Bq Er EROFS
-
ファイルが読取り専用システム上に存在しています。
- Bq Er EIO
-
ファイルシステムに読み書きしている間に
入出力
エラーが発生しました。
- Bq Er EOPNOTSUPP
-
ファイルシステムがファイルフラグをサポートしません。
索引
関連項目
chflags(1),
fflagstostr(3),
strtofflags(3),
init(8),
mount_unionfs8
索引
歴史
Fn chflags
システムコールと
Fn fchflags
システムコールは
BSD 4.4
ではじめて登場しました。
索引
Index
- 名称
-
- ライブラリ
-
- 書式
-
- 解説
-
- 戻り値
-
- エラー
-
- 関連項目
-
- 歴史
-
Time: 07:06:28 GMT, January 12, 2009