050 調査結果を整理しましょう(3日目)
●050 調査結果を整理しましょう(3日目)
ときは平成Y+1年、チャレンジの3日目、目が覚めると研究室にいた。時刻は昼近く。今日も研究室には誰もいない。
アロケーションファイルの調査が終わっていた。アロケーションファイルでビットが0になっているアロケーションブロックを調べてデータが残っていないか探していたのでした。
ちょっと復習。アロケーションファイルは 3A35h 個のブロックからなる。1 ブロックあたり 4096*8 = 32768 ビットあり、ビットが 1 なら対応するアロケーションブロックは使用中で、0 なら未使用という意味でした。1 ブロックで、128MB 分(32768*4KB = 128MB)で、3A35h ブロックで 2TB 弱になる。
調査結果を整理しよう。
***
アロケーションファイルは、使用状況から概ね 3 つに分けることができる。これはアロケーションファイルだけで把握できたことで、まず最初にアロケーションファイルをダンプして把握しておけばよかった。領域の状況によって調査方法を適合させれば時間を節約できたはずで、それが残念だ。
0000h 〜 1601h ...使用中が多い
1602h 〜 1D1Eh ...未使用が多い
1D1Fh 〜 3A34h ...全て未使用(最後のブロックを除く)
なお、最後の 3A34h は、1 ビットだけ「1」があって、これは領域の最後にある代替ボリュームヘッダーというファイルシステムが使用しているブロックでした。アロケーションブロックの先頭にあるボリュームヘッダのバックアップ的な役割をするらしい。
アロケーションファイルに対応するアロケーションブロックの状況とを合わせると次にようになる。
0000h 〜 1601h の範囲は、3 個を除いて、使用中かオールゼロのブロックで 95% 以上となっている。
アロケーションファイルの 1 ブロック(32768 ビット)の中で、1 となっているビットと、0 となっているが対応するアロケーションブロックがオールゼロであるビットとをカウントして、それが「32768 * 0.95」以上になっているかを調べると、ほぼ全てのブロックが 95% 以上だった。例外の 3 個は 0B8Fh と 0CACh 、0EADh である。0000h 〜 1601h の範囲内では、削除ファイルの残骸があったとしても、それは極小さな断片であろう。仮に 1 ブロックの全部が断片でも 128MB である。今探しているファイルは数 GB なので、この範囲内には入っていないのかも知れない。
1602h 〜 1D1Eh の範囲には、使用中かオールゼロで 5% 以上となっているものは無かった。
この範囲は、ほとんどが未使用なのに何かしらのデータが残っている。削除ファイルの残骸と予想される。
1D1Fh 〜 3A34h の範囲は、最後のアロケーションブロックを除き、全て未使用でオールゼロであった。
多分、全部 00h だろうと予想しつつも、念の為にディスクリードして 1TB 余り 00h を読み込んだ。予想を確定させるのは無意味な行為ではないはずだ。
以上をまとめると、ファイルの削除前は 0000h 〜 1D1Eh までが使用中で、ファイル削除により 1602h 〜 1D1Eh の範囲が開放されて未使用になった。つまり削除ファイルは 1602h 〜 1D1Eh に集中していると推察される。0000h 〜 1601h の範囲にも削除ファイルは含まれていると思われるが、大きなファイルは含まれていないだろう、という結果になった。
0000h 〜 1D1Eh は 7455 ブロックあり、約 931GB である。0000h 〜 1601h は 5634 ブロックあり、約 704GB である。差分は 227GB ある。これが削除ファイル。
***
ひとまず、HDDの状態は分かってきた。削除ファイルの残骸があるブロックの範囲が把握できた。おそらく削除ファイルの中身はHDD内にそのまま残っていると思われる。だがエスクステントの情報は失われてしまって、目的のファイルがどこにあるのか分からない。砂浜で無くしてしまった指輪を探し出す感じか。
探索範囲が 2TB から 200GB 余りと、約 10 分の 1 になったとしても、まだまだ膨大である。どうやってデータをサルベージしようか。
TN1150 のまだ読んでいない部分にヒントがあるかもしれないし、TN1150 に記載されていないファイルシステムの仕様外でファイル名やエクステント情報を保持している可能性があるかもしれない(...ないかもしれない)。
残骸データを手当たり次第に表示して何かないか探す。何を探したらよいか分からない。
16 進表示で目視したからと言って何か分かるわけでもなく、とてもザラザラとした感じがするだけだ。何も見つからない。手がかりはないのか。うちに帰りたい。どうしよう。
***