Como determinar a localização física dos dados em um disco?

13

Alguém sabe de uma maneira de descobrir onde, fisicamente, em um CD ou DVD, um determinado dado seria localizado?

Estou tentando assistir a um DVD no momento, e estou quase na metade, mas continua morrendo em um ponto específico do filme, presumivelmente por causa de um arranhão. Eu tenho um kit de reparo, mas não sei onde focar meu reparo porque há vários arranhões e arranhões no disco e não tenho como saber qual deles está causando o problema.

Obviamente, a limpeza de todos eles é desaconselhável porque não apenas desperdiçam os materiais consumíveis no kit, mas nem todos eles são um problema, e ao trabalhá-los, alguns podem tornar-se ilegíveis. Além disso, só porque eu estou no meio do filme não significa que seria a meio caminho do hub para a borda por várias razões:

  • Os discos têm mais dados para a borda externa do que a borda interna (os círculos são mais matematicamente complicados que os retângulos)
  • O disco não está completamente preenchido (e mesmo se fosse, o filme em si estaria usando tudo, existem extras e outros)
  • Porque neste caso em particular é um DVD comercial, também é dual-layer, o que complica ainda mais a determinação manual

Como tal, estou tentando encontrar um programa que me permita identificar um arquivo (ou parte dele), cluster, etc. e mostrar-me uma imagem de onde o CD / DVD estaria localizado. Dessa forma, posso olhar para o disco e corrigir qualquer arranhão que corresponda a essa distância do hub.

Por exemplo, a imagem abaixo pode indicar onde em um disco alguns arquivos ou intervalos de clusters seriam localizados, portanto, procurando anomalias nessas áreas (girando conforme necessário), a correta pode ser identificada.

Tenho certeza de que isso pode ser feito já que pelo menos uma forma de proteção contra cópia ( DPM ) é usada e DVD -lab Pro inclui um recurso "Topologia de DVD" para fazer isso.

    
por Synetech 18.12.2012 / 17:49

1 resposta

3

Isso não quer ser uma resposta à sua pergunta completa, mas uma série de respostas a perguntas menores a partir das quais é possível construir a resposta final, se houver.

Suponha que seu "kit de reparo" realmente funcione e torne os setores defeituosos legíveis novamente ... (suponha que você não esteja desperdiçando seu tempo)

Você disse que o filme para no "meio", mas obviamente você não sabe onde esse meio está na superfície do disco. Você poderia tentar usar o comando dd para o Linux com a opção conv=noerror para criar uma imagem do disco. Se você obtiver um erro de leitura, poderá ter uma ideia mais precisa do setor afetado pelo dano, porque o dd irá avisá-lo sobre a saída padrão sobre o erro.

Além disso, mantenha em mente que nesta fase (criar uma imagem de disco) você pode até conseguir a imagem completa do seu disco rígido, porque rígido do seu computador (supondo que você assistir a filmes em set-top box) pode , e eu digo que pode ter um desempenho melhor (ou muitas vezes pior) do que a unidade usada para assistir ao filme. Nesse caso, sugiro que você diga adeus ao conserto do disco, decifre o CSS e grave-o em uma mídia em branco. Você pode fazê-lo corretamente porque possui o original e está fazendo um backup pessoal.

Se você receber um erro de leitura, talvez queira investigar mais. O que eu posso dizer é que o Linux vê dispositivos como dispositivos de bloco linear (de 0 a aproximadamente 9GB) e em torno de 4.5GB há a transição de camada dupla. DVDs são sempre queimados do interior para trilhas mais externas, e da minha experiência o mesmo se aplica à segunda camada, por isso, se você pode encontrar o número do setor danificado (s) você pode ter uma idéia nua em que danificou pista poderia estar mais perto para.

Eu investigaria o formato de endereçamento da UDF para encontrar dicas sobre o mapeamento de setores para as trilhas. Discos rígidos convencionalmente usam endereçamento CHS (cilindro, cabeça, setor), mas acredito que os DVDs são diferentes.

Desculpe se eu não respondo à sua pergunta, mas é realmente desafiador.

    
por 18.12.2012 / 20:27