attr - XFS ファイルシステム オブジェクトの拡張属性
attr [ -LRSq ] -s attrname [ -V attrvalue ] pathname
attr [ -LRSq ] -g attrname pathname
attr [ -LRSq ] -r attrname pathname
attr [ -LRSq ] -l pathname
拡張属性は、ユーザーが名前:値のペアを XFS ファイルシステム内のオブジェクトに付加できる機能を実装します。
このドキュメントでは、attr コマンドについて説明します。このコマンドは、同じ名前の IRIX コマンドとほぼ互換性があります。したがって、特に XFS ファイルシステムのユーザーを対象としています。ファイルシステムに依存しない拡張属性の操作については、getfattr(1) および setfattr(1) のドキュメントを参照してください。
拡張属性を使用して、ファイルに関するメタ情報を保存できます。たとえば、「character-set=kanji」は、ドキュメントを表示するときに漢字文字セットを使用するようにドキュメント ブラウザに指示でき、「thumbnail=...」は、高解像度のグラフィック イメージの低解像度の概要を提供できます。
XFS ファイルシステムでは、名前の長さは最大 256 バイトで、最初の 0 バイトで終了します。その目的は、属性の印刷可能な ASCII (または他の文字セット) 名であることです。この値には、最大 64KB の任意のバイナリ データを指定できます。
属性は、通常のファイル、ディレクトリ、シンボリック リンク、デバイス ノードなど、あらゆるタイプの XFS i ノードに付加できます。
XFS は、すべてのファイルシステム オブジェクトに関連付けられた 2 つの互いに素な属性の名前空間を使用します。これらはルート アドレス空間とユーザー アドレス空間です。 ルート アドレス空間にはスーパーユーザーのみがアクセスでき、関数呼び出しにフラグ引数を指定することによってのみアクセスできます。他のユーザーは、ルート アドレス空間の属性を表示したり、属性を変更したりすることはできません。 ユーザーのアドレス空間は通常のファイル権限メカニズムによって保護されているため、ファイルの所有者は、特定のファイルの属性値を表示および/または変更できるユーザーを決定できます。
attr ユーティリティを使用すると、シェル スクリプト内からファイル システム オブジェクトに関連付けられた拡張属性を操作できます。
attr が実行できる主な操作は 4 つあります。
-g attrname オプションは、attr に、名前付きオブジェクトを検索し、その属性名に関連付けられた値を (stdout に) 出力するように指示します。 -q フラグを使用すると、stdout は属性の値のみになり、ファイルに直接保存したり、パイプされたコマンドを介して処理したりするのに適しています。
-l オプションは、オブジェクトに関連付けられているすべての属性の名前と、それらの各属性の値のバイト数をリストするように attr に指示します。 -q フラグを使用すると、標準出力はスクリプトへの入力に適した、1 行に 1 つずつ属性名のみの単純なリストになります。
-r attrname オプションは、指定された名前の属性が存在する場合、その属性をオブジェクトから削除するように attr に指示します。正常に完了しても出力はありません。
-s attrname オプションは、オブジェクトの名前付き属性を標準入力から読み取った値に設定するように attr に指示します。その名前の属性がすでに存在する場合、その値はこの値に置き換えられます。その名前の属性がまだ存在しない場合は、この値を使用して属性が作成されます。 -V attrvalue フラグを使用すると、属性は attrvalue の値を持つように設定され、stdin は読み取られません。 -q フラグを指定すると、stdout は使用されません。 -q フラグを指定しないと、属性名と値全体を示すメッセージが出力されます。
-L オプションが指定されており、名前付きオブジェクトがシンボリック リンクである場合は、シンボリック リンクによって参照されるオブジェクトの属性を操作します。このオプションを使用しない場合、シンボリック リンク自体の属性を操作します。
-R オプションが指定され、プロセスに適切な権限がある場合は、USER 属性の名前空間ではなく、root 属性の名前空間で操作します。
-S オプションも同様ですが、security 属性の名前空間の使用を指定します。
-q オプションを指定すると、attr は沈黙を保とうとします。エラー メッセージは (stderr に) 出力されますが、ステータス メッセージは (stdout に) 出力されません。
標準のファイル交換/アーカイブ プログラム tar(1) および cpio(1) は拡張属性をアーカイブまたは復元しませんが、xfsdump( 8) プログラムは行います。
このコマンドの IRIX バージョンに存在する list オプションはサポートされていません。 getfattr は、すべての属性名を取得するメカニズムを提供します。
Andreas Gruenbacher、andreas.gruenbacher@gmail.com>、および SGI XFS 開発チーム、linux-xfs@oss.sgi.com>。
バグレポートやコメントはhttps://savannah.nongnu.org/bugs/?group=attr> または acl-devel@nongnu.org> に送信してください。 。
getfattr(1), setfattr(1), attr_get(3), attr_set(3), attr_multi(3), attr_remove(3), attr(5), xfsdump(8)