日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
CHFLAGS(2) FreeBSD システムコールマニュアル CHFLAGS(2) 名称 chflags, lchflags, fchflags, chflagsat -- ファイルフラグを設定する ライブラリ 標準 C ライブラリ (libc, -lc) 書式 #include <sys/stat.h> #include <unistd.h> int chflags(const char *path, unsigned long flags); int lchflags(const char *path, unsigned long flags); int fchflags(int fd, unsigned long flags); int chflagsat(int fd, const char *path, unsigned long flags, int atflag); 解説 名前が path によって与えられるか、または記述子 fd によって参照されるファ イルは、そのフラグを flags に変更します。 lchflags() システムコールは、指定されたファイルがシンボリックリンクである 場合を除いて、chflags() に似ています、シンボリックリンクである場合には、 lchflags() は、それが指すファイルではなく、リンク自体のフラグを変更しま す。 chflagsat() は、path が相対パスを指定する場合を除いて、atflag に依存す る、chflags() または lchflags() のいずれかと同等です。この場合に、変更さ れるファイルは、現在の作業ディレクトリの代わりに、ファイル記述子 fd に関 連したディレクトリに相対的であると判断されます。atflag のための値は、 <fcntl.h> に定義され、次のリストからフラグのビット単位の包括的な論理和 (OR) によって構築されます: AT_SYMLINK_NOFOLLOW path がシンボリックリンクを指定するなら、シンボリックリンクのフラ グは、変更されます。 chflagsat() に fd パラメータの特別な値 AT_FDCWD を渡すなら、現在の作業 ディレクトリが使用されます。また atflag が 0 であるなら、振る舞いは、 chflags() への呼び出しと同一です。 指定されたフラグは、次の値の論理和 (OR) することによって形成されます。 SF_APPEND ファイルは、追加のみです。 SF_ARCHIVED ファイルは、アーカイブされません。このフラグは、DOS、 Windows と CIFS FILE_ATTRIBUTE_ARCHIVE 属性の反対を意 味します。このフラグは、推奨されず、将来のリリースで 削除されるかもしれません。 SF_IMMUTABLE ファイルは、変更されません。 SF_NOUNLINK ファイルは、名前を変更されず削除されません。 SF_SNAPSHOT ファイルは、スナップショットファイルです。 UF_APPEND ファイルは、追加のみです。 UF_ARCHIVE ファイルは、アーカイブされる必要があります。このフラ グは、DOS、Windows と CIFS FILE_ATTRIBUTE_ARCHIVE 属 性と同じ意味があります。FreeBSD のファイルシステム は、このフラグのための特別の扱いがあるかもしれない し、ないかもしれません。例えば、ZFS は、ファイルへの 変更を追跡し、ファイルが更新されるとき、このビットを 設定します。UFS は、単にフラグを格納し、必要だったと き、それを変更するアプリケーションに依存します。 UF_HIDDEN ファイルは、アプリケーションの裁量でディレクトリのリ ストから隠されるかもしれません。ファイルには、DOS、 Windows と CIFS FILE_ATTRIBUTE_HIDDEN 属性がありま す。 UF_IMMUTABLE ファイルは、変更されません。 UF_NODUMP ファイルをダンプしません。 UF_NOUNLINK ファイルは、名前を変更されず削除されません。 UF_OFFLINE ファイルは、オフラインであるか、または Windows と CIFS FILE_ATTRIBUTE_OFFLINE 属性があります。FreeBSD のファイルシステムは、このフラグを格納し、表示します が、それが設定されるとき、特別の扱いを提供しません。 UF_OPAQUE ディレクトリは、union スタックを通して見るとき、不透 明です。 UF_READONLY ファイルは、読み出し専用で、書き込まれないか、または 追加されないかもしれません。ファイルシステムは、DOS、 Windows と CIFS FILE_ATTRIBUTE_READONLY 属性との互換 性を維持するために、このフラグを使用します。 UF_REPARSE ファイルは、Windows 再解析ポイントを含んでおり、Win dows と CIFS FILE_ATTRIBUTE_REPARSE_POINT 属性があり ます。 UF_SPARSE ファイルには、Windows FILE_ATTRIBUTE_SPARSE_FILE 属性 があります。また、これは、スパース (sparse) ファイル を示すためにファイルシステムによって使用されます。 UF_SYSTEM ファイルには、DOS、Windows と CIFS FILE_ATTRIBUTE_SYSTEM 属性があります。FreeBSD のファ イルシステムは、このフラグを格納し、表示しますが、そ れが設定されるとき、特別の扱いを提供しません。 SF_IMMUTABLE, SF_APPEND または SF_NOUNLINK の 1 つが設定されているなら、 スーパユーザでないものは、どんなフラグも変更することができません、そし て、スーパユーザさえセキュリティレベル (securelevel) が 0 である場合に限 りフラグを変更ことができます。(詳細については、init(8) を参照してくださ い。) UF_IMMUTABLE, UF_APPEND, UF_NOUNLINK, UF_NODUMP と UF_OPAQUE フラグは、 ファイルの所有者またはスーパユーザのいずれかよって設定または未設定とされ ます。 SF_IMMUTABLE, SF_APPEND, SF_NOUNLINK と SF_ARCHIVED フラグは、スーパユー ザによってのみ設定または未設定とされます。スーパユーザでないものによっ て、これらのフラグを切り替える試みは、拒絶されます。これらのフラグは、い つでも設定されますが、通常、システムがシングルユーザモードになるときのみ 未設定とされます (詳細については、init(8) を参照)。 すべてのフラグの実装は、ファイルシステム依存です。異なった振る舞いの 1 つ の例については、上記の UF_ARCHIVE フラグの記述を参照してください。サポー ト、または様々なファイルシステムの、これらのフラグのサポートの不足を説明 するためのアプリケーションを書くとき、注意が払われるべきです。 SF_SNAPSHOT フラグは、システムによって管理され、切り替えることはできませ ん。 戻り値 成功して終了したときには値 0 を返します。そうでない場合、値 -1 が返され、 グローバル変数 errno にエラーを示す値が設定されます。 エラー chflags() システムコールは、次の場合に失敗します: [ENOTDIR] パス接頭辞の構成要素がディレクトリではありません。 [ENAMETOOLONG] パス名の構成要素が 255 文字を越えているか、または全体 のパス名が 1023 文字を越えています。 [ENOENT] 指定されたファイルが存在しません。 [EACCES] 検索パーミッションが、パス接頭辞の構成要素のために拒否 されます。 [ELOOP] パス名を変換するときにあまりに多くのシンボリックリンク に遭遇しました。 [EPERM] 実効ユーザ ID がファイルの所有者と一致せず、実効ユーザ ID がスーパユーザではありません。 [EPERM] SF_IMMUTABLE, SF_APPEND または SF_NOUNLINK の 1 つが設 定され、ユーザがスーパユーザでないか、セキュリティレベ ルが 0 より大きいかのいずれかです。 [EPERM] スーパユーザでないものが、SF_ARCHIVED, SF_IMMUTABLE, SF_APPEND または SF_NOUNLINK の 1 つを切り替えようと試 みました。 [EPERM] SF_SNAPSHOT フラグを切り替える試みが行われました。 [EROFS] 指定されたファイルが読み込み専用のファイルシステムに存 在します。 [EFAULT] path 引数が、プロセスの割り付けられたアドレス空間の外 側を指しています。 [EIO] ファイルシステムから読み込んでいる間、または書き込んで いる間に I/O エラーが起こりました。 [EOPNOTSUPP] 基本的なファイルシステムがファイルフラグをサポートしな いか、または flags に設定されたすべてのフラグをサポー トしませんでした。 fchflags() システムコールは、次の場合に失敗します: [EBADF] 記述子が有効ではありません。 [EINVAL] fd 引数がファイルではなくソケットを参照しています。 [EPERM] 実効ユーザ ID がファイルの所有者と一致せず、実効ユーザ ID がスーパユーザではありません。 [EPERM] SF_IMMUTABLE, SF_APPEND または SF_NOUNLINK の 1 つが設 定され、ユーザがスーパユーザでないか、セキュリティレベ ルが 0 より大きいかのいずれかです。 [EPERM] スーパユーザでないものが、SF_ARCHIVED, SF_IMMUTABLE, SF_APPEND または SF_NOUNLINK の 1 つを設定しようとしま した。 [EPERM] SF_SNAPSHOT フラグを切り替えようと試みました。 [EROFS] ファイルが読み込み専用のファイルシステムに存在します。 [EIO] ファイルシステムから読み込んでいる間、または書き込んで いる間に I/O エラーが起こりました。 [EOPNOTSUPP] 基本的なファイルシステムがファイルフラグをサポートしな いか、または flags に設定されたすべてのフラグをサポー トしませんでした。 関連項目 chflags(1), fflagstostr(3), strtofflags(3), init(8), mount_unionfs(8) 歴史 chflags() と fchflags() システムコールは、4.4BSD ではじめて登場しました。 lchflags() システムコールは、FreeBSD 5.0 ではじめて登場しました。 chflagsat() システムコールは、FreeBSD 10.0 ではじめて登場しました。 FreeBSD 11.4 March 22, 2013 FreeBSD 11.4