FSCK(8)

名称
fsck - ファイルシステムの整合性チェックと対話的修正

書式
fsck [-dvplfyn] [-B | -F] [-l maxparallel] [-t fstype] [-T fstype:fsoptions] [special | node ...]

解説
fsck ユーティリティは、ファイルシステムに特化したプログラムを起動し、 fstab(5) ファイルにリストされているもの、もしくは コマンドラインで与えたスペシャルデバイスの整合性をチェックします。

通常は、自動リブートの間に /etc/rc スクリプトの中で使用されます。 従来からのやり方では、ファイルシステムがマウントされる前に fsck が起動され、マウントされるときにはチェックはすべて 完了しています。 バックグラウンドでのチェックが利用できる場合には、 fsck は 2 回起動されます。 まず最初に、従来からのやり方と同じとき、つまり ファイルシステムがマウントされる前にバックグラウンドでの チェックができないファイルシステムをすべてチェックするため、 -F フラグをつけて起動されます。 その後、システムがマルチユーザモードに移行完了した後で 2 度目の起動がなされ、このときには -B フラグをつけ、バックグラウンドでのチェックができる ファイルシステムをすべてチェックするようにします。 フォアグラウンドでのチェックとは違い、 バックグラウンドでのチェックは非同期に開始されるため、 ファイルシステムがチェック中になっているときであっても システムの他の仕事は進行できます。

ファイルシステムが指定されていない場合、 fsck はテーブル /etc/fstab を読んで、チェックするファイルシステムを決定します。 /etc/fstab 内の “rw”, “rq”, “ro” のいずれかのオプションでマウントされる、0 以外のパス番号を もつパーティションのみがチェックの対象です。 パス番号 1 を持つファイルシステム (通常はルートファイルシステムだけです) は、 常に 1 つずつ順番にチェックされます。

preen モードでない場合は、パス番号の昇順に 残りのエントリが 1 つずつ順番にチェックされます。 この機能は、 fsck を用いて対話的に処理することが必須である場合に必要です。

preen モードでは、パス番号 1 が完了すると残りすべての ファイルシステムがチェックされますが、 各パス番号について昇順であり、なおかつ 1 つのディスクドライブに つき 1 つずつ並行にプロセスが走るようなパス番号順にチェックされます。

つまりこういうことです: preen モードでは、パス番号が 1 である パーティションは 1 つずつ順番にチェックされます。 次に、パス番号が 2 であるパーティションが並行にチェックされますが、 このとき 1 つのディスクドライブにつきプロセスは 1 つだけです。 その次に、パス番号が 3 であるパーティションが並行にチェック されますが、このとき 1 つのディスクドライブにつきプロセスは 1 つだけ、という具合です。

各ファイルシステムが入っているディスクドライブは、数字で終わる デバイス名の最短プレフィックスから判断されます。デバイス名の 残りの文字はパーティションおよびスライス指示子とみなされます。

fsck オプションは次の通りです:

-d  デバッグモードです。コマンドを実行せず、表示だけ行います。 このモードをサポートするように fsck がコンパイルされたときだけ利用可能です。

-f  たとえクリーンであるとマークがついていても (この機能を サポートしているファイルシステムについて) ファイルシステムを強制的にチェックします。

-n  "CONTINUE?" を除くオペレータへの問い合わせに対して すべて no と答えたものと fsck がみなすようになります。

-p  preen モードに入ります。preen モードでは、害のない ファイルシステムの不整合のうち、限られたものだけを 修復します。 ハードウェアもしくはソフトウェアの問題により予期しない 不整合が発見された場合、このチェックプログラムは エラーで終了します。 preen モードで実行されているときにチェックプログラムが 修復する欠陥の種類を示したリストについては、それぞれの チェックプログラムのマニュアルページを参照してください。

-F  フォアグラウンドモードで実行します。 このチェックプログラムは、各ファイルシステムに対して -F フラグつきで実行され、ブートアップシーケンスの一部として 実行したいものかどうか、もしくはシステムが立ち上がって 動作した後バックグラウンドでジョブを実行できるかどうかを 決定します。 0 以外の終了コードである場合、後でバックグラウンドで 実行できるということであり、後で行うというメッセージだけが 表示されます。

-B  バックグラウンドモードで実行します。 このチェックプログラムは、各ファイルシステムに対して -F フラグつきで実行され、ブートアップシーケンスの一部として 実行したいものかどうか、もしくはシステムが立ち上がって 動作した後バックグラウンドでジョブを実行できるかどうかを 決定します。 0 以外の終了コードである場合、フォアグラウンドで実行 したかったものであり、すでに実行が終了しているとみなす ものであるということですので、そのファイルシステムは スキップされます。 終了コードが 0 である場合、バックグラウンドで実行可能で あるということですので、このチェックプログラムは -B フラグつきで実行され、アクティブなファイルシステムに 対するチェックは済んでいるはずであることが示されます。 バックグラウンドモードで実行している場合、 一度にチェックされるファイルシステムは 1 つだけです。

-t fstype
    ファイルシステムの種類が書かれたコンマ区切りのリストに 対してのみ fsck を起動します。リストが “no” で始まる場合、 リストで指定されていないファイルシステムの種類に対して fsck を起動します。

-v  コマンドを実行する前に表示します。

-y  オペレータへの質問にすべて yes と答えたものと fsck がみなします。

-T fstype:fsoptions
    指定されたファイルシステムの種類に特化したオプションを コンマ区切りにしたリストであり、 mount(8) と同じ形式です。

関連ファイル
/etc/fstab
    ファイルシステムのテーブルです。

関連項目
fstab(5), fsck_ffs(8), fsck_msdosfs(8), mount(8)