各 i ノードには、そこにリンクされているディレクトリエントリ数が入っています。fsck プログラムは、ルートディレクトリから順番にディレクトリ構造全体を検査し、i ノードごとに実際のリンク数を計算して、各 i ノードのリンク数を検査します。
i ノードに格納されているリンク数が fsck によって判断された実際のリンク数と一致しない場合は、次の 3 つの状況が考えられます。
格納されたリンク数が 0 でなく、実際のリンク数が 0 の場合
この状況は、i ノードにリンクされているディレクトリエントリが存在しない場合に発生することがあります。この場合、fsck はリンクされていないファイルを lost+found ディレクトリに入れます。
格納されたリンク数が 0 でなく、実際のリンク数も 0 でないが、2 つのリンク数が等しくない場合
この状況は、ディレクトリエントリが追加または削除されたが、i ノードが更新されていない場合に発生することがあります。この場合、fsck はリード内のリンク数を実際のリンク数で置き換えます。
格納されたリンク数が 0 で実際のリンク数が 0 でない場合
この場合、fsck は i ノード内のリンク数を実際のリンク数に変更します。