chfs コマンド

目的

ファイルシステムの属性を変更します。

構文

chfs [ -n NodeName ] [ -m NewMountPoint ] [ -u MountGroup ] [ -A { yes | no } ] [ -p { ro | rw } ] [ -t { yes | no } ] [ -a属性= ] [ -d属性 ] FileSystem

説明

chfs コマンドは、ファイルシステムの属性を変更します。 新しいマウント・ポイント、自動マウント、許可、およびファイルシステム・サイズを設定または変更することができます。 FileSystem パラメーターには、マウント・ポイントとして表されたファイルシステムの名前を指定します。

ファイルシステム属性のいくつかは、ファイルシステムの作成時に設定され、変更できないものもあります。 ジャーナル・ファイルシステム (JFS) の場合、この種の属性にはフラグメント・サイズ、ブロック・サイズ、i ノード当たりのバイト数、圧縮、および最小ファイルシステム・サイズがあります。 拡張ジャーナル・ファイルシステム (JFS2) の場合、ブロック・サイズは変更できません。

chfs コマンドは、ファイルシステムにとって意味のない属性も受け入れます。 属性は /etc/filesystems ファイルに保存されますが、ファイルシステムは属性に影響を与えません。 追加の属性は制限される必要があります。 /etc/filesystems ファイル内のスタンザの合計サイズは、512 バイトを 超えてはいけません。 サイズがこの限度を超えると、スタンザは認識されなくなります。

chfs コマンドは、コマンドが理解できない Attribute=Value のペアをすべて無視しますが、/etc/filesystems ファイル適切なスタンザにそれらを追加します。

Example:

chfs -a abcd=1G /

これは、/etc/filesystems ファイル内の root スタンザで、新規 abcd 属性を 1G の値に設定します。

フラグ

項目 説明
-a 属性 = 値 仮想ファイルシステム・タイプに応じて、Attribute=Value の対を 指定します。 複数の属性 = 値のペアを指定するには、複数の -a 属性 = 値 パラメーターを指定します。

以下の属性または値の組は、ジャーナル・ファイルシステム (JFS) に固有のものです。

 
-a copy=Copy#
splitcopy 属性と共に使用されるときに分割するミラー・コピーを 指定します。 デフォルト・コピーは 2 番目のコピーです。 有効な値は 1、2、または 3 です。
 
-a log=LVName
使用する、既存のログの論理ボリューム名のログをとる、ファイルシステムの絶対パス名を指定します。 このファイルシステムのロギング用装置は、 そのファイルシステムと同じボリューム・グループに常駐している必要があります。
 
-a size=NewSize
ジャーナル・ファイルシステムのサイズを指定します。 サイズは、512 バイト・ブロック、メガバイトまたはギガバイト単位で指定できます。 Value が接尾部 M であれば、その値の単位はメガバイトであると解釈されます。 Value が接尾部 G であれば、その値の単位はギガバイトであると解釈されます。 値が + で始まる場合は、 ファイルシステムのサイズを指定の量だけ増加させるよう要求していると解釈されます。 指定したサイズが物理区画サイズで等分に分割できなければ、等分に分割できる近似値に切り上げられます。

ファイルシステムが存在するボリューム・グループは、最大論理ボリューム・サイズを定義し、 さらにファイルシステムのサイズを制限します。

JFS ファイルシステムの最大サイズは、そのフラグメント・サイズと nbpi 値によって決まります。 これらの値により、次のサイズ制限が適用されます。
  NBPI  Minimum AG Size    Fragment Size        Maximum Size (GB)
   512         8        512, 1024, 2048, 4096          8
  1024         8        512, 1024, 2048, 4096         16
  2048         8        512, 1024, 2048, 4096         32
  4096         8        512, 1024, 2048, 4096         64
  8192         8        512, 1024, 2048, 4096        128
 16384         8             1024, 2048, 4096        256
 32768        16                   2048, 4096        512
 65536        32                         4096       1024
131072        64                         4096       1024
 
-a splitcopy=NewMountPointName
ファイルシステムのミラー化されたコピーを分割し、 新しいマウント・ポイントにそれを読み取り専用にマウントします。 これにより、ファイルシステムのコピーには、バックアップの目的で使用できる整合性を持った、 JFS メタデータが与えられます。 ユーザー・データの保全性は保証されません。そのため、この処置を講じるときは、 ファイルシステムの活動を最小限にとどめてください。 オンライン分割ミラー・コピーとして指定できるのは、1 つのコピーだけです。
  以下の属性または値の組は、拡張ジャーナル・ファイルシステム (JFS2) に固有のものです。
-a 属性 = 値
-a ea=v2
JFS2 ファイルシステム拡張属性 (ea) フォーマットを変換します。 V1 フォーマットを使用して いる JFS2 ファイルシステムは、V2 フォーマットを使用するものに変換できます。 こうして変換されたファイルシステム は、さらに変換して v1 に戻すことはできません。 この変換は、オンデマンド方法で行われます。 つまり、拡張属性または ACL の書き込みが行われると、 そのファイル・オブジェクトの変換が行われます。 v2 フォーマットには、NFS4 ACL に対するサポート だけでなく、拡張が容易な名前付き拡張属性に対するサポートも用意されて います。 v1 フォーマットは、 AIX®オペレーティング・システムの旧リリースと互換性があります。
 
-a efs=yes
ファイルシステムを暗号化ファイルシステム (EFS) に変換します。

chfs コマンドは、現在のファイルシステムを EFS ファイルシステムに変更します。 EFS ファイルシステムが有効になると、ea 属性が自動的に変換され、 スケーラブル拡張属性 (v2) を格納できるようになります。 システム上で efsenable コマンドを実行していない場合、このコマンドは失敗します。

制約事項: chfs コマンドで、 次のファイルシステム (マウント・ポイント) を EFS に変換することはできません。 ブート中にセキュリティー・インフラストラクチャー (カーネル・エクステンション、ライブラリーなど) を使用できないからです。
  • /
  • /usr
  • /var
  • /opt
 
-a freeze = { timeout | 0 | off }
timeoutの値に応じて、ファイル・システムを凍結または解凍する必要があることを指定します。 ファイルシステムを凍結すると、そのファイルシステムとほぼ同じディスク・イメージが作成され、ディスクにすべてのダーティー・ファイルシステム・メタデータとユーザー・データが書き込まれます。 この凍結状態ではファイルシステムは読み取り専用になり、このファイルシステムやその内容を変更しようとしても、凍結状態が終了するまで待たなければなりません。 timeout の値は、 0off、または正数のいずれかでなければなりません。 正数を指定すると、ファイルシステムは最大 timeout 秒まで凍結されます。 timeout0 または offの場合、ファイル・システムは解凍され、変更を進めることができます。

注意: 基本ファイルシステム (/ /usr/var/tmp) を凍結すると、 予想外の動作が起こる場合があります。

 
-a [ log | logname ]=LVName
使用する、既存のログの論理ボリューム名のログをとる、ファイルシステムの絶対パス名を指定します。 このファイルシステムのロギング用装置は、 そのファイルシステムと同じボリューム・グループに常駐している必要があります。 キーワード INLINE を使用して、 JFS2 ファイルシステムを持つ論理ボリュームにログを入れるように指定できます。 このオプションを使用するには、INLINE ログを使用して JFS2 ファイルシステムを作成しておく必要があります。 このオプションでは、ファイルシステムが入っている論理ボリュームの名前が変更されても、ログが認識されるよう に、/etc/filesystems ファイルを更新します。
注: OUTLINE ログを使用するファイルシステムの場合、論理ボリュームが適切にフォーマットされ、論理ボリュームのタイプが jfs2logであれば、このオプションを使用してアウトライン・ログをある論理ボリュームから別の論理ボリュームに変更することができます。 アウトライン・ログを変更するために chfs が呼び出された時点でファイル・システムがマウントされている場合、 /etc/filesystems ファイルには変更が表示されますが、ファイル・システムの次のマウント ( umount 操作またはシステム・クラッシュおよびリカバリーの後) までは、実際のログは変更されません。 INLINE ログを使用するファイルシステムの場合、 このオプションは INLINE ログと OUTLINE ログの切り替えをサポートしません。 現在のところ、inlinelog から outlinelog (またはその逆) に切り替えるには、 ファイルシステムを除去してから再作成する必要があります。
リリース AIX 5L および AIX 5.1では、ファイルシステムが inlinelog を使用している場合、ログ・エントリーは /etc/filesystems ファイル内のファイルシステムと同じです。
/j2.1:         
dev             = /dev/fslv00         
vfs             = jfs2         
log             = /dev/fslv00         
mount           = false         
account         = false
しかし、 AIX 5.2 以降のリリースでは、ファイルシステムがインライン・ログを使用している場合、ログ・エントリーは /etc/filesystems ファイルのキーワード INLINE になります。
/j2.23:         
dev             = /dev/fslv04         
vfs             = jfs2         
log             = INLINE         
mount           = false         
options         = rw         
account         = false
ファイル・システムが AIX 5L または AIX 5.1で作成され、後で AIX 5.2 以降のリリースにアップグレードされた場合、 chfs を使用して /etc/filesystems ファイル内の inlinelog 名を変更することができます。
 
-a logsize=LogSize
INLINE ログのサイズを M バイト単位で指定します。 入力サイズは、正の値である 必要があります。 インライン・ログ・サイズが 1 より大か等しい場合は、入力サイズは整数である必要が あります。 入力が 1 より小で、0 より大か等しい浮動小数点値である 場合は、入力サイズは無視され、デフォルトのインライン・ログ・サイズが 取られます。 値が + (正符号) で始まっている 場合は、INLINE ログ・サイズを指定された量だけ大きくする要求として 解釈されます。 値が - (負符号) で始まっている 場合は、INLINE ログ・サイズを指定された量だけ小さくする要求として 解釈されます。

INLINE ログが使用されていない場合は、入力は 無視されます。 INLINE ログ・サイズは、ファイルシステムのサイズの 10% を超えることはできませんし、2047 M バイトより 大きくすることはできません。

 
-a managed={yes | no}
JFS2 ファイルシステム上のデータ管理アプリケーション・プログラミング・インターフェース (DMAPI) を有効にします。
 
-a maxext=Value
ファイルシステム・ブロック内のファイル・エクステントの最大サイズを指定します。 ゼロ値は、JFS2 のデフォルトの最大値を使用する必要があることを指定します。 0 未満の値、またはサポートされる最大エクステント・サイズ 16777215 を超える値は無効です。 既存のファイル・エクステントは、この変更の影響を受けませんので注意してください。
 
-a mountguard={yes | no}
PowerHA® SystemMirror® またはその他のクラスタリング環境でサポートされない並行マウントが行われないようにファイル・システムを保護します。 mountguard が有効な場合、ファイルシステムが他のノードまたはシステムにマウントされるように見えても、そのファイルシステムはマウントできません。 mountguard 設定を一時的に無効にするには、mount コマンドの noguard オプションを参照してください。
 
-a options = mountOptions
chfs コマンドに渡す mount オプションを指定します。 有効なオプションのリストについては、mount コマンドを参照してください。
 
-a reclaim={normal | fast}
normal オプションを選択すると、reclaim コマンドは可能な限りファイルシステムをパックします。 reclaim コマンドは、フリー・スペースの最大の連続チャンクを見つけ、可能な限り再利用処理を行います。 これにより、システム内の他の場所で、再利用処理が行われたフリー・スペースが再利用可能になります。 ただし、normal オプションを reclaim コマンドに使用すると、ファイルシステムはフリーズ状態になります。 そのため、大量のデータがパックされる場合、フリーズ時間は著しく長くなる可能性があります。

fast オプションを選択すると、reclaim コマンドは、フリー・スペースの最大の連続チャンクを見つけ、可能な限り再利用処理を行います。 これにより、システム内の他の場所で、再利用処理が行われたフリー・スペースが再利用可能になります。

reclaim コマンドで回復されるフリー・スペース量を正確に判別することはできません。 実際にスペースをレクラメーション処理する chfs コマンドを実行する前に、レクラメーション処理されるスペースの概算見積もりを得るには、まず lvmstat –v <volume group> –eを実行してから、 chfs コマンドの終了後に lvmstat –v <volume group> –rを実行する必要があります。

最初の lvmstat コマンドが静的コレクションをそのボリューム・グループで有効にし、2 番目のコマンドが記録された統計を表示します。

ファイルシステム内のすべてのディスクで、再利用操作がサポートされている必要があります。 再利用操作は実際のファイルシステム・サイズを変更しません。 reclaim オプションは、ファイルシステムにスナップショットがある場合は指定できません。 また、ライブ・アップデートが実行中の場合や、ファイルシステムが読み取り専用である場合は実行できません。 reclaim オプションは、ファイルシステムのサイズ変更操作とは併用できません。 このコマンドが進行中の場合、ライブ・アップデートは開始されません。

 
-a refreeze={timeout}
凍結したファイルシステムのタイムアウトをリセットすることを指定します。 timeout は、指定された値にリセットされます。 ファイル・システムは引き続き凍結する必要があります ( -a freeze オプションまたは fscntl インターフェースを使用)。
 
-a size=NewSize
拡張ジャーナル・ファイルシステムのサイズを 512 バイト・ブロック、 メガバイトまたはギガバイト単位で指定します。 Value が接尾部 M であれば、その値の単位はメガバイトであると解釈されます。 Value が接尾部 G であれば、その値の単位はギガバイトであると解釈されます。 値が + で始まる場合は、 ファイルシステムのサイズを指定の量だけ増加させるよう要求していると解釈されます。 Value が - で始まっている場合は、ファイル・システム・サイズを指定された量だけ縮小する 要求として解釈されます。

指定されたサイズが + または - で始まってはいないが、ファイルシステムの 現行サイズより大または小である場合も、それはファイルシステム・サイズの増大要求または縮小 要求です。

ファイル・システムに inlinelogがある場合、このファイル・システムの新しいサイズが現行のファイル・システム・サイズと同じであれば、 inlinelog のサイズは変更されません。 指定したサイズが物理区画サイズで等分に分割できなければ、等分に分割できる近似値に切り上げられます。 ストライプ済みの論理ボリューム上に ファイルシステムがある場合、新規ファイルシステムのサイズは概数にされ、物理区画サイズとストライプ幅を掛けた数の倍数の中で 最も近い数値となります。 ストライプ幅は、ストライプ論理ボリュームを形成するハード・ディスクの数です。

この属性は、-d フラグが指定されていない限り、 JFS2 ファイルシステムの作成時には必須です。 ファイルシステムが常駐するボリューム・グループは、 最大論理ボリューム・サイズを定義し、ファイルシステムのサイズも制限します。 最大サイズはファイルシステムのブロック・サイズで決定されます。
fs block size (byte)        MAX fssize (TB)
===========================================
512                         4
1024                        8
2048                        16
4096                        32

ファイルシステム・サイズの縮小要求が正常に実行される のは、論理ボリュームが要求されたファイルシステム・サイズに応じて、元の LV サイズと等しいか、または それよりも小さいときです。

size 属性と logsize 属性の両方を 1 つの chfs 要求で指定して、ファイル・システムとその inlinelog サイズをサイズ変更することができます。

注: 縮小操作中に、ファイル・システムがかなりの時間フリーズする可能性があります。 アプリケーションへの影響を最小限にするには、ワークロードが小さい間に、ファイルシステムを少量に縮小してください。
 
-a vix={yes|no}
ファイルシステム内に連続する 16 KB の空きエクステントがない場合に、 デフォルトの 16 KB より小さい i ノード・エクステントをファイルシステムが割り当てることが可能かどうかを指定します。 小さいフリー・エクステントに対してファイル・システムを使用可能にした後は、以前のバージョンの AIX でそのファイル・システムにアクセスすることはできず、マーキングを除去することもできません。
はい
ファイルシステムは、可変長 i ノード・エクステントを割り振ることができます。
いいえ
ファイルシステムは、i ノード・エクステントにデフォルトのサイズ 16 KB を使用する 必要があります。 ファイルシステムに既に可変長 i ノード・エクステントが含まれている場合は、この指定は効力を持ちません。
 
注:
  1. JFS2 は、 結果として生じるファイルシステムのサイズに影響を与えるような nbpi 値やフラグメント・サイズ値を持ちません。
  2. 要求されたサイズが物理区画サイズより小さい場合は、ファイルシステムは圧縮 できません。 少なくとも 1 つの物理区画サイズでなければ、縮小要求の対象にはなりえません。
  3. スナップショットを持つファイルシステムは、圧縮できません。
  4. ファイルシステムの縮小操作中、ファイルシステムへの書き込み操作が断続的に制限されることがあります。
  5. 拡張操作が実行されているときは、ファイルシステムにアクセスできません。 インライン・ログのある大きなファイルシステムは、数分間使用できない場合があります。 インライン・ログを再フォーマットする必要があります。
  6. 新しいファイル・システム・サイズが指定されているが、その inlinelog サイズが指定されていない場合、新しい logsize は、指定された拡張/縮小されたファイル・システム・サイズに基づいて比例して調整 (拡張/縮小) されます。 ログ・サイズの増減は、ファイルシステム・サイズの 増減の 40% を超えることは できません。
  7. 新しいファイル・システム・サイズが指定されず、 inlinelogが存在する場合、新しい logsize が指定されると、新しいログ・サイズを含むようにファイル・システム・サイズが変更される可能性があります。
  8. df コマンドによって報告される解放されたスペースは、ファイル・システムのフラグメント化が原因で shrinkFS 要求によって切り捨てられる可能性のあるスペースを必要としません。 フラグメント化されたファイル・システムに、切り捨て対象の領域からオブジェクトを移動するための十分なフリー・スペースがなく、 shrinkFS がファイル・システムのデフラグを実行しない場合、そのファイル・システムは縮小されない可能性があります。 この場合、chfs コマンドは失敗し、戻りコード 28 (ENOSPC) が表示されます。
  9. maxext 属性は、ファイルシステムが新しいリリースでこの属性を指定して作成されていたとしても、古いリリースでは無視されます。
  10. AIX 7.2 テクノロジー・レベル 1 以降では、 chfs コマンドを実行して区画を解放すると、解放された区画でスペース再利用プロセスが開始されます。
-A 自動マウント用の属性を指定します。
はい
ファイルシステムは、システム再起動時に自動的にマウントされます。
いいえ
ファイルシステムは、システム再起動時にマウントされません。
-d 属性 指定された属性を、指定されたファイル・システムの /etc/filesystems ファイルから削除します。
-m NewMountPoint 指定されたファイルシステムに新しいマウント・ポイントを 指定します。
-n NodeName 指定したファイルシステムのノード名を指定します。 /etc/filesystems ファイル内のノード名属性は、新しい名前で更新されます。 ノード名属性は、NFS (ネットワーク・ファイルシステム) 仮想ファイルシステム・タイプなどの一定のリモート仮想ファイルシステム・タイプに固有の属性です。
-p ファイルシステムの許可を設定します。
ro
読み取り専用許可を指定します。
rw
読み取り/書き込み許可を指定します。
-t 指定されたファイルシステムのアカウンティング属性を 設定します。
はい
ファイルシステムのアカウントは、アカウント・サブシステムによって処理されます。
いいえ
ファイルシステムのアカウントは、アカウント・サブシステムによって処理されません。この値がデフォルトです。
-u MountGroup マウント・グループを指定します。 マウント・グループは、関連する複数のマウント対象を 1 つのグループとしてまとめるときに使用します。これにより、複数のマウント対象を個別にではなく一度にマウントすることができます。 例えば、特定のテストの実行にあたって、幾つかのスクラッチ・ファイルシステムを いつでも一緒にマウントする必要がある場合は、それらのスクラッチ・ファイルシステムは、それぞれを test マウント・グループに配置できます。 これらはすべて、 mount -t test コマンドなどの単一のコマンドでマウントすることができます。

セキュリティー

アクセス制御

このコマンドを実行できるのは、root ユーザーまたはシステム・グループのメンバーのみです。

RBAC ユーザーと Trusted AIX ユーザーへの注意: このコマンドは特権操作を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権について詳しくは、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

  1. ファイル・システムのサイズを変更するには、以下のようにします。/testジャーナル・ファイルシステムの場合は、次のように入力します。
    chfs  -a size=24576 /test
    このコマンドは, システムのサイズを変更します。/test24576 個の 512 バイト・ブロックまたは 12MB (以前はこれより大きくなかった場合) にジャーナル処理されたファイル・システム。
  2. サイズを大きくするには、以下のようにします。/testジャーナル・ファイルシステムの場合は、次のように入力します。
    chfs  -a size=+8192 /test
    このコマンドは, システムのサイズを増やします。/test8192 個の 512 バイト・ブロック、または 4 MB のジャーナル・ファイルシステム。
  3. JFS2 ファイルシステムを NFS4 ACL をサポートできるバージョンに変換する 場合は、次のように入力します。
    chfs -a ea=v2 /test
  4. ファイルシステムのマウント・ポイントを変更するには、次のように入力します。
    chfs  -m /test2 /test
    このコマンドは, 次のものからファイル・システムのマウント・ポイントを変更します。/test/test2.
  5. ファイルシステムからアカウント属性を削除するには、 次のように入力します。
    chfs -d account /home
    このコマンドは、ファイルシステム /home からアカウント属性を除去します。 アカウンティング属性は、以下から削除されます。/home:/etc/filesystems ファイルのスタンザ。
  6. ミラー化されたファイルシステムのコピーを分割して、 それをオンライン・バックアップとして使用するために読み取り専用にマウントするには、 次のように入力します。
    chfs -a splitcopy=/backup -a copy=2 /testfs
    これにより、 /testfs の読み取り専用コピーが /backupにマウントされます。
  7. /test ジャーナル・ファイルシステムのファイルシステム・サイズを変更するには、次のように入力します。
    chfs -a size=64M /test
    このコマンドは、 /test ジャーナル・ファイルシステムのサイズを 64MB に変更します (以前はこれ以下であった場合)。
  8. /test JFS2 ファイルシステムのサイズを減らすには、次のように入力します。
    chfs  -a size=-16M /test
    このコマンドは、 /test JFS2 ファイルシステムのサイズを 16MB削減します。
  9. ファイルシステムを凍結するには、次のように入力します。
    chfs  -a freeze=60 /adl
    このコマンドは、 /adl ファイル・システムを最大 60 秒間フリーズします。
  10. ファイルシステムを解凍するには、次のように入力します。
    chfs  -a freeze=off /zml
    このコマンドは、 /zml ファイル・システムを解凍します。

ファイル

項目 説明
/etc/filesystems 既知のファイルシステムをリストし、その特性を定義します。