Editando MBR para dispositivo flash

Editando MBR para dispositivo flash

Eu tenho um sistema de flash para um tablet que tem um cartão SD interno para ser formatado em cada flash. Basicamente, ele grava um arquivo MBR nele, em vez de usar um aplicativo de particionamento (fdisk ou qualquer coisa), e para isso eu precisaria de um aplicativo para criar esses arquivos MBR. Como não tenho todos os tamanhos possíveis de cartões, realmente preciso de um aplicativo que possa criar MBRs de layout de partição para determinados tamanhos (4/8/16/32 GB). Existe alguma solução?

Responder1

Um MBR não é um arquivo; é um formato de tabela de partição que ocupa os primeiros 512 bytes de um volume. Os 64 bytes do 447º byte ao 510º byte descrevem as partições. Uma descrição da estrutura do formato pode ser encontrada emArtigo da Wikipedia sobre este tópico. Uma tabela de partição MBR pode definir até quatro partições, e cada uma ocupa 16 bytes, totalizando 64 bytes.

preciso de um aplicativo que possa criar MBRs de layout de partição para determinados tamanhos

Um MBR não difere dependendo do tamanho do volume. Se, no entanto, você quiser criar um MBR e definir uma partição que abranja todo o volume, independentemente do tamanho, essa é outra questão.

Uma maneira inteligente de criar MBRs para diferentes tamanhos para uso posterior é criar um arquivo do tamanho do volume, executá parted-lo, criar a tabela de partição e a partição e, em seguida, truncar o arquivo para os primeiros 512 bytes. Agora você pode reutilizar esse arquivo, copiando-o para o início de quantos volumes desejar.

MBR para uma partição que abrange todo o volume em um dispositivo de 4GiB:

0000000 b8fa 1000 d08e 00bc b8b0 0000 d88e c08e
0000010 befb 7c00 00bf b906 0200 a4f3 21ea 0006
0000020 be00 07be 0438 0b75 c683 8110 fefe 7507
0000030 ebf3 b416 b002 bb01 7c00 80b2 748a 8b01
0000040 024c 13cd 00ea 007c eb00 00fe 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0000
*
00001b0 0000 0000 0000 0000 2ff7 000d 0000 0000
00001c0 1001 0383 ffe0 0800 0000 f800 007f 0000
00001d0 0000 0000 0000 0000 0000 0000 0000 0000
*
00001f0 0000 0000 0000 0000 0000 0000 0000 aa55
0000200

MBR para uma partição que abrange todo o volume em um dispositivo de 8GiB:

0000000 b8fa 1000 d08e 00bc b8b0 0000 d88e c08e
0000010 befb 7c00 00bf b906 0200 a4f3 21ea 0006
0000020 be00 07be 0438 0b75 c683 8110 fefe 7507
0000030 ebf3 b416 b002 bb01 7c00 80b2 748a 8b01
0000040 024c 13cd 00ea 007c eb00 00fe 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0000
*
00001b0 0000 0000 0000 0000 4f7f 0000 0000 0000
00001c0 1001 0383 ffe0 0800 0000 f800 00ff 0000
00001d0 0000 0000 0000 0000 0000 0000 0000 0000
*
00001f0 0000 0000 0000 0000 0000 0000 0000 aa55
0000200

MBR para uma partição que abrange todo o volume em um dispositivo de 16GiB:

0000000 b8fa 1000 d08e 00bc b8b0 0000 d88e c08e
0000010 befb 7c00 00bf b906 0200 a4f3 21ea 0006
0000020 be00 07be 0438 0b75 c683 8110 fefe 7507
0000030 ebf3 b416 b002 bb01 7c00 80b2 748a 8b01
0000040 024c 13cd 00ea 007c eb00 00fe 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0000
*
00001b0 0000 0000 0000 0000 d709 0003 0000 0000
00001c0 1001 0383 ffe0 0800 0000 f800 01ff 0000
00001d0 0000 0000 0000 0000 0000 0000 0000 0000
*
00001f0 0000 0000 0000 0000 0000 0000 0000 aa55
0000200

MBR para uma partição que abrange todo o volume em um dispositivo de 32 GiB:

0000000 b8fa 1000 d08e 00bc b8b0 0000 d88e c08e
0000010 befb 7c00 00bf b906 0200 a4f3 21ea 0006
0000020 be00 07be 0438 0b75 c683 8110 fefe 7507
0000030 ebf3 b416 b002 bb01 7c00 80b2 748a 8b01
0000040 024c 13cd 00ea 007c eb00 00fe 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0000
*
00001b0 0000 0000 0000 0000 7ca5 0001 0000 0000
00001c0 1001 0383 ffe0 0800 0000 f800 03ff 0000
00001d0 0000 0000 0000 0000 0000 0000 0000 0000
*
00001f0 0000 0000 0000 0000 0000 0000 0000 aa55
0000200

informação relacionada