CHATTR

Section: User Commands (1)
Updated: February 2012
Index Return to Main Contents
 

名前

chattr - Linux ファイルシステム上のファイルの属性を変更する  

書式

chattr [ -RVf ] [ -v version ] [ mode ] files...  

説明

chattr は Linux ファイルシステム上のファイルの属性 (attribute) を変更する。

mode の記法フォーマットは +-=[acdeijstuADST] である。

`+' オペレータを使用すると、選択した属性がファイルに付加される。 `-' オペレータを使用すると解除される。 `=' オペレータを使用すると、ファイルは指定した属性だけを持つことになる。

`acdeijstuADST' がファイルに新たに指定できる属性である。 (a) 追加のみ許可 (append only)、(c) 圧縮 (compressed)、 (d) ダンプしない (no dump)、(e) エクステント形式、(i) 変更不可 (immutable)、 (j) データのジャーナリング (data journalling)、 (s) 安全な削除 (secure deletion)、(t) 末尾マージをしない (no tail-merging)、 (u) 復活可能 (undeletable)、 (A) atime を更新しない、 (D) ディレクトリの同期更新 (synchronous directory updates)、 (S) 同期更新 (synchronous updates)、 (T) ディレクトリ階層のトップ。

次の属性は読み出し専用で、lsattr(1) で表示することはできるが、 chattr で変更することはできない。 (h) ヒュージファイル、(E) 圧縮エラー、(I) 索引付きのディレクトリ、 (X) 圧縮への直接アクセス、(Z) dirty な圧縮ファイル。  

オプション

-R
再帰的にディレクトリやその中身の属性を変更する。
-V
属性の変更を詳細に表示する。
-f
ほとんどのエラーメッセージを出力しないようにする。
-v version
ファイルシステムのバージョン/世代を設定する。
 

属性

'A' 属性が設定されているファイルは、 アクセスされても atime レコードが変更されない。 これはラップトップシステムのディスク I/O をある程度軽減する。

`a' 属性が設定されているファイルは、 書き込みの際に追加モードでしかオープンできない。 スーパーユーザーまたは CAP_LINUX_IMMUTABLE ケーパビリティ (capability) を持つプロセスだけが、 この属性を設定・解除できる。

`c' 属性が設定されているファイルは、 ディスク上に置かれるときカーネルによって自動的に圧縮される。 このファイルを読み出すと、伸長されたデータが返ってくる。 このファイルに書き込むと、ディスク上に保存する前にデータが圧縮される。 注意: このドキュメントの最後にある 「バグと制限」のセクションを読んで確かめてほしい。

`D' 属性が設定されているディレクトリは、 変更されると同時にディスクにもその内容が書き込まれる。 これは `dirsync' マウントオプションを、 それらのファイルだけに適用するのと同じことである。

`d' 属性が設定されているファイルは、 dump(8) プログラムを起動した際にバックアップされない。

'E' 属性は実験的な圧縮パッチが用いるもので、 圧縮ファイルに圧縮エラーがあることを示す。 この属性は chattr(1) によって設定したり解除したりすることはできないが、 lsattr(1) を用いて表示させることはできる。

'e' 属性は、そのファイルをディスク上のブロックにマッピングする際に エクステントが使用されていることを示す。 この属性は chattr(1) で削除することはできない。

`I' 属性は htree コードによって用いられ、 ディレクトリがハッシュツリーを使って索引を付けられることを示す。 この属性は chattr(1) によって設定したり解除したりすることはできないが、 lsattr(1) を用いて表示させることはできる。

'h' 属性は、そのファイルのブロックがセクター単位ではなくファイルシステムのブロックサイズ単位で格納されていることを示す。 これは、そのファイルのサイズが 2TB 超である (または一度でも 2TB 超になったことがある) ことを意味する。 lsattr(1) で表示することはできるが、 chattr(1) でこの属性の設定、解除を行うことはできない。

`i' 属性が設定されているファイルは、変更することができない。 すなわち、削除、名前の変更、このファイルを指すリンクの作成、 このファイルに対するデータの書き込みが禁止される。 スーパーユーザーまたは CAP_LINUX_IMMUTABLE ケーパビリティを持つプロセスだけが、 この属性を設定・解除できる。

`j' 属性が設定されているファイルは、 ファイルシステムが "data=ordered" または "data=writeback" オプションで マウントされている場合、 ファイルそのものに書き出される前に、 ext3 のジャーナルにデータが書き出される。 ファイルシステムが "data=journal" オプションでマウントされている場合、 全てのファイルデータは既にジャーナルに記録されているので、 この属性は何も影響しない。 スーパーユーザーまたは CAP_SYS_RESOURCE ケーパビリティを持つプロセスだけが、 この属性を設定・解除できる。

`s' 属性が設定されているファイルが削除されると、 割り当てられていたブロックの中身が 0 にされ、ディスクに書き戻される。 注意: このドキュメントの最後にある 「バグと制限」のセクションを読んで確かめてほしい。

`S' 属性が設定されているファイルが変更されると、 変更は同期的にディスクに書き込まれる (すなわち変更が直ちにディスク上に反映される)。 これは mount オプションの `sync' を それらのファイルだけに適用するのと同じことである。

`T' 属性が設定されているディレクトリは、 Orlovブロックアロケータのためのディレクトリ階層のトップとして扱われる。これはext3とext4で使われるブロックアロケータへのヒントになる。このディレクトリのサブディレクトリは関連付けが行われず、アロケーションのために拡張される。例えば /home ディレクトリに `T' 属性を設定しておくのはよい考えである。そうすれば、/home/john と /home/mary は別々のブロックグループに置かれる。この属性が設定されていないディレクトリについて、Orlovブロックアロケータは可能であればサブディレクトリをなるべく近くにグループ化する。

`t' 属性が設定されているファイルは、 そのファイルが他のファイルとマージされたときに 部分的ブロックのフラグメントを末尾に作らない (末尾マージ (tail-merging) をサポートしているファイルシステムの場合)。 これは LILO のような、ファイルシステムを直接読みにいき、 かつ末尾マージされたファイルのことを理解しないような アプリケーションに対して必要となる。 注: この man ページを書いている時点で、ext2 と ext3 ファイルシステムは (まだ非常に実験的なパッチ以外では) 末尾マージをサポートしていない。

`u' 属性が設定されているファイルを削除すると、 その内容は保護される。 これにより、ユーザがファイルを復活させることが可能になる。 注意: このドキュメントの最後にある 「バグと制限」のセクションを読んで確かめてほしい。

`X' 属性は実験的な圧縮パッチによって用いられ、 圧縮ファイルの内容が圧縮状態のまま直接アクセス可能であることを示す。 この属性は現在のところ chattr(1) によって設定したり解除したりすることはできないが、 lsattr(1) を用いて表示させることはできる。

`Z' 属性は実験的な圧縮パッチによって用いられ、 圧縮ファイルが汚染されている (dirty) ことを示す。 この属性は chattr(1) によって設定したり解除したりすることはできないが、 lsattr(1) を用いて表示させることはできる。

 

作者

chattr は、Remy Card <Remy.Card@linux.org> によって作成された。 現在は Theodore Ts'o <tytso@alum.mit.edu> によってメンテナンスされている。  

バグと制限

`c', 's', `u' 属性への対応は、現在主流になっている Linux カーネルで 実装されている ext2 と ext3 ファイルシステムに含まれていない。 これらの属性は将来の ext2 と ext3 に実装されるかもしれない。

`j' オプションは、ext3 でマウントされた ファイルシステムについてのみ有効である。

`D' オプションは Linux カーネル 2.5.19 以降でのみ利用できる。  

入手方法

chattr は e2fsprogs パッケージの一部であり、 http://e2fsprogs.sourceforge.net から入手できる。  

関連項目

lsattr(1)


 

Index

名前
書式
説明
オプション
属性
作者
バグと制限
入手方法
関連項目

This document was created by man2html, using the manual pages.
Time: 18:50:55 GMT, March 26, 2020