PCの不調を復旧する~CHKDSKの修復と復元とは違う~
2020.12.18
CHKDSKは、下記のステップでファイルシステム構造上の不整合を検出・修復できるツールです。

ステージ 1: 基本のファイル システム構造を検査しています ...
ステージ 2: ファイル名リンケージを検査しています ...
ステージ 3: セキュリティ記述子を検査しています ...
CHKDSK は Usn ジャーナルを確認しています...

ここでの「修復」が問題です。これはファイルシステムの不整合(エラー)の修正(fix)だけです。

ファイルシステムは、ツリー構造のファイル(ディレクトリ)からなり、その構造を管理するための様々な属性情報を持っています。ファイルシステムの構造上の不整合があると、エラーを検出してプログラム(Windowsを含む)が処理の継続ができなくなるだけでなく、ファイルを探す場合、正常に見つけられない、読み込む場合、本来の内容以外の壊れた内容を読み込んでしまう、書き込む場合、書き込んだ内容が既存のファイルや属性情報を壊してしまうなど、Windowsが自滅することにもつながります。

CHKDSKは、ファイルシステム構造上の不整合を検出し、Windowsがどのファイルにも安全にアクセスできるように、可能な限りその不整合を解消します。「可能な限り」とは、利用できる情報があれば不整合を修正し、その結果で正常な範囲を温存し、異常な部分を切り離します。この切り離された部分を含み、ファイルシステムが使用済みとマークされた領域に断片的なファイルの属性情報や内容が見つかれば、孤立ファイルとして、ルートディレクトリの配下にfound.xxxというディレクトリに配置されます。異常な部分を切り離によっては、必要な情報が整っていない場合、ファイルやディレクトリの救済ができず紛失することもあります。

この過程で、下記のような難解なログメッセージが吐き出されます。

破損した基本ファイル構造が見つかりました
ブロック 0x** の USA 確認値 0x** が正しくありません。
ディレクトリ "\***\***" のインデックス "$I30" に不要なリンク
 ($FILE_NAME: "******") が見つかりました
 ... オンラインで修復しました。
ファイル *** のインデックス $I30 で、エラーが検出されました。

破損して利用できない部分は、トカゲのしっぽのように切り離し、Windowsがどのファイルにも安全にアクセスできるようにできるわけですが、必須なファイルが紛失したり、修復過程でファイルの破損やハードリンクに問題が発生するとWindowsが正しく動作しないことがあります。

以上のように、CHKDSKは、破損した部分を復元(restore)できるわけではありません。運よくWindowsが立ち上がれば、破損したパスを特定し、破損したファイルを上書きをしなければ復元ができません。

- CafeNote -