MBR与GPT分区表

MBR分区表

CHS :磁头(Heads)、柱面(Cylinder)、扇区(Sector)

MBR : Main Boot Record 主引导记录 (MBR/DOS分区表) ,分区信息存储在磁盘的0扇区。
在这里插入图片描述

MBR分区表结构

在这里插入图片描述

MBR分区表项

在这里插入图片描述
每个磁盘最多分为4个主分区,或三个主分区及一个扩展分区,扩展分区可分为N个逻辑分区。单个分区最大支持2TB,分区表只能管理最大2TB空间。

查看U盘的分区表信息

在linux系统下

查看系统中所有磁盘的分区类型

fdisk -l

在这里插入图片描述

获取分区表信息

dd if=/dev/sdb of=./mbr.bin bs=1024 count=16
hexdump -C ./mbr.bin

在这里插入图片描述
磁盘标识符:0x0F52E7FE

引导标识:0x00;如果该分区内安装了操作系统,则该分区必须为活动分区,方可成功引导该分区内的操作系统(即为80H);

分区类型 :

分区标志 分区类型
0x05 扩展分区
0x06 FAT16分区
0x07 NTFS分区
0x83 Linux分区
0x0B FAT32分区
0x0C FAT32分区
0x0F 扩展分区
0x1C 隐藏的FAT32分区
0xEE GPT分区

本分区之前以用的扇区数:0x2000 = 8192

本分区总扇区数:0x01DE1C00 = 31333376

GPT分区表

GUID : Globally Unique Identifier 全局唯一标识符

GPT :GUID partition table 全局唯一标识分区表

LBA :Logical Block Address 逻辑块地址

在这里插入图片描述LBA0 : 保护性MBR,保护GPT分区表不受MBR磁盘工具的危害,含有一个分区类型为0xEE的分区,MBR磁盘无法识别,因此拒接对硬盘进行操作,从而保护GPT分区。在支持GPT的操作系统中,LBA0也用于保存启动代码,0XEE表示此硬盘使用GPT分区表。

LBA1 : 分区表头,记录硬盘的信息,分区表管理的空间大小以及分区表项数量,分区表项的地址。

LBA2-LBA33 : 硬盘各个分区的信息。

保护性MBR

按照上面MBR的方法,获取使用gpt分区表的U盘的分区表数据。
在这里插入图片描述

GPT分区表头格式

偏移量 长度 内容
0 8 签名(“EFI PART”, 45 46 49 20 50 41 52 54)
8 4 修订(在1.0版中,值是 00 00 01 00)
12 4 分区表头的大小(单位是字节,通常是92字节,即 5C 00 00 00)
16 4 分区表头(第0-91字节)的CRC32 校验,在计算时,把这个字段作为0处理,需要计算出分区表项的CRC32校验后再计算本字段
20 4 保留,必须是 0
24 8 当前LBA(这个分区表头的位置)
32 8 备份LBA(另一个分区表头的位置)
40 8 第一个可用于分区的LBA(主分区表的最后一个LBA + 1)
48 8 最后一个可用于分区的LBA(备份分区表的第一个LBA-1)
56 16 硬盘GUID(在类UNIX 系统中也叫UUID)
72 8 分区表项的起始LBA(在主分区表中是2)
80 4 分区表项的数量
84 4 一个分区表项的大小(通常是128)
88 4 分区串行的CRC32校验
92 * 保留,剩余的字节必须是0(对于512字节LBA的硬盘即是420个字节)

在这里插入图片描述

GPT分区表项格式

分区类型

在这里插入图片描述

分区属性

在这里插入图片描述

分区表项内容

在这里插入图片描述
每个磁盘最多支持128个分区,单个分区最大支持到8ZB,分区表由34个LBA组成。具有备份分区表与CRC校验,主分区表损坏时可使用备份分区表。

(1ZB=1024EB,1EB=1024PB,1PB=1024TB)

相关推荐

  1. 磁盘分区以及MBRGPT

    2024-05-11 14:30:01       36 阅读
  2. linux 磁盘标签类型MBR转换为GPT

    2024-05-11 14:30:01       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-11 14:30:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-11 14:30:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-11 14:30:01       82 阅读
  4. Python语言-面向对象

    2024-05-11 14:30:01       91 阅读

热门阅读

  1. 浅浅总结SQL中的事务.

    2024-05-11 14:30:01       31 阅读
  2. 安卓串口通訊三

    2024-05-11 14:30:01       33 阅读
  3. 如何在 Debian 8 上为 Apache 创建 SSL 证书

    2024-05-11 14:30:01       34 阅读
  4. 网络相关指令linux指令该怎么使用 - telnet

    2024-05-11 14:30:01       26 阅读
  5. 17、Flink 的 Checkpointing 配置详解

    2024-05-11 14:30:01       28 阅读
  6. ruoyi-vue-pro 使用记录(2)

    2024-05-11 14:30:01       23 阅读
  7. Flink ValueStateDescriptor使用实例

    2024-05-11 14:30:01       28 阅读
  8. Flink面试整理-Flink工作原理

    2024-05-11 14:30:01       28 阅读
  9. git merge 命令合并指定分支到当前分支

    2024-05-11 14:30:01       32 阅读
  10. LeetCode hot100-34-G

    2024-05-11 14:30:01       31 阅读
  11. 如何在本地调试THUDM/chatglm2-6b大模型

    2024-05-11 14:30:01       34 阅读
  12. 保研机试之【构造二叉树】

    2024-05-11 14:30:01       34 阅读
  13. 软件测试应用技术--架构相关的注意事项

    2024-05-11 14:30:01       33 阅读
  14. 25、Flink 支持的数据类型及序列化详解

    2024-05-11 14:30:01       25 阅读