Como encontro os setores que preenchem um caminho no disco rígido?

0

Como faço para determinar os setores que estão ocupando uma pista de carro?

Estou interessado em localizar "os últimos 512 bytes da primeira faixa de unidade lógica" para determinar se uma unidade é criptografada com TrueCrypt de acordo com sua especificação fornecida . Eu só estaria executando essa verificação quando a unidade foi descriptografada, já que eu a estaria executando como uma auditoria remotamente para nossos sistemas.

Qualquer ajuda é apreciada.

Obrigado,

Matt

    
por mbrownnyc 05.02.2013 / 15:10

2 respostas

2

Os discos rígidos modernos têm trilhas com comprimento variável (as trilhas mais próximas do centro têm menos setores) e, mais importante, a geometria física do disco não removível (número de cabeças, trilhas, etc.) não está exposta ao mundo externo como era nos anos 80.

O manual do TrueCrypt se refere a "trilha da unidade lógica" ou "geometria lógica". Isso é uma coisa completamente diferente. Como eu disse antes, todos os HDDs e SSDs modernos expõem apenas setores ao mundo externo (sem trilhas ou qualquer outra coisa). Os setores são tratados linearmente: # 0, # 1, # 2, ... Isso é chamado de LBA (Logical Block Addressing).

Mas houve um tempo em que o padrão LBA era novo e jovem (meados dos anos 90) e as pessoas acessavam seus discos rígidos via interface mais antiga (CHS), inventada pela IBM para os primeiros PCs da IBM em 1980. CHS permite ler / escreva setores no disco especificando Cylider, Head e Sector. Devido às limitações do IBM PC BIOS, o Cilindro deve estar no intervalo 0..1023, Head deve estar no intervalo 0..255 e Sector deve estar no intervalo 1..63 (até hoje). Os setores são agrupados em faixas (cada faixa é endereçada por C e H). Tudo isso não tem nada a ver com a geometria do disco físico, é apenas uma maneira alternativa de acessar o disco LBA, por isso é chamado de "geometria lógica".

Não é que muitos dos dados possam ser endereçados via CHS: 512 bytes por setor * 63 setores * 256 cabeçotes * 1024 cilindros < 8 Gbytes Então, o CHS foi apenas um truque de compatibilidade e rapidamente caiu em desuso quando grandes discos rígidos chegaram ao mercado. Windows 98 usado para acessar o HDD via LBA, com certeza. DOS 6.22 e Windows 3.11 usaram o CHS. Não tenho certeza sobre o Windows 95.

Portanto, atualmente todos os discos rígidos têm um número máximo de cabeças lógicas (256) e setores por trilha (63). Assim, a primeira "trilha lógica" é apenas um grupo de setores HDD # 0 .. # 62. Todos os sistemas operacionais do DOS para o Windows XP são usados para criar a primeira partição logo após essa "primeira faixa lógica", no setor # 63, causando desalinhamento e operação lenta em HDDs do setor 4Kb. Essa porcaria foi completamente removida no Vista / Win7 / Win8: todas as partições criadas pelo moderno FDISK estão alinhadas com 1Mb.

Portanto, TrueCrypt manual apenas se refere ao setor LBA # 62 (ou bloco de 512 bytes iniciando no deslocamento 31744). Mas em alguns BIOS extravagantes com valor setor-por-faixa CHS menor que 63 (extremamente improvável), isso pode ser qualquer setor de 1 a 62 (setor # 0 é MBR). Eu vi alguns BIOSes de meados dos anos 2000 que costumavam atribuir 32 setores por faixa a drives USB (não HDDs fixos).

    
por 05.02.2013 / 15:53
1

A resposta de Mikhail é muito boa em descrever sobre os setores, mas ele nunca fala sobre como realmente lê-los. Muitos editores hexadecimais modernos permitem que você veja uma visualização RAW dos discos rígidos e pode ver diretamente os setores.

Por exemplo, Hex Workshop é o editor que uso e tem a opção de abrir o disco rígido diretamente. Eu não acho que ele pode abrir unidades do sistema diretamente, mas se você colocar o disco em outro computador, você pode lê-lo bem.

Então, de acordo com as instruções do Mikhails, você precisaria continuar pressionando Next Sector até encontrar o setor no qual os dados estão armazenados (setor provável 62, mas poderia ser um setor antes, como ele disse em sua resposta).

    
por 05.02.2013 / 17:13