CHFLAGS(1) | FreeBSD General Commands Manual | CHFLAGS(1) |
名称
chflags — ファイルのフラグを変更する書式
chflags | [ -fhv][ -R [ -H | -L | -P]] flags file ... |
解説
chflags ユーティリティは、 flags オペランドによって指定されるリストされたファイルのファイルフラグを修正します。オプションは、次の通りです:
- -f
- chflags が file のためのフラグを変更できないか、またはそのような失敗を反映するように終了ステータスは変更できないなら、診断メッセージを表示しません。
- -H
- -R オプションが指定されていれば、引数で指定されたシンボリックリンクをたどります (木構造の検索中にみつかったシンボリックリンクはたどりません)。
- -h
- file がシンボリックリンクであるなら、それが指すファイルでなく、リンク自体のファイルフラグを変更します。
- -L
- -R オプションが指定されていれば、全てのシンボリックリンクをたどります。
- -P
- -R オプションが指定されていれば、どのシンボリックリンクもたどりません。これがデフォルトです。
- -R
- 指定されたファイル自身ではなく、そのファイル以下のディレクトリ階層すべてのフラグを変更します。
- -v
- chflags は、冗長にされ、フラグが変更されているようにファイル名を表示します。また、 -v オプションが二度以上指定されるなら、ファイルの古いフラグと新しいフラグも 8 進数で印刷されます。
フラグは、8 進数、またはキーワードのコンマで区切られたリストとして指定されます。次のキーワードが、現在定義されています:
- arch, archived
- archived フラグを設定します (スーパユーザのみ)
- nodump
- nodump フラグを設定します (所有者またはスーパユーザのみ)
- opaque
- opaque フラグを設定します (所有者またはスーパユーザのみ)
- sappnd, sappend
- system append-only (システム追加専用) フラグを設定します (スーパユーザのみ)
- schg, schange, simmutable
- system immutable (システム不変) フラグを設定します (スーパユーザのみ)
- snapshot
- snapshot フラグを設定します (ファイルシステムは、このフラグを変更することを許可しません)
- sunlnk, sunlink
- system undeletable (システム削除不可) フラグを設定します (スーパユーザのみ)
- uappnd, uappend
- user append-only (ユーザ追加専用) フラグを設定します (所有者またはスーパユーザのみ)
- uarch, uarchive
- archive フラグを設定します (所有者またはスーパユーザのみ)
- uchg, uchange, uimmutable
- user immutable (ユーザ不変) フラグを設定します (所有者またはスーパユーザのみ)
- uhidden, hidden
- hidden ファイル属性を設定します (所有者またはスーパユーザのみ)
- uoffline, offline
- offline ファイル属性を設定します (所有者またはスーパユーザのみ)
- urdonly, rdonly, readonly
- DOS、Windows と CIFS 読み込み専用フラグを設定します (所有者またはスーパユーザのみ)
- usparse, sparse
- sparse ファイル属性を設定します (所有者またはスーパユーザのみ)
- usystem, system
- DOS、Windows と CIFS システムフラグを設定します (所有者またはスーパユーザのみ)
- ureparse, reparse
- Windows 再解析ポイントファイル属性を設定します (所有者またはスーパユーザのみ)
- uunlnk, uunlink
- user undeletable (ユーザ削除不可) フラグを設定します (所有者またはスーパユーザのみ)
オプションキーワードの前に“ no”を付けたりキーワードから“ no”を削ると、そのフラグを無効にします。例:
- nouchg
- ユーザの immutable ビットをクリア (所有者またはスーパユーザのみ)
- dump
- nodump フラグをクリア (所有者またはスーパユーザのみ)
少数の 8 進数の値は、次の通りです:
-
0
- すべてのファイルフラグをクリアします。
-
1
- nodump キーワードに変換します。
-
2
- uchg キーワードに変換します。
-
3
- uchg, nodump キーワードに変換します。
-
4
- uappnd キーワードに変換します。
-
10
- opaque キーワードに変換します。
-
20
- uunlnk キーワードに変換します。
他のキーワードの組み合わせは、割り当てられた 8 進数を使用することによって、置き換えられます。しかしながら、これらは最も有名なものです。
-H, -L または -h オプションを指定せずにシンボリックリンクに対して chflags を実行した場合、常に成功しますが、何の効果もありません。 -H, -L と -P オプションは -R オプションを指定しない限り無視されます。また、これらのオプションはお互いの効果を上書きするため、最後に指定されたオプションによってコマンドの動作が決まります。
ファイルのフラグを見るには "ls -lo"とします。
特定のフラグを変更できるかどうかは、現在のカーネルの securelevel の設定に依存していることに注意してください。この設定の詳細については security(7) を参照してください。
終了ステータス
The chflags utility exits 0 on success, and >0 if an error occurs.歴史
chflags コマンドは、 4.4BSD ではじめて登場しました。バグ
限られたユーティリティしか chflags を認識しません。これを認識するツールとしては、 ls(1), cp(1), find(1), install(1), dump(8) と restore(8) などがあります。特に、現在 chflags を認識していないツールのひとつは pax(1) ユーティリティです。April 8, 2013 | FreeBSD |