総合手引 | セクション 2 | English | オプション |
#include <sys/stat.h>
#include <unistd.h>
lchflags() システムコールは chflags() と同じですが、指定されたファイルがシンボリックリンクだった場合の 動作が異なります。 この場合 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) を参照してください)。
[ENOTDIR] | |
パスの構成要素中にディレクトリ以外のものが含まれています。 | |
[ENAMETOOLONG] | |
パス名の構成要素が 255 文字を越えているか、 またはパス名全体が 1023 文字を越えています。 | |
[ENOENT] | |
指定されたファイルが存在しません。 | |
[EACCES] | |
指定されたパスには、検索が許可されていないディレクトリが含まれています。 | |
[ELOOP] | |
パス名を変換するときに検出されたシンボリックリンクが多すぎます。 | |
[EPERM] | |
実効ユーザ ID がファイルの所有者と一致せず、かつ、実効ユーザ ID が スーパユーザでありません。 | |
[EROFS] | |
指定されたファイルは読取り専用ファイルシステム上にあります。 | |
[EFAULT] | |
path 引数が、プロセスに割り当てられたアドレス空間の範囲外を指しています。 | |
[EIO] | ファイルシステムに読み書きしている間に 入出力 エラーが発生しました。 |
[EOPNOTSUPP] | |
ファイルシステムがファイルフラグをサポートしません。 | |
fchflags() システムコールの処理は以下の場合に失敗します:
[EBADF] | |
記述子が有効ではありません。 | |
[EINVAL] | |
fd 引数がファイルではなくソケットを参照しています。 | |
[EPERM] | |
実効ユーザ ID がファイルの所有者と一致せず、 実効ユーザ ID がスーパユーザではありません。 | |
[EROFS] | |
ファイルが読取り専用システム上に存在しています。 | |
[EIO] | ファイルシステムに読み書きしている間に 入出力 エラーが発生しました。 |
[EOPNOTSUPP] | |
ファイルシステムがファイルフラグをサポートしません。 | |
CHFLAGS (2) | May 5, 2002 |
総合手引 | セクション 2 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | If at first you don't succeed, you must be a programmer. | ” |