Solaris のシステム管理 (第 2 巻)

fsck エラーメッセージ

通常、システムが異常終了し、ファイルシステムの最新の変更がディスクに書き込まれなかった場合に、fsck が非対話形式で実行され、ファイルシステムが修復されます。修復されると、ファイルシステムの基本的な非整合状態は自動的に修正されますが、より重大なエラーは修復されません。ファイルシステムを修復する間に、fsck はこの種の異常終了から予想される非整合状態を修正します。より重大な状況の場合は、エラーが表示されて終了します。

fsck を対話形式で実行すると、fsck は見つかった各非整合状態を表示して小さなエラーを修正します。ただし、より重大なエラーの場合は、非整合状態を表示し、応答を選択するように促します。-y または -n オプションを指定して fsck を実行する場合、fsck が提案するデフォルト応答には、ユーザー側の応答がエラー条件ごとに yes または no にあらかじめ定義されています。

修正処置によっては、若干のデータが失われます。失われるデータの量は、fsck の診断出力から判断できます。

fsck はマルチパスファイルシステムのチェックプログラムです。パスごとに、異なるメッセージセットを使用して fsck プログラムの異なるフェーズが呼び出されます。初期化後に、fsck はファイルシステムごとに連続パスを実行して、ブロックとサイズ、パス名、接続状態、参照数、空きブロックマップをチェックします (再構築することもあります)。また、何らかのクリーンアップも実行します。

UFS バージョンの fsck によって実行されるフェーズ (パス) は次のとおりです。

この後の各節では、各フェーズで検出できるエラー条件、表示されるメッセージとプロンプト、および応答できる内容について説明します。

複数のフェーズで表示されるメッセージについては、fsck の一般エラーメッセージ」を参照してください。それ以外の場合、メッセージは発生するフェーズのアルファベット順に掲載されています。

多くのメッセージには、表 43-1 に示す省略形が含まれています。

表 43-1 エラーメッセージの省略形

省略形 

意味 

BLK

ブロック番号 

DUP

重複ブロック番号 

DIR

ディレクトリ名 

CG

シリンダグループ 

MTIME

ファイルの最終変更時刻 

UNREF

非参照 

また、多くのメッセージには、i ノード番号などの変数フィールドが含まれています。このマニュアルでは、i ノード番号を inode-number のようにイタリック体で掲載してあります。たとえば、次の画面メッセージは、


INCORRECT BLOCK COUNT I=2529

次の例のように掲載されています。


INCORRECT BLOCK COUNT I=inode-number

fsck の一般エラーメッセージ

この節のエラーメッセージは、初期化後のどのフェーズでも表示されることがあります。処理を続けるかどうかのオプションは表示されますが、通常は、致命的だと見なすのが最善の処置です。これらのエラーメッセージは重大なシステム障害を反映しており、ただちに処理する必要があります。この種のメッセージが表示された場合は、n(o) を入力してプログラムを終了してください。問題の原因を判断できない場合は、ご購入先に問い合わせてください。


CANNOT SEEK: BLK block-number (CONTINUE)
エラーの発生原因

ファイルシステム内で、指定されたブロック番号 block-number へ移動させるという要求に失敗した。このメッセージは重大な問題、おそらくハードウェア障害を示す。

ファイルシステムのチェックを続けると、fsck は移動を再び行い、移動できなかったセクタ番号のリストを表示する。このブロックが仮想メモリーバッファーキャッシュの一部であれば、fsck は致命的なエラーメッセージを表示して終了する。

解決方法

ディスクにハードウェア障害があると、この問題は解決しない。もう一度 fsck を実行してファイルシステムをチェックする。

このチェックでも解決しない場合、購入先に問い合わせる。


CANNOT READ: BLK block-number (CONTINUE)
エラーの発生原因

ファイルシステム内で指定されたブロック番号を読み込むという要求に失敗した。このメッセージは重大な問題、おそらくハードウェア障害を示す。

ファイルシステムのチェックを続けたい場合、fsck は読み取りを再試行して、読み込めなかったセクター番号のリストを表示する。ブロックが仮想メモリーバッファーキャッシュの一部であれば、fsck は致命的な入出力エラーメッセージを表示して終了する。fsck が読み取りに失敗したブロックのいずれかに書き込もうとすると、次のメッセージが表示される。fsck が読み取りに失敗したブロックのいずれかに書き込もうとすると、次のメッセージが表示される。

WRITING ZERO'ED BLOCK sector-numbers TO DISK

解決方法

ディスクにハードウェア障害が発生していると、この問題は継続する。もう一度 fsck を実行して、ファイルシステムをチェックし直す。このチェックでも解決しない場合、購入先に問い合わせる。


CANNOT WRITE: BLK block-number (CONTINUE)
エラーの発生原因

ファイルシステム内で、指定されたブロック番号 block-number への書き込みに失敗した。

ファイルシステムのチェックを続けると、fsck は書き込みを再度実行し、書き込めなかったセクタ番号のリストを表示する。ブロックが仮想メモリーバッファーキャッシュの一部であれば、fsck は致命的な入出力エラーメッセージを表示して終了する。

解決方法

ディスクが書き込み保護されている可能性がある。ドライブ上で書き込み保護ロックをチェックする。ディスクにハードウェア障害がある場合、問題は解決しない。もう一書き込み保護が原因でない場合、あるいはファイルシステムを再チェックしても問題が解決しない場合は、購入先に問い合わせる度 fsck を実行してファイルシステムをチェックする。 書き込み保護が原因でない場合、あるいはファイルシステムを再チェックしても問題が解決しない場合は、購入先に問い合わせる。

初期化フェーズでの fsck メッセージ

初期化フェーズでは、コマンド行構文がチェックされます。ファイルシステムのチェックを実行する前に、fsck はテーブルを設定してファイルを開きます。

この節のメッセージは、コマンド行オプション、メモリー要求、ファイルのオープン、ファイルの状態、ファイルシステムのサイズチェック、およびスクラッチファイルの作成によるエラー条件に関するものです。ファイルシステムを修復する間に、どんな初期化エラーが発生した場合も、fsck は終了します。

bad inode number inode-number to ginode
エラーの発生原因

inode-number が存在しないため、内部エラーが発生した。fsck は終了する。

解決方法

ご購入先に問い合わせる。


cannot alloc size-of-block map bytes for blockmap
cannot alloc size-of-free map bytes for freemap
cannot alloc size-of-state map bytes for statemap
cannot alloc size-of-lncntp bytes for lncntp
エラーの発生原因

内部テーブル用のメモリー要求に失敗した。fsck は終了する。このメッセージは、即座に処理しなければならない重大なシステム障害を示す。他のプロセスが大量のシステム資源を使用していると、このエラー条件が発生することがある。

解決方法

他のプロセスを終了すると問題を解決できることがある。解決できない場合は、ご購入先に問い合わせる。

cannot alloc size-of-block map bytes for blockmap

cannot alloc size-of-free map bytes for freemap

cannot alloc size-of-state map bytes for statemap
cannot alloc size-of-lncntp bytes for lncntp
エラーの発生原因

内部テーブル用のメモリー要求に失敗した。fsck は終了する。このメッセージは、即座に処理しなければならない重大なシステム障害を示す。他のプロセスが大量のシステム資源を使用していると、このエラー条件が発生することがある。

解決方法

他のプロセスを終了すると問題を解決できることがある。解決できない場合は、ご購入先に問い合わせる。

Can't open checklist file: filename
エラーの発生原因

ファイルシステムのチェックリストファイル filename (通常は /etc/vfstab) を開いて読み込めない。fsck は終了する。

解決方法

ファイルの有無と、そのアクセスモードで読み取りが可能かどうかをチェックする。

Can't open filename
エラーの発生原因

fsck はファイルシステム filename を開けなかった。対話形式で実行している場合、fsck はこのファイルシステムを無視し、次に指定されたファイルシステムのチェックを続ける。

解決方法

そのファイルシステムの row デバイスファイルに読み取り、または書き込みができるかどうかをチェックする。


Can't stat root
エラーの発生原因

fsck はルートディレクトリに関する統計情報要求に失敗した。fsck は終了する。

解決方法

このメッセージは、重大なシステム障害を示す。ご購入先に問い合わせる。


Can't stat filename
Can't make sense out of name filename
エラーの発生原因

fsck はファイルシステム filename に関する統計情報要求に失敗した。対話形式で実行している場合、fsck はこのファイルシステムを無視し、次に指定されたファイルシステムのチェックを続ける。

解決方法

ファイルシステムの有無とそのアクセスモードをチェックする。


filename: (NO WRITE)
エラーの発生原因

-n オプションが指定されているか、fsck はファイルシステム filename を書き込み用に開けなかった。fsck を非書き込みモードで実行中であれば、すべての診断メッセージが表示されるが、fsck は何も修正しようとしない。

解決方法

-n を指定しなかった場合は、指定したファイルのタイプをチェックする。通常ファイル名の可能性がある。


IMPOSSIBLE MINFREE=percent IN SUPERBLOCK (SET TO DEFAULT)
エラーの発生原因

スーパーブロックの最小容量が 99 パーセントを超えているか、0 パーセント未満である。

解決方法

minfree パラメタをデフォルトの 10 パーセントに設定し、デフォルトプロンプトから y と入力する。エラー条件を無視するには、デフォルトプロンプトから n と入力する。


filename: BAD SUPER BLOCK: message
USE AN ALTERNATE SUPER-BLOCK TO SUPPLY NEEDED INFORMATION;
e.g., fsck[-f ufs] -o b=# [special ...]
where # is the alternate superblock.  See fsck_ufs(1M)
エラーの発生原因

スーパーブロックが破損している

解決方法

次のいずれかのメッセージが表示される場合は、ご購入先に問い合わせる。


CPG OUT OF RANGE
FRAGS PER BLOCK OR FRAGSIZE WRONG
INODES PER GROUP OUT OF RANGE
INOPB NONSENSICAL RELATIVE TO BSIZE 
MAGIC NUMBER WRONG 
NCG OUT OF RANGE 
NCYL IS INCONSISTENT WITH NCG*CPG 
NUMBER OF DATA BLOCKS OUT OF RANGE
NUMBER OF DIRECTORIES OUT OF RANGE
ROTATIONAL POSITION TABLE SIZE OUT OF RANGE
SIZE OF CYLINDER GROUP SUMMARY AREA WRONG
SIZE TOO LARGE 
BAD VALUES IN SUPERBLOCK

代替スーパーブロックを使用して fsck を再実行してみる。手始めにブロック 32 を指定するとよい。スライス上で newfs -N コマンドを実行すると、スーパーブロックの代替コピーの位置を調べることができる。-N を指定しないと、newfs は既存のファイルシステムを上書きするので注意する。


UNDEFINED OPTIMIZATION IN SUPERBLOCK (SET TO DEFAULT)
エラーの発生原因

スーパーブロックの最適化パラメタが OPT_TIME でも OPT_SPACE でもない。

解決方法

ファイルシステム上で処理の実行時間を最小限度まで短縮するには、SET TO DEFAULT プロンプトから y を入力する。このエラー条件を無視するには、n を入力する。

フェーズ 1: ブロックとサイズに関するメッセージのチェック

このフェーズでは、i ノードリストをチェックします。次の処理中に検出されたエラー条件が表示されます。

ファイルシステムの修復 (preen) 中は、INCORRECT BLOCK COUNTPARTIALLY TRUNCATED INODEPARTIALLY ALLOCATED INODE、および UNKNOWN FILE TYPE を除き、このフェーズのどのエラーが発生した場合も、fsck が終了します。

フェーズ 1 では、次のメッセージ (アルファベット順) が発生する可能性があります。

block-number BAD I=inode-number
エラーの発生原因

i ノード inode-number に、ファイルシステム内の最初のデータブロックより小さい番号または最後のデータブロックより大きい番号が付いたブロック番号 block-number が入っている。i ノード inode-number 内にファイルシステムの範囲外のブロック番号が多すぎると、このエラー条件のためにフェーズ 1 で「EXCESSIVE BAD BLKS」エラーメッセージが生成されることがある。フェーズ 2 と 4 では、このエラー条件が原因で「BAD/DUP」エラーメッセージが生成される。

解決方法

ない


BAD MODE: MAKE IT A FILE?
エラーの発生原因

指定された i ノードの状態がすべて、ファイルシステムの損傷を示す 1 に設定されている。このメッセージは、fsck -y が実行された後で繰り返し表示される場合以外は、物理的なディスクの損傷を示すものではない。

解決方法

y と入力して i ノードを妥当な値に初期化し直す。


BAD STATE state-number TO BLKERR
エラーの発生原因

内部エラーによって fsck の状態マップが破壊されたため、不可能な値 state-number を示す。fsck は即座に終了する。

解決方法

ご購入先に問い合わせる。


block-number DUP I=inode-number
エラーの発生原因

i ノード inode-number には、同じ i ノードまたは別の i ノードがすでに取得したブロック番号 block-number が入っている。このエラー条件が発生した場合に、i ノード inode-number 内にこの種のブロック番号が多すぎると、フェーズ 1 では「EXCESSIVE DUP BLKS」エラーメッセージが生成されることがある。このエラー条件によってフェーズ 1B が呼び出され、フェーズ 2 と 4 で「BAD/DUP」エラーメッセージが生成される。

解決方法

ない


DUP TABLE OVERFLOW (CONTINUE)
エラーの発生原因

fsck の内部テーブルには、重複するブロック番号が入る余地がない。-o p (preen、修復) オプションを指定すると、プログラムが終了する。

解決方法

プログラムを続行するには、CONTINUE プロンプトから y と入力する。このエラーが発生すると、ファイルシステムを完全にチェックできない。別の重複ブロックが見つかると、このエラー条件が再発する。使用可能な仮想メモリーの容量を (プロセスを終了し、スワップ空間を拡張して) 大きくし、もう一度 fsck を実行してファイルシステムをチェックし直す。プログラムを終了するには、n と入力する。


EXCESSIVE BAD BLOCKS I=inode-number (CONTINUE)
エラーの発生原因

i ノード inode-number に関連付けられたファイルシステム内の最初のデータブロックより小さい番号か、最後のブロックより大きい番号を持つブロックが多すぎる (通常は 10 以上)。-o p (preen、 修復) オプションを指定すると、プログラムは終了する

解決方法

プログラムを続行するには、CONTINUE プロンプトから y と入力する。このエラーが発生すると、ファイルシステムを完全にチェックできない。もう一度 fsck を実行してファイルシステムをチェックし直す必要がある。プログラムを終了するには、n と入力する。


EXCESSIVE DUP BLKS I=inode-number (CONTINUE)
エラーの発生原因

同じ i ノード、別の i ノード、または空きリストが取得するブロック数が多すぎる (通常は 10 以上)。-o p (preen、修復) オプションを指定すると、プログラムは終了する。

解決方法

プログラムを続行するには、CONTINUE プロンプトから y と入力する。このエラーが発生すると、ファイルシステムを完全にチェックできない。もう一度 fsck を実行してファイルシステムをチェックし直す必要がある。プログラムを終了するには、n と入力する。


INCORRECT BLOCK COUNT I=inode-number (number-of-BAD-DUP-or-missing-blocks should be
 number-of-blocks-in-filesystem) (CORRECT)
エラーの発生原因

i ノード inode-number のブロック数は number-of-BAD-DUP-or-missing-blocks であるが、number-of-blocks-in-filesystem でなければならない。修復 (preen) の場合、fsck は数を訂正する。

解決方法

i ノード inode-number のブロック数を number-of-blocks-in-filesystem に置き換えるには、CORRECT プロンプトから y と入力する。プログラムを終了するには、n と入力する。


LINK COUNT TABLE OVERFLOW (CONTINUE)
エラーの発生原因

fsck の内部テーブルには、リンク数が 0 の割り当て済み i ノードが入る余地がない。-o p (preen、修復) オプションを指定すると、プログラムは終了するので、fsck を手作業で終了する必要がある。

解決方法

プログラムを続行するには、CONTINUE プロンプトから y と入力する。リンク数が 0 の別の割り当て済みブロックが見つかると、このエラー条件が再発する。このエラーが発生すると、ファイルシステムを完全にチェックできない。もう一度 fsck を実行してファイルシステムをチェックし直す必要がある。プロセスをいくつか終了するか、スワップ領域を拡張して、使用可能な仮想メモリーを増やしてから、fsck を実行し直す。プログラムを終了するには、n と入力する。


PARTIALLY ALLOCATED INODE I=inode-number (CLEAR)
エラーの発生原因

i ノード inode-number は割り当て済みでも未割り当てでもない。-o p (preen、修復) オプションを指定すると、この i ノードは消去される。

解決方法

i ノード inode-number の内容を消去して割り当てを解除するには、y と入力する。これにより、この i ノードを指すディレクトリごとに、フェーズ 2 でエラー条件 UNALLOCATED が生成されることがある。このエラー条件を無視するには、n と入力する。応答しなくてよいのは、この問題を他の手段で解決しようとする場合だけである。


PARTIALLY TRUNCATED INODE I=inode-number (SALVAGE)
エラーの発生原因

fsck で、割り当てられたブロック数よりも短い i ノード inode-number が見つかった。この条件が発生するのは、ファイルの切り捨て中にシステムがクラッシュした場合だけである。ファイルシステムを修復しているとき、fsck は指定されたサイズへの切り捨てを完了する。

解決方法

i ノード内で指定したサイズへの切り捨てを完了するには、SALVAGE プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


UNKNOWN FILE TYPE I=inode-number (CLEAR)
エラーの発生原因

i ノード inode-number のモードのワードは、この i ノードがパイプ、特殊文字 i ノード、特殊ブロック i ノード、通常 i ノード、シンボリックリンク、FIFO ファイル、またはディレクトリ i ノードでないことを示す。-o p (preen、修復) オプションを指定すると、この i ノードは消去される。

解決方法

i ノード inode-number の内容を消去して割り当て解除するには、CLEAR プロンプトから y と入力する。これにより、この i ノードを指すディレクトリエントリごとに、フェーズ 2 でエラー条件 UNALLOCATED が生成される。このエラー条件を無視するには n と入力する。

フェーズ 1B : 走査し直して DUPS メッセージを表示する

ファイルシステム内で重複ブロックが見つかると、次のメッセージが表示されます。

block-number DUP I=inode-number
エラーの発生原因

i ノード inode-number には、すでに同じ i ノードまたは別の i ノードによって取得されたブロック番号 block-number が入っている。このエラー条件によって、フェーズ 2 で BAD/DUP エラーメッセージが生成される。重複ブロックを持つ i ノードは、このエラー条件とフェーズ 1 の DUP エラー条件を検査すれば判断できる。

解決方法

重複ブロックが見つかると、ファイルシステムが再び走査され、以前にそのブロックを取得した i ノードが検索される。

フェーズ 2: パス名メッセージのチェック

このフェーズでは、フェーズ 1 と 1B で見つかった不良 i ノードを指すディレクトリエントリが削除される。次の原因でエラー条件が表示される。

ファイルシステムを修復している場合は (-o p (preen、修復) オプション)、このフェーズでどのエラーが発生した場合も、fsck が終了します。ただし、ブロックサイズの倍数でないディレクトリ、重複ブロックと不良ブロック、範囲外の i ノード、過剰なハードリンクに関連するエラーは除きます。

フェーズ 2 では、次のメッセージ (アルファベット順) が表示される可能性があります。

BAD INODE state-number TO DESCEND
エラーの発生原因

fsck の内部エラーによって、ファイルシステムのディレクトリ構造を継承するルーチンに、無効な状態 state-number が渡された。fsck は終了する。

解決方法

このエラーメッセージが表示された場合は、ご購入先に問い合わせる。


BAD INODE NUMBER FOR '.' I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

.」の i ノード番号が inode-number に等しくないディレクトリ inode-number が見つかった。

解決方法

.」の i ノード番号を inode-number に等しくなるように変更するには、FIX プロンプトから y と入力する。「.」の i ノード番号を変更しない場合は、n と入力する。


BAD INODE NUMBER FOR '..' I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

..」の i ノード番号が inode-number の親に等しくないディレクトリ inode-number が見つかった。

解決方法

..」の i ノード番号を inode-number の親に等しくなるように変更するには、FIX プロンプトから y と入力する (ルート i ノード内の「..」は、それ自体を指すので注意する)。「..」の i ノード番号を変更しない場合は、n と入力する。


BAD RETURN STATE state-number FROM DESCEND
エラーの発生原因

fsck の内部エラーによって、ファイルシステムのディレクトリ構造を継承するルーチンから、不可能な状態 state-number が返された。fsck は終了する。

解決方法

このメッセージが表示される場合は、ご購入先に問い合わせる。


BAD STATE state-number FOR ROOT INODE
エラーの発生原因

内部エラーによって、ルート i ノードに不可能な状態 state-number が割り当てられた。fsck は終了する。

解決方法

このメッセージが表示される場合は、ご購入先に問い合わせる。


BAD STATE state-number FOR INODE=inode-number
エラーの発生原因

内部エラーによって、i ノード inode-number に不可能な状態 state-number が割り当てられた。fsck は終了する。

解決方法

このメッセージが表示される場合は、ご購入先に問い合わせる


DIRECTORY TOO SHORT I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

サイズ file-size が最小ディレクトリサイズより小さいディレクトリ filename が見つかった。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、およびディレクトリ名 filename が表示される。

解決方法

ディレクトリのサイズを最小ディレクトリサイズまで大きくするには、FIX プロンプトから y と入力する。このディレクトリを無視するには n と入力する。


DIRECTORY filename: LENGTH file-size NOT MULTIPLE OF block-number (ADJUST)
エラーの発生原因

サイズ file-size がディレクトリブロックのサイズ block-number の倍数でないディレクトリ filename が見つかった。

解決方法

長さを適切なブロックサイズに切り上げるには、y と入力する。ファイルシステムを修復しているとき (-o p (preen、修復)、オプション) は、fsck は警告のみを表示してディレクトリを調整する。この条件を無視するには n と入力する。


DIRECTORY CORRUPTED I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (SALVAGE)
エラーの発生原因

内部状態の整合性がないディレクトリが見つかった。

解決方法

次のディレクトリ境界 (通常は 512 バイトの境界) までのすべてのエントリを放棄するには、SALVAGE プロンプトから y と入力する。この処置によって、最高で 42 個のエントリを放棄できる。この処置は、他の回復作業に失敗した場合にのみ実行する。問題のディレクトリを変更せずに、次のディレクトリ境界までスキップして読み取りを再開するには、n と入力する。


DUP/BAD I=inode-number OWNER=O MODE=M SIZE=file-size 
MTIME=modification-time TYPE=filename (REMOVE)
エラーの発生原因

フェーズ 1 またはフェーズ 1B で、ディレクトリまたはファイルエントリ filename、i ノード inode-number に関連付けられた重複ブロックまたは不良ブロックが見つかった。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、ディレクトリまたはファイル名 filename が表示される。-p (preen、修復) オプションを指定すると、重複または不良ブロックが削除される。

解決方法

ディレクトリまたはファイルのエントリ filename を削除するには、REMOVE プロンプトから y と入力する。このエラー条件を無視するには n と入力する。


DUPS/BAD IN ROOT INODE (REALLOCATE)
エラーの発生原因

フェーズ 1 またはフェーズ 1B で、ファイルシステムのルート i ノード (通常は i ノード番号 2) に、重複ブロックまたは不良ブロックが見つかった。

解決方法

ルート i ノードの既存の内容を消去して割り当てを解除するには、REALLOCATE プロンプトから y と入力する。ルート内で通常検出されるファイルとディレクトリがフェーズ 3 で復元され、lost+found ディレクトリに格納される。ルートの割り当てに失敗すると、fsck は「CANNOT ALLOCATE ROOT INODE」というメッセージを表示して終了する。CONTINUE プロンプトを表示するには、n と入力する。CONTINUE プロンプトに応答するには、yn のどちらかを入力する。y と入力すると、ルート i ノード内の DUPS/BAD エラー条件を無視して、ファイルシステムのチェックを続行する。ルート i ノードが不正であれば、他の多数のエラーメッセージが生成されることがある。n の場合は、プログラムを終了する。


EXTRA '.' ENTRY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

.」のエントリが複数個入っているディレクトリ inode-number が見つかった。

解決方法

.」の余分なエントリを削除するには、FIX プロンプトから y と入力する。問題のディレクトリを変更しない場合は、n と入力する。


EXTRA '..' ENTRY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename(FIX)
エラーの発生原因

..」(親ディレクトリ) のエントリが複数個入っているディレクトリ inode-number が見つかった。

解決方法

..」(親ディレクトリ) の余分なエントリを削除するには、FIX プロンプトから y と入力する。問題のディレクトリを変更しない場合は、n と入力する。


hard-link-number IS AN EXTRANEOUS HARD LINK TO A DIRECTORY filename (REMOVE)
エラーの発生原因

fsck によって、ディレクトリ filename へのハードリンク hard-link-number にエラーが見つかった。修復 (preen) しているとき (-o p オプション)、fsck はエラーのあるハードリンクを無視する。

解決方法

エラーのあるエントリ hard-link-number を削除するには、 プロンプトから y と入力する。エラー条件を無視するには n と入力する。


inode-number OUT OF RANGE I=inode-number NAME=filename (REMOVE)
エラーの発生原因

ディレクトリエントリ filename には、i ノードリストの終わりより大きい i ノード番号 inode-number が付いている。-p (preen、修復) オプションを指定すると、i ノードが自動的に削除される。

解決方法

ディレクトリエントリ filename を削除するには、REMOVE プロンプトから y と入力する。エラー条件を無視するには、n と入力する。


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

最初のエントリ (「.」のエントリ) に未割り当てのディレクトリ inode-number が見つかった。

解決方法

i ノード番号が inode-number に等しい「.」のエントリを構築するには、FIX プロンプトから y と入力する。問題のディレクトリを変更しない場合は、n と入力する。


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, FIRST ENTRY IN 
DIRECTORY CONTAINS filename
エラーの発生原因

最初のエントリが filename となっているディレクトリ inode-number が見つかった。fsck はこの問題を解決できない。

解決方法

このエラーメッセージが表示される場合は、ご購入先に問い合わせる。


MISSING '.' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, INSUFFICIENT 
SPACE TO ADD '.'
エラーの発生原因

最初のエントリが「.」でないディレクトリ inode-number が見つかった。fsck は問題を解決できない。

解決方法

このエラーメッセージが表示される場合は、ご購入先に問い合わせる。


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename (FIX)
エラーの発生原因

第 2 のエントリが割り当てられていないディレクトリ inode-number が見つかった。

解決方法

i ノード番号が inode-number の親に等しい「..」のエントリを構築するには、FIX プロンプトから y と入力する (ルート i ノード内の「..」は、それ自体を指すので注意する)。問題のディレクトリを変更しない場合は、n と入力する。


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, SECOND ENTRY IN 
DIRECTORY CONTAINS filename
エラーの発生原因

第 2 のエントリが filename となっているディレクトリ inode-number が見つかった。fsck はこの問題を解決できない。

解決方法

このエラーメッセージが表示される場合は、ご購入先に問い合わせる。


MISSING '..' I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time DIR=filename CANNOT FIX, INSUFFICIENT SPACE 
TO ADD '..'
エラーの発生原因

第 2 のエントリが「..」(親ディレクトリ) でないディレクトリ inode-number が見つかった。fsck はこの問題を解決できない。

解決方法

このエラーメッセージが表示される場合は、ご購入先に問い合わせる。


NAME TOO LONG filename
エラーの発生原因

長すぎるパス名が見つかった。通常、これはファイルシステムの名前空間内のループを示す。特権を持つユーザーがディレクトリへの循環リンクを作成すると、このエラーが発生することがある。

解決方法

循環リンクを削除する。


ROOT INODE UNALLOCATED (ALLOCATE)
エラーの発生原因

ルート i ノード (通常は i ノード番号 2) に割り当てモードビットがない。

解決方法

i ノード 2 をルート i ノードとして割り当てるには、ALLOCATE プロンプトから y と入力する。通常、ルート内で検出されるファイルとディレクトリがフェーズ 3 で復元され、lost+found ディレクトリに格納される。ルートの割り当てに失敗すると、fsck は「CANNOT ALLOCATE ROOT INODE」というメッセージを表示して終了する。プログラムを終了するには n と入力する。


ROOT INODE NOT DIRECTORY (REALLOCATE)
エラーの発生原因

ファイルシステムのルート i ノード (通常は i ノード番号 2) はディレクトリ i ノードではない。

解決方法

ルート i ノードの既存の内容を消去して再割り当てを行うには、REALLOCATE プロンプトから y と入力する。一般にルート内で検出されるファイルとディレクトリがフェーズ 3 で復元され、lost+found ディレクトリに格納される。ルートの割り当てに失敗すると、fsck は「CANNOT ALLOCATE ROOT INODE」というメッセージを表示して終了する。fsckFIX プロンプトを表示させるには、n と入力する。


UNALLOCATED I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time type=filename(REMOVE)
エラーの発生原因

ディレクトリまたはファイルのエントリ filename は、未割り当ての i ノード inode-number を指している。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、およびファイル名 filename が表示される。

解決方法

ディレクトリエントリ filename を削除するには、REMOVE プロンプトから y と入力する。エラー条件を無視するには n と入力する。


ZERO LENGTH DIRECTORY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time DIR=filename (REMOVE)
エラーの発生原因

ディレクトリエントリ filename のサイズ file-size が 0 になっている。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、およびディレクトリ名 filename が表示される。

解決方法

ディレクトリエントリ filename を削除するには、REMOVE プロンプトから y と入力する。これにより、フェーズ 4 で「BAD/DUP」エラーメッセージが表示される。エラー条件を無視するには n と入力する。

フェーズ 3: 接続性メッセージのチェック

このフェーズでは、フェーズ 2 で検査したディレクトリがチェックされ、次の原因によるエラー条件が表示されます。

フェーズ 3 では、次のメッセージがアルファベット順に表示される可能性があります。

BAD INODE state-number TO DESCEND
エラーの発生原因

内部エラーによって、ファイルシステムのディレクトリ構造を継承するルーチンに、不可能な状態 state-number が渡された。fsck は終了する。

解決方法

このエラーが発生した場合は、ご購入先に問い合わせる。


DIR I=inode-number1 CONNECTED. PARENT WAS I=inode-number2
エラーの発生原因

これは、ディレクトリ i ノード inode-number1lost+found ディレクトリに正常に接続されていることを示す。ディレクトリ i ノード inode-number1 の親 i ノード inode-number2 は、lost+found ディレクトリの i ノード番号に置き換えられる。

解決方法

ない


DIRECTORY filename LENGTH file-size NOT MULTIPLE OF block-number (ADJUST)
エラーの発生原因

サイズ file-size がディレクトリのブロックサイズ B の倍数でないディレクトリ filename が見つかった (この条件は、フェーズ 2 で調整しなければ、フェーズ 3 で再発することがある)。

解決方法

長さを適切なブロックサイズまで切り上げるには、ADJUST プロンプトから y と入力する。修復しているときは、fsck は警告を表示してディレクトリを調整する。このエラー条件を無視するには n と入力する。


lost+found IS NOT A DIRECTORY (REALLOCATE)
エラーの発生原因

lost+found のエントリがディレクトリではない。

解決方法

ディレクトリ i ノードを割り当てて、それを参照する lost+found ディレクトリを変更するには、REALLOCATE プロンプトから y と入力する。以前に lost+found ディレクトリによって参照されていた i ノードは消去されず、非参照の i ノードとして再び取得されるか、このフェーズの後半でそのリンク数が調整される。lost+found ディレクトリを作成できない場合は、「SORRY. CANNOT CREATE lost+found DIRECTORY」というメッセージが表示され、消失 i ノードへのリンク試行が中止される。これにより、フェーズ 4 で UNREF エラーメッセージが生成される。フェーズ 4 で UNREF エラーメッセージを生成する消失 i ノードへのリンク試行を中止するには、n と入力する。


NO lost+found DIRECTORY (CREATE)
エラーの発生原因

ファイルシステムのルートディレクトリ内に lost+found ディレクトリがない。修復しているときは、fscklost+found ディレクトリを作成しようとする。

解決方法

ファイルシステムのルート内で lost+found ディレクトリを作成するには、CREATE プロンプトから y と入力する。このため、「NO SPACE LEFT IN / (EXPAND)」というメッセージが表示されることがある。lost+found ディレクトリを作成できなければ、fsck は「SORRY. CANNOT CREATE lost+found DIRECTORY」というメッセージを表示して、消失した i ノードへのリンク試行を中止する。これにより、フェーズ 4 の後半で UNREF エラーメッセージが生成される。消失した i ノードへのリンク試行を中止するには、n と入力する。


NO SPACE LEFT IN /lost+found (EXPAND)
エラーの発生原因

使用可能な領域がないため、ファイルシステムのルートディレクトリ内で、lost+found ディレクトリに別のエントリを追加できない。修復しているときに、fscklost+found ディレクトリを拡張する。

解決方法

lost+found ディレクトリを拡張して新しいエントリを追加する余地をつくるには、EXPAND プロンプトから y と入力する。拡張試行に失敗すると、fsck は「SORRY. NO SPACE IN lost+found DIRECTORY」というメッセージを表示して、lost+found ディレクトリへのファイルリンク要求を中止する。このエラーによって、フェーズ 4 の後半で UNREF エラーメッセージが生成される。lost+found ディレクトリ内で不要なエントリを削除する。修復が有効な場合は、このエラーに fsck が終了する。消失 i ノードへのリンク試行を中止するには、n と入力する。


UNREF DIR I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time (RECONNECT)
エラーの発生原因

ファイルシステムの走査中に、ディレクトリ i ノード inode-number がディレクトリエントリに接続されなかった。ディレクトリ i ノード inode-number の所有者 UID、モード file-mode、サイズ file-size、および変更時刻 modification-time が表示される。修復しているときは、ディレクトリサイズが 0 でなければ、fsck は空でないディレクトリ i ノードを接続し直す。それ以外の場合、fsck はディレクトリ i ノードを消去する。

解決方法

ディレクトリ i ノード inode-numberlost+found ディレクトリに接続し直すには、RECONNECT プロンプトから y と入力する。ディレクトリが再び正常に接続されると、「CONNECTED」というメッセージが表示される。それ以外の場合は、lost+found エラーメッセージのいずれかが表示される。このエラー条件を無視するには n と入力する。このエラーにより、フェーズ 4 で UNREF エラー条件が発生する。

フェーズ 4: 参照数メッセージのチェック

このフェーズでは、フェーズ 2 と 3 で取得したリンク数情報がチェックされます。次の原因によるエラー条件が表示されます。

このフェーズのすべてのエラー (lost+found ディレクトリ内の容量不足を除く) は、ファイルシステムを修復するときに解決できます。

フェーズ 4 では、次のメッセージ (アルファベット順) が表示される可能性があります。


BAD/DUP type I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time (CLEAR)
エラーの発生原因

フェーズ 1 またはフェーズ 1B で、ファイルまたはディレクトリ i ノード inode-number に関連付けられた重複ブロックまたは不良ブロックが見つかった。i ノード inode-number の所有者 UID、モード file-mode、サイズ file-size、および変更時刻 modification-time が表示される。

解決方法

i ノード inode-number の内容を消去して割り当てを解除するには、CLEAR プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


(CLEAR)
エラーの発生原因

直前の UNREF エラーメッセージで記述された i ノードを再び接続できない。ファイルシステムを修復していると、ファイルを接続し直すには容量が足りないため fsck が終了するので、このメッセージは表示されない。

解決方法

i ノードの内容を消去して割り当てを解除するには、CLEAR プロンプトから y と入力する。直前のエラー条件を無視するには、n と入力する。


LINK COUNT type I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size
MTIME=modification-time COUNT link-count SHOULD BE 
corrected-link-count (ADJUST)
エラーの発生原因

ディレクトリまたはファイル i ノード inode-number のリンク数は link-count になっているが、corrected-link-count でなければならない。i ノード inode-number の所有者 UID、モード file-mode、サイズ file-size、および変更時刻 modification-time が表示される。-o p (preen、修復) オプションを指定すると、参照数が増えていない限り、リンク数が調整される。この条件は、ハードウェア障害がなければ発生しない。参照数が修復中に増えると、fsck は「LINK COUNT INCREASING」というメッセージを表示して終了する。

解決方法

ディレクトリまたはファイル i ノード inode-number のリンク数を corrected-link-count に置き換えるには、ADJUST プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


lost+found IS NOT A DIRECTORY (REALLOCATE)
エラーの発生原因

lost+found のエントリがディレクトリではない。

解決方法

ディレクトリ i ノードを割り当てて、それを参照する lost+found ディレクトリを変更するには、REALLOCATE プロンプトから y と入力する。lost+found による以前の i ノード参照は消去されない。非参照 i ノードとして再び取得されるか、そのリンク数がこのフェーズの後半で調整される。lost+found ディレクトリを作成できなければ、「SORRY. CANNOT CREATE lost+found DIRECTORY」というメッセージが表示され、消失 i ノードへのリンク試行が中止される。このエラーにより、フェーズ 4 の後半で UNREF エラーメッセージが生成される。消失 i ノードへのリンク試行を中止するには、n と入力する。


NO lost+found DIRECTORY (CREATE)
エラーの発生原因

ファイルシステムのルートディレクトリ内に lost+found ディレクトリがない。修復するときに、fscklost+found ディレクトリを作成しようとする。

解決方法

ファイルシステムのルート内で lost+found ディレクトリを作成するには、CREATE プロンプトから y と入力する。lost+found ディレクトリを作成できなければ、fsck は「SORRY. CANNOT CREATE lost+found DIRECTORY」というメッセージを表示して、消失 i ノードへのリンク試行を中止する。このエラーにより、フェーズ 4 の後半で UNREF エラーメッセージが生成される。消失 i ノードへのリンク試行を中止するには、n と入力する。


NO SPACE LEFT IN / lost+found (EXPAND)
エラーの発生原因

ファイルシステムのルートディレクトリ内で、lost+found ディレクトリに別のエントリを追加する容量がない。修復するときに、fscklost+found ディレクトリを拡張する。

解決方法

lost+found ディレクトリを拡張して新しいエントリを追加する余地をつくるには、EXPAND プロンプトから y と入力する。拡張試行に失敗すると、fsck は「SORRY. NO SPACE IN lost+found DIRECTORY」というメッセージを表示して、lost+found ディレクトリへのファイル数要求を中止する。このエラーにより、フェーズ 4 の後半で UNREF エラーメッセージが生成される。修復 (-o p オプション) が有効なときは、このエラーによって fsck が終了する。消失 i ノードへのリンク試行を中止するには、n と入力する。


UNREF FILE I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time (RECONNECT)
エラーの発生原因

ファイルシステムを走査するときに、ファイル i ノード inode-number がディレクトリエントリに接続されなかった。i ノード inode-number の所有者 UID、モード file-mode、サイズ file-size、および変更時刻 modification-time が表示される。fsck が修復しているときに、ファイルのサイズまたはリンク数が 0 であれば、そのファイルは消去される。それ以外の場合は、再び接続される。

解決方法

i ノード inode-numberlost+found ディレクトリ内のファイルシステムに接続し直すには、y と入力する。i ノード inode-numberlost+found ディレクトリに接続できないと、このエラーによってフェーズ 4 で lost+found エラーメッセージが生成されることがある。このエラー条件を無視するには、n と入力する。このエラーが発生すると、フェーズ 4 で必ず CLEAR エラー条件が呼び出される。


UNREF type I=inode-number OWNER=UID MODE=file-mode SIZE=file-size 
MTIME=modification-time (CLEAR)
エラーの発生原因

ファイルシステムを走査するときに、i ノード inode-number (その type はディレクトリまたはファイル) がディレクトリエントリに接続されなかった。i ノード inode-number の所有者 UID、モード file-mode、サイズ file-size、および変更時刻 modification-time が表示される。fsck が修復しているときに、ファイルのサイズまたはリンク数が 0 であれば、そのファイルは消去される。それ以外の場合は再び接続される。

解決方法

i ノード inode-number の内容を消去して割り当てを解除するには、CLEAR プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


ZERO LENGTH DIRECTORY I=inode-number OWNER=UID MODE=file-mode 
SIZE=file-size MTIME=modification-time(CLEAR)
エラーの発生原因

ディレクトリエントリ filename のサイズ file-size が 0 になっている。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、およびディレクトリ名 filename が表示される。

解決方法

ディレクトリエントリ filename のサイズ file-size が 0 になっている。所有者 UID、モード file-mode、サイズ file-size、変更時刻 modification-time、およびディレクトリ名 filename が表示される。

フェーズ 5: シリンダグループメッセージのチェック

このフェーズでは、空きブロックと使用済み i ノードのマップがチェックされます。次の原因によるエラー条件が表示されます。

フェーズ 5 では、次のメッセージがアルファベット順に表示される可能性があります。

BLK(S) MISSING IN BIT MAPS (SALVAGE)
エラーの発生原因

シリンダグループのブロックマップから空きブロックがいくつか欠落している。修復中に、fsck はマップを作成し直す。

解決方法

空きブロックマップを作成し直すには、SALVAGE プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


CG character-for-command-option: BAD MAGIC NUMBER
エラーの発生原因

シリンダグループ character-for-command-option のマジック番号が間違っている。通常、このエラーはシリンダグループマップが破壊されていることを示す。対話形式で実行している場合は、シリンダグループに再度の作成が必要であることを示すマークが付けられる。ファイルシステムを修復している場合は、fsck が終了する。

解決方法

このエラーが発生する場合は、ご購入先に問い合わせる。


FREE BLK COUNT(S) WRONG IN SUPERBLK (SALVAGE)
エラーの発生原因

空きブロック数の実際の数が、ファイルシステムのスーパーブロック内の空きブロック数と一致しない。-o p (preen、修復) オプションを指定した場合は、スーパーブロック内の空きブロック数が自動的に修正される。

解決方法

スーパーブロックの空きブロック情報を作成し直すには、SALVAGE プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。


SUMMARY INFORMATION BAD (SALVAGE)
エラーの発生原因

集計情報が間違っている。修復していると、fsck は集計情報を計算し直す。

解決方法

集計情報を作成し直すには、SALVAGE プロンプトから y と入力する。このエラー条件を無視するには、n と入力する。

クリーンアップフェーズのメッセージ

ファイルシステムのチェックが終わると、クリーンアップ処理がいくつか実行されます。クリーンアップフェーズでは、次の状態メッセージが表示されます。


number-of files, number-of-files used, number-of-files free (number-of frags, 
number-of blocks, percent fragmentation)

上記のメッセージは、チェックされたファイルシステムに、フラグメントサイズの number-of 個のブロックを使用中の number-of 個のファイルが入っていることと、ファイルシステム内でフラグメントサイズのブロックが number-of 個空いていることを示します。括弧内の数は、空いている数を number-of 個の空きフラグメント、number-of 個の完全サイズの空きブロック、および percent のフラグメントに分割したものです。

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

上記のメッセージは、ファイルシステムが fsck によって変更されたことを示します。このファイルシステムがマウントされているか、現在のルート (/) ファイルシステムの場合はリブートします。ファイルシステムがマウントされている場合は、マウント解除して再び fsck を実行する必要があります。そうしないと、fsck によって実行された処理がテーブルのインコアコピー (カーネル内のコピー) によって取り消されます。

filename FILE SYSTEM STATE SET TO OKAY

上記のメッセージは、ファイルシステム filename に安定を示すマークが付けられたことを示します。-m オプションを指定して fsck を実行すると、この情報を使用して、ファイルシステムのチェックが必要かどうかが判断されます。

filename FILE SYSTEM STATE NOT SET TO OKAY

上記のメッセージは、ファイルシステム filename に安定を示すマークが付いていないことを示します。-m オプションを指定して fsck を実行すると、この情報を使用して、ファイルシステムにチェックが必要かどうかが判断されます。