编辑闪存设备的 MBR

编辑闪存设备的 MBR

我有一个用于平板电脑的闪存系统,该系统让内置 SD 卡在每个闪存上进行格式化。基本上,它会将 MBR 文件写入其中,而不是使用分区应用程序(fdisk 或其他程序),为此,我需要一个应用程序来创建这些 MBR 文件。由于我没有所有可能大小的卡,我真的需要一个可以为给定大小(4/8/16/32GB)创建分区布局 MBR 的应用程序。有什么解决办法吗?

答案1

MBR 不是文件;它是一种分区表格式,占用卷的前 512 个字节。从第 447 个字节到第 510 个字节的 64 个字节描述分区。格式结构的描述可以在维基百科关于此主题的文章.一个MBR分区表最多可以定义四个分区,每个分区占用16个字节,共计64个字节。

需要一个可以创建给定大小的分区布局 MBR 的应用程序

MBR 不会因卷大小而有所不同。但是,如果您想创建 MBR 并定义一个跨越整个卷的分区(无论大小如何),那就另当别论了。

为不同大小创建 MBR 以供日后使用的一个巧妙方法是创建一个卷大小的文件,parted在其上运行,创建分区表和分区,然后将文件截断为前 512 个字节。现在您可以重复使用该文件,将其复制到任意数量的卷的开头。

4GiB 设备上跨越整个卷的一个分区的 MBR:

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

8GiB 设备上跨越整个卷的一个分区的 MBR:

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

16GiB 设备上跨越整个卷的一个分区的 MBR:

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

32GiB 设备上跨越整个卷的一个分区的 MBR:

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

相关内容