web-dev-qa-db-ja.com

ディスク上のデータの物理的な場所を特定する方法は?

特定のデータがCDまたはDVDのどこに物理的に配置されるかを見つける方法を知っている人はいますか?

現在DVDを見ようとしていますが、途中ですが、傷のせいか、映画の特定の場所で死んでしまいます。修理キットを持っていますが、ディスクにいくつかの擦り傷や引っかき傷があり、どれが問題の原因であるかを知る方法がないため、どこに修理を集中させるべきかわかりません。

明らかに、キット内の消耗品を無駄にするだけでなく、すべてが問題になるわけではないため、すべてをクリーニングすることはお勧めできません。それらを操作することで、一部がになる可能性があります判読できません。さらに、私が映画の途中であるからといって、いくつかの理由でハブからエッジまでの途中になるとは限りません。

  • ディスクには、内側のエッジよりも外側のエッジに向かって多くのデータがあります(円は長方形よりも数学的に複雑です)
  • ディスクが完全にいっぱいになっているわけではありません(たとえいっぱいになっているとしても、映画自体がすべてを使用しているでしょう、余分なものなどがあります)
  • この特定のケースでは商用DVDであるため、手動による決定をさらに複雑にする2層構造でもあります。

そのため、ファイル(またはその一部)やクラスターなどを識別して、CD/DVDのどこに配置されるかを示すプログラムを見つけようとしています。そうすれば、ディスクを見て、ハブからの距離に対応する傷を修正できます。

たとえば、以下の画像は、ディスク上のいくつかのファイルまたはクラスターの範囲が配置される場所を示している可能性があるため、それらの領域の異常を探すことで(必要に応じて回転)、正しいものを特定できます。

少なくとも1つの形式のコピー防止機能( [〜#〜] dpm [〜#〜] )がそれを使用し、DVD-lab Proには "が含まれているため、これを実行できると確信しています。 DVDトポロジ」 これを行う機能。

enter image description here

13
Synetech

これはあなたの完全な質問への答えではありませんが、もしあれば、最終的な答えを構築するためのマイナーな質問への一連の答えです。

「修復キット」が実際に機能し、不良セクタを再び読み取り可能にすると仮定します...(したがって、時間を無駄にしないと仮定します)

映画は「真ん中」で止まるとおっしゃいましたが、明らかにその真ん中がディスク表面のどこにあるのかわかりません。 Linuxの場合はオプションconv=noerrorを指定してddコマンドを使用して、ディスクのイメージを作成してみてください。読み取りエラーが発生した場合、ddがエラーについて標準出力で警告するため、損傷の影響を受けるセクターをより正確に把握できます。

また、このフェーズ(ディスクイメージの作成)では、コンピューターのドライブ(セットトップボックスで映画を見ると仮定)がハードディスクに完全なイメージを取得する可能性があることに注意してください(== --- ==) 、そして私はmightは、映画を見るのに使用したドライブよりもパフォーマンスが良い(またはしばしば悪い)と言います。この場合、ディスクの修正、CSSのクラック、空のメディアへの書き込みに別れを告げることをお勧めします。オリジナルを所有し、個人的なバックアップを作成しているため、当然のことながら行うことができます。

読み取りエラーが発生した場合は、さらに調査することをお勧めします。私が言えることは、Linuxはデバイスをリニアブロックデバイス(0から約9GB)と見なし、約4.5GBでデュアルレイヤー遷移があるということです。 DVDは常に内側から外側のトラックに書き込まれます。私の経験から、同じことが2番目のレイヤーにも当てはまります。したがって、損傷したセクターの数がわかれば、どの損傷したトラックに近いかがわかります。に。

UDFアドレス形式を調べて、セクターをトラックにマッピングするためのヒントを見つけます。ハードディスクは従来、CHSアドレス指定(シリンダー、ヘッド、セクター)を使用しますが、DVDは異なると思います。

そうでなければ申し訳ありませんanswerあなたの質問ですが、それは本当にやりがいがあります。