Solaris のシステム管理 (デバイスとファイルシステム)

Procedureルート (/)、/usr、または /var 以外のファイルシステムを検査する方法

Solaris 10 6/06 リリースの fsck に関する最新情報については、「UFS ファイルシステムユーティリティー (fsckmkfs、および newfs) の拡張機能」を参照してください。次のメッセージが表示される場合は、fsck を再実行する必要はありません。


***** FILE SYSTEM WAS MODIFIED *****

ただし、このメッセージのあとに fsck を再実行してもファイルシステムは損傷しません。このメッセージは、fsck の修正処置に関する情報を示すだけのものです。

この手順では、検査するファイルシステムがマウント解除されていることを前提としています。

不正なスーパーブロックの復元については、「不正なスーパーブロックを復元する方法 (Solaris 10 6/06 リリース)」または 「不正なスーパーブロックを復元する方法 (Solaris 8、9、および 10 リリース)」を参照してください。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

  2. ローカルファイルシステムをマウント解除し、ファイルシステム上でほかの動作が存在しないようにします。

    fsck コマンドの引数として、マウントポイントディレクトリや /dev/dsk/ device-name を指定します。整合性が失われている場合には、そのことを示すメッセージが表示されます。

    次に例を示します。


    # umount /export/home
    # fsck /dev/rdsk/c0t0d0s7
    ** /dev/dsk/c0t0d0s7
    ** Last Mounted on /export/home
    .
    .
    .
  3. 報告された fsck エラーをすべて修正します。

    1 つまたは複数の UFS ファイルシステムを対話式で検査しながら、エラーメッセージのプロンプトに応答する方法については、『Solaris のシステム管理 (上級編)』の第 20 章「UFS ファイルシステムの不整合解決 (手順)」を参照してください。

  4. fsck コマンドを実行してもすべての問題を修復できない場合は、fsck コマンドで修復できない UFS ファイルシステムの修正」を参照してください。

  5. 修復したファイルシステムをマウントして、 lost+found ディレクトリにファイルが存在するかどうかを確認します。

    fsck コマンドによって lost+found ディレクトリに入れられた各ファイルの名前は、その i ノード番号を使用して変更されます。

  6. lost+found ディレクトリに保存されているファイルの名前を変更して移動します。

    可能であれば、ファイル名を変更し、ファイルが含まれるべきディレクトリに移動してください。grep コマンドを使用して各ファイル内の語句を探したり、file コマンドを使用してファイルタイプを識別してください。

    どうしても特定できないファイルまたはディレクトリについては、 lost+found ディレクトリからそれらを削除して、不要な領域を解放してください。


例 21–1 ルート (/) 以外、または /usr 以外のファイルシステムの対話型検査

次の例は、/dev/rdsk/c0t0d0s6 ファイルシステムを検査し、不正なブロック数を訂正する方法を示しています。この例では、ファイルシステムがマウント解除されていることを前提としています。


# fsck /dev/rdsk/c0t0d0s6
** Phase 1 - Check Block and Sizes
INCORRECT BLOCK COUNT I=2529 (6 should be 2)
CORRECT? y

** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Cylinder Groups
929 files, 8928 used, 2851 free (75 frags, 347 blocks, 0.6%
fragmentation)
 
***** FILE SYSTEM WAS MODIFIED *****
#