• ベストアンサー

LBAとファイルの関係

HDD内LBAの値がわかっているときに、そのLBAがどのファイルに該当するのかを知りたいのですが、方法はないでしょうか。 HDDに不良セクタが発生し、そのLBAはわかっているのですが、壊れたファイルはどれなのか、又は使われている領域ではないのか知りたいのです。複数の破損LBAそれぞれに該当するファイル名を知りたいです。 対象OSはWindows、ファイルシステムはFAT32,NTFSです。 別のカテゴリーで質問したのですが回答0でした。改めてこちらで質問させていただいています。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

>複数の破損LBAそれぞれに該当するファイル名を知りたいです。 コマンドプロンプトで xcopy c:\ d:nul /L /E /I /H /R を実行しましょう。 このコマンドで、すべてのファイルを読み込みテスト出来ます。 Dドライブが無い場合は md c:\testdir subst d: c:\testdir などで仮想ドライブでDドライブを作成してから実行しましょう。 終ったら subst d: /D rd c:\testdir で後始末しましょう。 もし、不良セクタが何かのファイルに使用されているなら、コマンド実行中にエラーになるので、最後に表示されていたファイルを確認しましょう。 もし、不良セクタがフォルダに使用されているなら、コマンド実行中にエラーになるので、最後に表示されていたフォルダを確認しましょう。 もし、不良セクタが未使用なら、コマンドは正常終了します。その場合は、scandiskで不良セクタを「使用不可」にしましょう。

その他の回答 (4)

  • aris-wiz
  • ベストアンサー率38% (96/252)
回答No.5

追記ですが、testdiskの使用は自己責任でお願いします。 ツールの性質上、MBRなどの情報を書き換えることも 可能なのでデータを失いたくない場合などで、 触るのに自身がない場合はやめておくことをお勧めします。

  • aris-wiz
  • ベストアンサー率38% (96/252)
回答No.4

標準搭載以外ならば、「testdisk」などの強力なツールを使えば、 不良セクタの解析、損出パーティション情報の検出などが行えます。 もちろん、きちんとデータが残っているディスクならば、 そのディレクトリ階層、ファイルを単体コピーなどの機能も ついています。 http://www.cgsecurity.org/wiki/TestDisk 使い方が分からなかったら以下を参照 http://lets-go.hp.infoseek.co.jp/testdisk1.html # 上記はMBRの復旧手順ですが、応用すれば特定の # ディスクのLBAから該当する部分を特定することができます。

回答No.3

追記。 Windows実行中は、Windows管理下のシステムファイルをxcopyで開けずにエラーになる可能性があります。 ですので、実行する場合は、PCを起動する時にF8キーを押して起動メニューを出し「Command Prompt Only」や「セーフモードとコマンドプロンプト」などを選び、Windowsを起動しないで実行しましょう。

zciao777
質問者

お礼

とはいえ、地道にやれば出来る方法が見つかりました。 ありがとうございます。

zciao777
質問者

補足

どうもありがとうございます。 やってみましたが、メモリが足りませんということで途中で止まってしまいました。 ちなみに、xcopy c:\ d:null は l(エル)が2個必要のようでした。 同じ考え方でコピー先に同じ容量を持つドライブを指定すれば、 xcopy c:\ d: でメモリ不足と言われず出来ました。(時間かかる) 不良ファイルが含むLBAの範囲は、WinHexでわかりました。 が不良セクタがいくつもあるとき、xcopyは一個目で止まってしまうのでその先は、1個目の解析をして修復してから再度xcopyですね。 ファイル全部をスキャンして、不良ファイルとそのファイルのLBA範囲を出力してくれるソフトがほしい・・・。

  • arain
  • ベストアンサー率27% (292/1049)
回答No.1

LBAとセクタ/クラスタの関連性がわかっており、 MBRやFATを解析し、個々のファイルやフォルダで使用している領域をすべて網羅できれば、「理屈的には」できないことはないと思う。

zciao777
質問者

補足

はい、理屈的には出来ることは理解できます。 でも自分でやろうとすると大変。 どこかにそういうツールは無いものでしょうか?ネットサーフィンして探したのですが見つかりません。

関連するQ&A