このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。

機械翻訳について

20.17 XFSファイル・システムについて

ノート

Oracle LinuxにおけるXFSのテクニカル・サポートを利用するには、Oracle Linux Premier Supportアカウントがある必要があります。

XFSファイル・システムは、x86_64アーキテクチャ上のUnbreakable Enterprise Kernelリリース2 (2.6.39)およびUnbreakable Enterprise Kernelリリース3 (3.8.13)でのみサポートされます。

XFSは、もともとSilicon Graphics, Inc.によってIRIXオペレーティング・システム用に作成され、後にLinuxに移植された高性能のジャーナル・ファイル・システムです。 ファイル・システムが多数のストレージ・デバイスにまたがる場合でも、XFSの並列I/Oパフォーマンスのおかげで、I/Oスレッド、ファイル・システムの帯域幅、ファイルおよびファイル・システムのサイズに、高いスケーラビリティが確保されます。

XFSの典型的な使用事例には、FC接続された複数のディスク・アレイから構成されているストレージ・サーバーを複数使用して、その上に数百テラバイトのファイル・システムを実装する場合があります。

Oracle Linuxでは、ルート(/)またはbootファイル・システムでのXFSの使用はサポートされていません。

XFSは非常に大きなファイル・システムの実装を必要とするエンタープライズ・レベルのコンピューティング環境でのデプロイメントに適していますが、それは次のような多くの機能によるものです。

  • x86_64システム上では、XFSはほぼ8EBの最大ファイル・システム・サイズおよび最大ファイル・サイズをサポートします。 Oracle Linux上のXFSでのサポート制限の最大値は100TBです。

  • XFSはメタデータ操作のためのジャーナルを実装しており、それにより、停電またはシステム・クラッシュの後でもファイル・システムの整合性が保証されます。 XFSは、ファイル・システムの更新を非同期で循環バッファ(journal)に記録しており、それにより、ディスクに対する実際のデータ更新のコミットが可能です。 ジャーナルは、ファイル・システムのデータ・セクションに内部的に配置することも、別のデバイスに外部的に配置してディスク・アクセスの競合を低下させることもできます。 システム・クラッシュや停電が発生した場合、ファイル・システムの再マウント時にジャーナルが読み取られ、保留中のメタデータ操作がすべてリプレイされて、ファイル・システムの整合性が確保されます。 このリカバリ速度は、ファイル・システムのサイズに依存しません。

  • XFSは複数の割当てグループに内部的に区分けされます。これが固定サイズの仮想ストレージ領域です。 作成するファイルやディレクトリはすべて、複数の割当てグループにまたがることが可能です。 各割当てグループは、他の割当てグループとは独立に、独自のinodeと空き領域の組合せを管理して、I/O操作のスケーラビリティと並列性を確保します。 ファイル・システムが多くの物理デバイスにまたがる場合、割当てグループによりチャネルをストレージ・コンポーネントに基盤から分離することができるため、スループットを最適化できます。

  • XFSはエクステント・ベースのファイル・システムです。 ファイルのフラグメンテーションと複数箇所への散在を少なく保つために、各ファイルのブロックは可変長のエクステントを持つことができます。ここで、各エクステントは1つ以上の連続ブロックで構成されています。 XFSの領域割当てスキームは、ファイル・システムの操作に使用できる空きエクステントを効率的に見つけるように設計されています。 XFSでは、散在するファイル上の空き部分にストレージが割り当てられません。 可能であれば、ファイルのエクステント割当てマップは、ファイルのinodeに格納されます。 大きな割当てマップは、割当てグループによって維持されるデータ構造に格納されます。

  • 基礎にあるソフトウェア・ベースまたはハードウェア・ベースのストライプ・アレイ上に作成するXFSファイル・システムのスループットを最大化するには、mkfs.xfsコマンドの-dオプションに対してsuおよびsw引数を使用し、各ストライプ・ユニットのサイズとストライプ当たりのユニット数を指定します。 XFSは、その情報を使用して、ストレージに対して適切なようにデータ、inodeおよびジャーナルを調整します。 lvmボリューム、mdボリュームおよび一部のハードウェアRAID構成では、XFSは最適なストライプ・パラメータを自動的に選択できます。

  • フラグメンテーションを少なくし、パフォーマンスを向上させるために、XFSは遅延割当てを実装します。つまり、データ用のファイル・システム・ブロックをバッファ・キャッシュに確保し、オペレーティング・システムがそのデータをディスクにフラッシュする際にブロックを割り当てます。

  • XFSはファイル用の拡張属性をサポートします。各属性値のサイズは最大64KBで、各属性をrootネームスペースまたはuserネームスペースに割り当てることができます。

  • XFSでは、直接I/Oにより、スループットが高く、キャッシュされないI/Oが実装されます。アプリケーションとストレージ・デバイスの間で直接DMAを実行することで、デバイスのI/O帯域幅を完全利用することができるためです。

  • ボリューム・マネージャ、ハードウェア・サブシステムおよびデータベースに用意されているスナップショット機能をサポートするには、xfs_freezeコマンドを使用して、XFSファイル・システムのI/Oを停止して再起動します。 20.22項「XFSファイル・システムの停止と停止解除」を参照してください。

  • アクティブなXFSファイル・システムで個々のファイルをデフラグするには、xfs_fsrコマンドを使用します。 20.25項「XFSファイル・システムのデフラグ」を参照してください。

  • XFSファイル・システムをサイズ調整するには、xfs_growfsコマンドを使用します。 20.21項「XFSファイル・システムのサイズ調整」を参照してください。

  • 稼働中のXFSファイル・システムをバックアップおよびリストアするには、xfsdumpおよびxfsrestoreコマンドを使用します。 20.24項「XFSファイル・システムのバックアップとリストア」を参照してください。

  • XFSはユーザー、グループ、およびファイル・システムのマウント時に初期化されたブロック上のプロジェクト・ディスク割当てとinode使用量をサポートします。 プロジェクト・ディスク割当てを使用すると、個々のディレクトリ階層に、どのユーザーまたはグループが書き込みアクセスを持っているかに関係なく、XFSファイル・システム内部で、そのディレクトリ階層に対して制限を設定できます。

XFSの詳細情報は、http://xfs.org/index.php/XFS_Papers_and_Documentationを参照してください。