損傷したファイルシステムの解決

ファイルシステムのディレクトリー構造の i ノードまたはスーパーブロック情報が壊れると、ファイルシステムが壊れます。

この破損は、ハードウェア関連の不調、または i ノードやスーパーブロック情報に直接アクセスするプログラムが壊れたことが原因である可能性があります。 (アセンブラーと C によって作成されたプログラムはオペレーティング・システムをバイパスし、ハードウェアに直接書き込むことができます。) 壊れたファイルシステムの症状の 1 つとして、特定のファイルシステム内にあるデータをシステムが検索、読み取り、または書き込みできなくなることがあります。

損傷したファイルシステムを解決するには、問題を診断し、それを修復する必要があります。 fsck コマンドは、低レベルの診断と修復を行います。

以下に、損傷したファイルシステムを解決する手順を示します。

  1. root 権限で、次のどちらかの SMIT 高速パスを使用して、損傷したファイルをアンマウント します。smit unmountfs (ハード・ディスク・ドライブ上のファイルシステムの場合) または smit unmntdsk (取り外し可能ディスク 上のファイルシステムの場合)。
  2. fsck コマンドを実行し、ファイルシステムの損傷部分を評価します。 次の例では、fsck コマンドは、/dev/myfilelv デバイスにあるアンマウントされたファイルシステムを検査します。
    fsck /dev/myfilelv
    fsck コマンドは、整合がとれていないファイルシステムを検査し、対話形式で修復します。 通常、ファイルシステムには整合性があり、fsck コマンドは、単にファイルシステム上のファイル数、使用済みブロック数、ならびに未使用ブロック数を報告するのみです。 ファイルシステムに不整合がある場合、fsck コマンドは、検出した不整合に関する情報を表示し、それらを修復するための許可を求めるプロンプトを出します。 fsck コマンドは、修復に際しては慎重で、有効なデータを失う結果になる可能性があるアクションを避けるようにします。 しかし、場合によっては、fsck コマンドが、損傷したファイルの破壊を推奨することがあります。 このコマンドの検査対象の不整合のリストについては、「コマンド・リファレンス 第 2 巻」の fsck コマンド説明を参照してください。
  3. ファイルシステムを修復できない場合は、バックアップから復元してください。
    重要: バックアップからファイルシステムを復元すると、ディスク上に以前に保管されていたすべてのファイルシステムが破壊され、置き換えられます。
    バックアップからファイルシステムを復元するには、SMIT 高速パス smit restfilesys か、次の例に示す一連の コマンドを使用します。
    mkfs /dev/myfilelv
    mount /dev/myfilelv /myfilesys
    cd /myfilesys
    restore -r

    この例では、mkfs コマンド により、/dev/myfilelv という名前のデバイス上に新規ファイルシステム が作成され、ボリューム・ラベル、ファイルシステム・ラベル、開始ブロックが初期化されます。 mount コマンドにより、/dev/myfilelvmyfilesys の マウント・ポイントとして設定され、restore コマンドにより、バックアップからファイルシステムが 取り出されます。

    ファイルシステムの増分バックアップを使用してバックアップを 作成した場合は、バックアップ・レベルの小さいほうから順にバックアップ を復元する必要があります (例えば、0、1、2 の順)。 smit restfilesys を使用してファイルシステム全体を復元するときには、ターゲット・ディレクトリー、復元デバイス (/dev/rfd0 以外)、および 1 回の入力操作で読み取るブロック数を入力します。