5 XFSファイル・システムの管理

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

XFSの典型的なユース・ケースは、複数のストレージ・サーバー(各サーバーが、FC接続された複数のディスク・アレイからなる)にまたがるTBサイズのファイル・システムの実装です。

Oracle Linux 8では、root (/)またはbootファイル・システムでXFSを使用できます。

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

  • メタデータ操作のためのジャーナルが実装されます。

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

  • 複数の割当てグループに内部的に区分けされます。これが固定サイズの仮想ストレージ領域です。

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

  • エクステント・ベースのファイル・システム。

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

  • reflinkおよび重複排除機能が含まれています。これにより、次の利点があります。

    • 各コピーに専用のinodeがあるため、各コピーは異なるファイル・メタデータ(権限など)を保持できます。データ・エクステントのみが共有されます。

    • このファイル・システムでは、アプリケーションで特別な操作が必要になることなく、あらゆる書込みでコピーオンライトが発生します。

    • あるエクステントを変更しても、その他すべてのエクステントは共有状態を維持できます。そのようにして、エクステント単位で領域が節約されます。ただし、ハードリンク・ファイルへの変更には、ファイル全体の新しいコピーが必要になる点に注意してください。

  • 遅延割当てが実装されます

    断片化を減らしパフォーマンスを高めるために、XFSでは、バッファ・キャッシュにおいてデータ用のファイル・システム・ブロックが予約され、OSでそのデータがディスクにフラッシュされるときにそのブロックが割り当てられます。

  • XFSでは、ファイルの拡張属性が認識されます。

    各属性の値のサイズは最大で64 KBにでき、各属性をルート領域またはユーザー名領域に割り当てることができます。

  • XFSにおける直接I/Oでは、高スループットの非キャッシュI/Oが実装されます。

    XFSでは、デバイスのすべてのI/O帯域幅を使用して、アプリケーションとストレージ・デバイスの間でDMAが直接実行されます。

  • ボリューム・マネージャ、ハードウェア・サブシステムおよびデータベースで提供されるスナップショット機能が含まれています。

    XFSファイル・システムのI/Oを一時停止し再開するには、xfs_freezeコマンドを使用します。XFSファイル・システムの凍結と凍結解除を参照してください。

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

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

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

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

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

XFSの詳細は、https://xfs.wiki.kernel.org/を参照してください。

ローカル・ファイル・システム管理の概要は、「ファイル・システム管理について」を参照してください。

XFSパッケージのインストール

ノート:

Oracle Linux yumサーバーからXFSパッケージを入手することもできます。

  1. ULNにログインし、システムでol8_x86_64_baseos_latestチャネルをサブスクライブします。

  2. システム上で、xfsprogsパッケージとxfsdumpパッケージをインストールします。
    sudo dnf install xfsprogs xfsdump
  3. XFS開発およびQAパッケージが必要な場合は、システムでol8_x86_64_optionalチャネルをサブスクライブし、それらをインストールします。

    sudo dnf install xfsprogs-devel xfsprogs-qa-devel

XFSファイル・システムの作成

mkfs.xfsコマンドを使用して、XFSファイル・システムを作成できます。次に例を示します。

sudo mkfs.xfs /dev/vg0/lv0

前のコマンドを実行すると、次の出力が生成されます。

meta-data=/dev/vg0/lv0           isize=256    agcount=32, agsize=8473312 blks
         =                       sectsz=512   attr=2, projid32bit=0
data     =                       bsize=4096   blocks=271145984, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal log           bsize=4096   blocks=32768, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0 

次の例は、ストライプユニット・サイズが32KB、ストライプ当たり6ユニットのXFSファイル・システムを作成する方法を示しています。そのためには、引数のsuおよびsw-dオプションに指定します。

sudo mkfs.xfs -d su=32k,sw=6 /dev/vg0/lv1

詳細は、mkfs.xfs(8)のマニュアル・ページを参照してください。

XFSファイル・システムの変更

ノート:

マウントされているXFSファイル・システムは変更できません。

xfs_adminコマンドを使用すると、マウントされていないXFSファイル・システムを変更できます。たとえば、次のような操作ができます。

  • レイジー・カウンタの有効化または無効化

  • ファイル・システムのUUIDの変更

  • ファイル・システムのラベルの変更

マウントされていないXFSファイル・システムの既存のラベルを表示し、新しいラベルを適用するには、次のコマンドを使用します。

sudo xfs_admin -l /dev/sdb
label = ""
sudo xfs_admin -L "VideoRecords" /dev/sdb
writing all SBs
new label = "VideoRecords"

ノート:

ラベルの最大長は12文字です。

既存のUUIDを表示してから、新しいUUIDを生成するには、次のコマンドを使用します。

sudo xfs_admin -u /dev/sdb
sudo xfs_admin -U generate /dev/sdb

UUIDを完全にクリアする場合は、次のコマンドを使用します。

sudo xfs_admin -U nil /dev/sdb
Clearing log and setting UUID
writing all SBs
new UUID = 00000000-0000-0000-0000-000000000000

レイジー・カウンタを無効にしてから、再度有効にするには、次のコマンドを使用します。

sudo xfs_admin -c 0 /dev/sdb
sudo xfs_admin -c 1 /dev/sdb

詳細は、mkfs_admin(8)マニュアル・ページを参照してください。

XFSファイル・システムのサイズ調整

ノート:

マウントされていないXFSファイル・システムはサイズ調整できません。また、XFSファイル・システムを縮小するためのコマンドはありません。

xfs_growfsコマンドを使用すると、マウントされているXFSファイル・システムのサイズを大きくできます(基礎となるデバイスにその変更に対応する領域がある場合)。このコマンドは、基礎となるデバイスのレイアウトやサイズには影響しません。必要な場合は、基礎ボリューム・マネージャを使用して、使用可能な物理ストレージを増やします。たとえば、LVMボリューム・グループに使用可能なストレージを大きくするにはvgextendコマンドを使用でき、ファイル・システムが格納されている論理ボリュームのサイズを大きくするにはlvextendを使用できます。

partedコマンドを使用して、XFSファイル・システムが含まれているパーティションのサイズを変更することはできません。かわりに、サイズを大きくしてパーティションを再作成し、そのコンテンツをバックアップ(元のパーティションを削除してある場合)または元のパーティションのコンテンツ(ディスク領域を解放するためにそれを削除していない場合)からリストアする必要があります。

たとえば、ブロック・サイズを4KBと仮定して、/myxfs1のサイズを4TBに増やします。次に例を示します。

sudo xfs_growfs -D 1073741824 /myxfs1

ファイル・システムのサイズを、基礎となるデバイスでサポートされる最大サイズまで増加するには、-dオプションを指定します。

sudo xfs_growfs -d /myxfs1

詳細は、xfs_growfs(8)のマニュアル・ページを参照してください。

Oracle Linux 8では、Reflink機能を使用することでXFSファイル・システムを作成できます。この機能を使用すると、ディスク領域の消費が減り、ファイルがより高速にコピーされるようになります。たとえば、ディレクトリ・ツリーをコピーするためにreflink対応ツールを使用した場合は、コピー内のファイルと元のファイルとでディスク領域が共有されます。ファイル・システムの通常のコピーを作成するよりも、ディレクトリ・ツリーのreflinkコピーの作成にかかる時間は大幅に短縮されます。また、追加のストレージが使用されることがありません。

なお、Oracle Linux 8では、mkfs.xfsコマンドを使用してフォーマットするときは、デフォルトでreflink機能が有効になります。

XFSのreflinkサポートの使用を開始するには、次の手順を実行します。

  1. 次のように、ファイル・システムをフォーマットします。

    sudo mkfs.xfs /dev/sda1
    meta-data=/dev/sda1              isize=512    agcount=4, agsize=6553600 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=1, sparse=1, rmapbt=0
             =                       reflink=1
    data     =                       bsize=4096   blocks=26214400, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    log      =internal log           bsize=4096   blocks=12800, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
  2. ファイル・システムをマウントします。

    sudo mount /dev/sda1 /storage

    これで、このファイル・システムは新しいファイルを取り込む準備ができました。

reflink機能の使用に関する詳細な実例は、https://blogs.oracle.com/linux/xfs-data-block-sharing-reflinkを参照してください。

XFSファイル・システムの停止と停止解除

XFSファイル・システムのハードウェア・ベースのスナップショットをとる必要がある場合、書込み操作を一時的に停止できます。

ノート:

lvcreateコマンドを使用してLVMスナップショットを作成する場合は、書込み操作を明示的に一時停止する必要はありません。

XFSファイル・システムを凍結するには、xfs_freezeコマンドに-fオプションを使用します。

sudo xfs_freeze -f /myxfs

XFSファイル・システムを凍結解除するには、xfs_freezeコマンドに-uオプションを使用します。

sudo xfs_freeze -u /myxfs

ノート:

xfs_freezeコマンドは、btrfsext3およびext4ファイル・システムでも使用できます。

詳細は、xfs_freeze(8)のマニュアル・ページを参照してください。

XFSファイル・システムでの割当ての管理

XFSファイル・システム上の割当てを管理するには、xfs_quotaツールを使用します。このツールは、XFSでの割当て実装に対応しています。edquotaなどのその他の割当てツールでXFS割当てを編集できる場合がありますが、xfs_quotaをお薦めします。

詳細は、xfs_quota(8)のマニュアル・ページを参照してください。

ブロック使用状況情報の表示

すべてのユーザー用のmyxfsファイル・システムのブロック使用量制限と現在の使用量を表示するには、xfs_quotaコマンドを使用します。

xfs_quota -x -c 'report -h' /myxfs
User quota on /myxfs (/dev/vg0/lv0)
                        Blocks              
User ID      Used   Soft   Hard Warn/Grace   
---------- --------------------------------- 
root            0      0      0  00 [------]
guest           0   200M   250M  00 [------]

次の形式のコマンドでは、df -hコマンドの方法でブロックとinodeの未使用数と使用数が表示されます。

sudo xfs_quota -c 'df -h' /myxfs
Filesystem     Size   Used  Avail Use% Pathname
/dev/vg0/lv0 200.0G  32.2M  20.0G   1% /myxfs
sudo xfs_quota -c 'df -ih' /myxfs
Filesystem   Inodes   Used   Free Use% Pathname
/dev/vg0/lv0  21.0m      4  21.0m   1% /myxfs

割当て制限の設定

-xオプションを指定してエキスパート・モードに入ると、limitなどのサブコマンドを使用して、個別ユーザーごとのblockおよびinode使用量の弱い制限および強い制限を設定できます。次に例を示します。

sudo xfs_quota -x -c 'limit bsoft=200m bhard=250m isoft=200 ihard=250 guest' /myxfs 

このコマンドを使用するには、ユーザー割当てを有効にし、ファイル・システムをマウントしている必要があります。

グループ割当てを有効にしてマウントしたXFSファイル・システム上でグループに対して制限を設定するには、limit-gオプションを指定します。

sudo xfs_quota -x -c 'limit -g bsoft=5g bhard=6g devgrp' /myxfs

プロジェクト割当て制限の設定

次の手順では、pquotaオプションを使用してファイル・システムをすでにマウントし、/etc/projectsにプロジェクトIDを作成していることを前提としています。プロジェクト割当ての設定を参照してください。

  1. xfs_quotaprojectサブコマンドを使用して、プロジェクトのXFSファイル・システムで管理対象ツリーを定義します。

    sudo xfs_quota -x -c ’project -s project_namemountpoint

    たとえば、プロジェクトtestproj/myxfsファイル・システムでディレクトリ階層/myxfs/testdirに対応する管理対象ツリーを定義するには、次の操作を行います。

    sudo xfs_quota -x -c ’project -s testproj’ /myxfs
  2. limitサブコマンドを使用して、プロジェクトのディスク使用量に制限を設定します。

    sudo xfs_quota -x -c ’limit -p arguments project_namemountpoint

    たとえば、プロジェクトtestprojにディスク容量10GBの強い制限を設定するには、次のコマンドを使用します。

    sudo xfs_quota -x -c ’limit -p bhard=10g testproj’ /myxfs

詳細は、projects(5)projid(5)およびxfs_quota(8)のマニュアル・ページを参照してください。

XFSファイル・システムのバックアップとリストア

xfsdumpパッケージには、ユーティリティのxfsdumpxfsrestoreが含まれています。xfsdumpコマンドは、XFSファイル・システム内のファイルを調べ、バックアップが必要なファイルを特定し、それらをストレージ・メディアにコピーします。xfsdumpコマンドを使用して作成するバックアップは、エンディアン・アーキテクチャが異なるシステム間でポータブルです。xfsrestoreコマンドは、XFSファイル・システムの完全バックアップまたは増分バックアップをリストアします。バックアップからは、個別ファイルやディレクトリ階層をリストアすることもできます。

ノート:

LVMスナップショットはボリュームのスパース・クローンをすぐに作成しますが、xfsdumpはそれと異なり、時間をかけてファイル・システム・データのコピーを作成します。

xfsdumpコマンドを使用して、XFSファイル・システムのバックアップをテープ・ドライブなどのデバイスや、様々なファイル・システム上のバックアップ・ファイルに作成できます。バックアップは、同じデバイスに書き込まれる複数の物理メディアにまたがってもかまいません。また、同じメディアに複数のバックアップを書き込むこともできます。ファイルには、単一のバックアップのみを書き込むことができます。このコマンドでは、物理メディアにある既存のXFSバックアップは上書きされません。既存のバックアップを上書きする必要がある場合は、適切なコマンドを使用して物理メディアを消去する必要があります。

たとえば、次のコマンドは、XFSファイル・システム(/myxfs)のレベル0(ベース)バックアップをデバイス/dev/st0に書き込み、そのバックアップにセッション・ラベルを割り当てます。

sudo xfsdump -l 0 -L "Backup level 0 of /myxfs `date`" -f /dev/st0 /myxfs

同じコマンドを使用して、既存のバックアップに関連する増分ダンプを作成できます。次に例を示します。

sudo xfsdump -l level -L "Backup level level of /myxfs `date`" -f /dev/st0 /myxfs

レベル1バックアップではレベル0バックアップより後のファイル・システム変更のみが記録され、レベル2バックアップでは最新のレベル1バックアップより後の変更のみが記録され、以後同様にレベル9まで続きます。

[Ctrl]と[C]を押すことでバックアップを中断し、xfsdump-Jオプション(ダンプ・インベントリの抑制)を指定しなかった場合は、-Rオプションを指定することで、後でダンプを再開できます。次に例を示します。

sudo xfsdump -R -l 1 -L "Backup level 1 of /myxfs `date`" -f /dev/st0 /myxfs

前述の例では、以前中断したセッションのバックアップ・セッション・ラベルが上書きされます。

xfsrestoreコマンドを使用して、XFSファイル・システムで作成したバックアップに関する情報の確認や、バックアップからのデータのリストアを実行します。

xfsrestore -Iコマンドを使用すると、セッションIDやセッション・ラベルなど、バックアップに関してわかっている情報が表示されます。バックアップ・メディアから特定のバックアップ・セッションをリストアするには、セッションIDまたはセッション・ラベルを指定します。

たとえば、セッションIDを指定してレベル0バックアップからXFSファイル・システムをリストアするには、次のコマンドを使用します。

sudo xfsrestore -f /dev/st0 -S c76b3156-c37c-5b6e-7564-a0963ff8ca8f /myxfs

-rオプションを指定して、レベル0バックアップからと、そのバックアップに基づいている上位のバックアップから、すべてのデータ累積的にリカバリします。

sudo xfsrestore -r -f /dev/st0 -v silent /myxfs

このコマンドは、レベル0のバックアップに基づいてアーカイブ内のバックアップを検索し、各バックアップを順番にリストアするかどうかを選択するプロンプトを表示します。選択したバックアップのリストア後に、このコマンドは終了します。なお、このコマンドは複数回実行する必要があります。最初にレベル0バックアップのリストアを選択し、その後、ファイル・システムのデータをリストアするために必要な最新のバックアップを含め、より高いレベルのバックアップを選択します。

ノート:

XFSファイル・システムの累積リストアが完了したら、xfsrestoreによってリストア先のディレクトリに作成された、housekeepingディレクトリを削除します。

次の例に示すように、選択したファイルやサブディレクトリのコンテンツをバックアップ・メディアからリカバリできます。コマンドを実行すると、指定したセッション・ラベルが付いたバックアップから、/myxfs/profile/examplesのコンテンツが/tmp/profile/examplesにリカバリされます。

sudo xfsrestore -f /dev/sr0 -L "Backup level 0 of /myxfs Sat Mar 2 14:47:59 GMT 2013" \
  -s profile/examples /usr/tmp

別の方法として、-iオプションを指定すると、インタラクティブにバックアップを参照できます。次に例を示します。

sudo xfsrestore -f /dev/sr0 -i

前述の形式でコマンドを使用すると、ファイル・システム感覚でバックアップを参照できます。ディレクトリの変更、ファイルの一覧表示、ファイルの追加、ファイルの削除、バックアップからのファイル抽出が可能です。

あるXFSファイル・システムの内容全体を別のファイル・システムにコピーするには、-Jオプションを使用してxfsdumpコマンドとxfsrestoreコマンドを組み合せて、コマンドが実行する通常のダンプ・インベントリ・ハウスキーピングを抑制します。次に例を示します。

sudo xfsdump -J - /myxfs | xfsrestore -J - /myxfsclone

詳細は、xfsdump(8)xfsrestore(8)のマニュアル・ページを参照してください。

XFSファイル・システムのチェックと修復

ノート:

Oracle Linux Premier Supportアカウントがあり、XFSファイル・システムのマウントに関する問題が発生している場合は、Oracleサポートに/var/log/messagesファイルのコピーを送信して支援を受けてください。

XFSファイル・システムをマウントできない場合は、xfs_repair -nコマンドを使用するとその整合性を確認できます。通常このコマンドは、問題があると思われる、マウントされていないファイル・システムのデバイス・ファイルに対してのみ実行します。xfs_repair -nコマンドでは、ファイル・システムで修復操作を実施する必要がある場合にそのファイル・システムに加えられる変更が、出力で示されます。ただし、ファイル・システムが直接変更されることはありません。

ファイル・システムのマウントが可能なときに適切なバックアップがない場合は、xfsdumpコマンドを使用すると、既存のファイル・システム・データをバックアップできます。ただし、ファイル・システムのメタデータが破損した場合、このコマンドは失敗することがあります。

xfs_repairコマンドを使用すると、そのデバイス・ファイルで指定されているXFSファイル・システムを修復できます。コマンドはジャーナル・ログをリプレイして、ファイル・システムが正常にアンマウントされなかったことが原因の可能性がある不整合性を修正します。XFSファイル・システムをマウントするたびにジャーナルがリプレイされるため、ファイル・システムに矛盾がある場合を除き、通常は、次のコマンドを使用する必要はありません。

sudo xfs_repair device

ジャーナル・ログが破損した場合、xfs_repair-Lオプションを指定することによって、ログをリセットできます。

注意:

ログをリセットすると、ファイル・システムが不整合状態のままになり、データの損失と破損を招くことがあります。xfs_dbコマンドの使用によるXFSファイル・システムのデバッグと修復に慣れていない場合は、かわりに、ファイル・システムを再作成し、そのコンテンツをバックアップからリストアしてください。

ファイル・システムをマウントできない場合や、適切なバックアップがない場合は、xfs_repairコマンドの実行が唯一の現実的なオプションとなります(xfs_dbの使用に慣れている場合を除く)。

xfs_dbでは、XFSファイル・システムを手動でデバッグおよび修復するための内部コマンド・セットが提供されます。これらのコマンドでは、ファイル・システムのスキャン、およびそのデータ構造の参照と表示が可能です。-xオプションを指定してエキスパート・モードを有効にすると、データ構造を変更できます。

sudo xfs_db [-x] device

詳細は、xfs_db(8)およびxfs_repair(8)のマニュアル・ページを参照し、xfs_db内でhelpコマンドを実行してください。

XFSファイル・システムのデフラグ

xfs_fsrコマンドを使用して、XFSファイル・システム全体、またはXFSファイル・システム内の個々のファイルをデフラグできます。XFSはエクステント・ベースのファイル・システムであるため、ファイル・システム全体のデフラグは不要でありお薦めしません。

個々のファイルをデフラグするには、次のコマンドを使用して、ファイル名をxfs_fsrの引数として指定します。

sudo xfs_fsr pathname

オプションを指定せずにxfs_fsrコマンドを実行すると、/etc/mtabにリストされている、マウント済の書込み可能なすべてのXFSファイル・システムがデフラグされます。このコマンドでは、2時間の間、各ファイル・システムが順番に処理され、最も多くのエクステントがある上位10パーセントのファイルがデフラグされます。2時間経過すると、コマンドの進行状況が/var/tmp/.fsrlast_xfsファイルに記録されます。コマンドを再度実行すると、その時点からプロセスが再開されます。

詳細は、xfs_fsr(8)のマニュアル・ページを参照してください。