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

名称
ライブラリ
書式
解説
戻り値
エラー
関連項目
歴史

jman



Time: 07:06:28 GMT, January 12, 2009