CHFLAGS(2) FreeBSD システムコールマニュアル CHFLAGS(2)
名称
chflags, lchflags, fchflags − ファイルフラグを設定する |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <sys/stat.h> int |
chflags(const char *path, u_long flags); int |
lchflags(const char *path, int flags); int |
fchflags(int fd, u_long flags); |
解説 |
名前が path によって指定されるファイル、または記述子 fd によって参照され るファイルのフラグが flags に変更されます。 lchflags() システムコールは chflags() と同じですが、指定されたファイルが シンボリックリンクだった場合の動作が異なります。この場合 lchflags() は、 リンクが指している先のファイルではなく、リンク自身のフラグを変更します。 指定されたフラグは次の値の論理和 (or) を取ることで作成されます。 |
UF_NODUMP
そのファイルを dump の対象外とします。 ‘‘UF_IMMUTABLE’’, ‘‘UF_APPEND’’, ‘‘UF_NOUNLINK’’, ‘‘UF_NODUMP’’, ‘‘UF_OPAQUE’’ フラグは、ファイルの所有者またはスーパユーザのどちらかに よって設定または設定解除できます。 ‘‘SF_IMMUTABLE’’, ‘‘SF_APPEND’’, ‘‘SF_NOUNLINK’’, ‘‘SF_ARCHIVED’’ フラグ は、スーパユーザだけが設定または設定解除できます。スーパユーザのみが設定 できるフラグをスーパユーザでないものが設定しようとしても警告なしで無視さ れます。これらのフラグはいつでも設定できますが、通常は、システムがシング ルユーザモードにあるときにだけ設定解除するのが普通です (詳細については init(8) を参照してください)。 戻り値 |
成功して終了したときには値 0 を返します。そうでない場合、値 -1 が返され、 グローバル変数 errno が設定されてエラーを示します。 |
エラー
chflags() システムコールの処理は以下の場合に失敗します: |
[ENOTDIR]
パスの構成要素中にディレクトリ以外のものが含まれていま す。 [ENAMETOOLONG] [ENOENT] [EACCES] [ELOOP] [EPERM] [EROFS] [EFAULT] [EIO] [EOPNOTSUPP] fchflags() システムコールの処理は以下の場合に失敗します: [EBADF] [EINVAL] [EPERM] [EROFS] [EIO] [EOPNOTSUPP] 関連項目 |
chflags(1), fflagstostr(3), strtofflags(3), init(8), mount_unionfs(8) |
歴史
chflags() システムコールと fchflags() システムコールは 4.4BSD ではじめて 登場しました。 FreeBSD 10.0 May 5, 2002 FreeBSD 10.0 |