Não há um deslocamento padrão por si, como é claro, você pode iniciar a partição onde quiser. Mas vamos supor por um momento que você está procurando pela primeira partição, e ela foi criada aceitando mais ou menos os padrões. Existem dois lugares onde você pode encontrá-lo, supondo que você esteja usando uma tabela de partição tradicional do DOS:
- Começando no setor de (512 bytes) 63. Essa foi a tradição por muito tempo e funcionou até que alguém surgiu com discos 4K ...
- Começando no setor (de 512 bytes) 2048. Essa é a nova tradição, para acomodar discos de 4K.
- Uma opção de bônus! Sarting no setor 56. Isto é o que acontece se alguém mover a partição 63-start para torná-la alinhada com um setor 4K.
Agora, para prosseguir, você vai querer pegar sua ferramenta hex-dump favorita e aprender um pouco sobre o ext4 Layout de disco . Em particular, ele começa com 1024 bytes de preenchimento, que o ext4 ignora. Em seguida vem o superbloco. Você pode reconhecer o superbloco verificando o número mágico 0xEF53 no deslocamento 0x38 (do início do superbloco, ou 0x438 do início da partição, ou 1080 em decimal). O número mágico é little-endian. na verdade, é armazenado no disco como 0x53EF.
Aqui está o que parece com xxd -a
:
0000000: 0000 0000 0000 0000 0000 0000 0000 0000 ................
*
0000400: 0040 5d00 0084 7401 33a0 1200 33db a600 .@]...t.3...3...
0000410: 4963 5300 0000 0000 0200 0000 0200 0000 IcS.............
0000420: 0080 0000 0080 0000 0020 0000 6637 0952 ......... ..f7.R
0000430: 6637 0952 0200 1600 53ef 0100 0100 0000 f7.R....S.......
0000440: 9938 f851 004e ed00 0000 0000 0100 0000 .8.Q.N..........
Note que quando você dá o offset para montar (ou losetup), você deve dar o offset para onde o preenchimento começa - não o superbloco.
Agora, se não for a primeira partição, ou não estiver em um dos dois (três) pontos esperados, você basicamente procurará pelo número mágico 0xEF53. Isso é o que o testdisk
(recomendado em um comentário) faz por você.