Estou usando um editor hexadecimal (wxHexEditor) para explorar o conteúdo de um disco rígido. Estou procurando onde o rótulo de uma partição está armazenado.
Portanto, a unidade que estou explorando é uma unidade GPT formatada em NTFS. Com o Gparted mudei o nome e o rótulo da partição. O nome é fácil de encontrar, é uma especificidade GPT, está armazenado na tabela de partições. No entanto, não consigo encontrar onde o rótulo está armazenado.
Meu setor de inicialização NTFS está no setor 2048. Estou olhando para a página da Wikipedia do NTFS que cita:
No NTFS, todos os dados de arquivo, diretório e metarquivo — nome do arquivo, data de criação, permissões de acesso (pelo uso de listas de controle de acesso) e tamanho — são armazenados como metadados na Tabela de arquivos mestre (MFT) .
E o parágrafo Metarquivos contém uma lista de metarquivos:
$Volume : Contém informações sobre o volume, ou seja, o identificador de objeto de volume, rótulo de volume […]
Portanto, logicamente, o rótulo da partição é armazenado nesta tabela de arquivos mestre.
Logo acima no parágrafo Partition Boot Sector é indicado que no byte offset 0x30, 8 bytes indicam o cluster que contém a Master File Table. Para mim é 0x0000000000000004. Porém no cluster 4 não tenho nada, o bloco está completamente vazio.
Então, onde o sistema de arquivos NTFS armazena o rótulo de uma partição?
A informação está correta.
Após a formatação, em um NTFS maior que alguns GB, você encontrará o MFT geralmente no cluster 0xC0000. Com o tamanho normal do cluster de 8 setores, isso equivale a 0xC0000 × 8 = 0x600000 = Setor 6291456 O valor 0x0000...004, dado na Wikipédia como "típico", não é nada comum.
Você pode postar um despejo do setor de inicialização da partição, para que possamos verificá-lo.
Além disso, no editor hexadecimal, basta procurar a string "FILE0", essa string é encontrada em todas as entradas da MFT. Normalmente, você encontrará a cópia espelhada das primeiras 24 entradas MFT perto do início e, em seguida, basta encontrar a entrada MFT que em algum lugar tem o nome $Volume (escrito em UCS2, significa "$.Volume" no hex view), você poderá encontrar o rótulo da partição.