Show Table of Contents
12.2.2. XFS
ブート時に修復は自動的に行なわれません。ファイルシステムのチェックまたは修復を開始するには、
xfs_repair
ツールが使用されます。
注記
fsck.xfs
バイナリーは xfsprogs パッケージにありますが、これは、ブート時に fsck.filesystem
バイナリーを検索する initscript に対応するためにのみ存在します。fsck.xfs
は、出口コードとして 0 を設定して終了します。
留意すべきもう 1 つの点として、古い xfsprogs パッケージには
xfs_check
ツールが含まれます。このツールは非常にスピードが遅く、大きなファイルシステムに対して十分な拡張性がありません。そのため、xfs_repair -n
が優先的に選択され、これは非推奨になっています。
ファイルシステム上のクリーンログは
xfs_repair
が動作するために必要です。ファイルシステムがクリーンな状態でアンマウントされなかった場合、xfs_repair
を使用する前に、マウントとアンマウントが実行される必要があります。ログが破損していて再生できない場合、-L
オプションを使用してログをゼロ化できます。
重要
-L
オプションは、ログを再生できない場合にのみ使用する必要があります。このオプションは、ログ内のすべてのメタデータの更新を破棄し、結果としてさらに不整合を生じさせます。
-n
オプションを使用して、Dry Run で、チェックのみモードの xfs_repair
を実行することができます。このオプションが指定されると、ファイルシステムに一切の変更は行なわれません。
xfs_repair
で使用できるオプションは非常に限られています。共通に使用されるオプションには以下が含まれます。
-n
- 変更不可モードです。チェックのみの操作です。
-L
- メタデータログがゼロになります。マウントによってログを再生できない場合にのみ使用します。
-m
maxmem- 最大 MB の実行時に使用されるメモリーを制限します。必要な最小メモリーの概算を出すために 0 を指定できます。
-l
logdev- 外部ログデバイス (ある場合) を指定します。
xfs_repair
のすべてのオプションが xfs_repair(8)
man ページで指定されます。
以下の 8 つの基本フェーズが、実行中に
xfs_repair
によって実施されます。
- Inode および inode ブロックマップ (アドレス指定) のチェック。
- Inode 割り当てマップのチェック。
- Inode サイズのチェック。
- ディレクトリーのチェック。
- パス名のチェック。
- リンク数のチェック。
- フリーマップのチェック。
- スーパーブロックのチェック。
これらのフェーズについては、操作時に出力されるメッセージと共に、
xfs_repair(8)
man ページに詳細にわたって説明されています。
xfs_repair
はインタラクティブな操作ではありません。すべての操作は、ユーザーの入力なしに自動的に実行されます。
診断またはテスト目的で、修復前のメタデータイメージを作成する必要がある場合は、
xfs_metadump(8)
および xfs_mdrestore(8)
ユーティリティーを使用することができます。