MBR、GPT概述
Linux中经常有两种分区结构:MBR、GPT
MBR:
0号扇区内容:我们经常把硬盘第一个扇区叫做MBR扇区,这512字节包含三块儿内容
引导代码:引导代码占MBR分区的前446字节,负责整个系统启动。如果引导代码被破坏,
系统将无法启动。
MBR分区表:引导代码后的64个字节,是整个硬盘的分区表。有四张分区表
MBR结束标志:占MBR扇区最后2个字节,一直为“55 AA”。
在分区表中记录分区的起始地址和结束地址(既可以使用CHS寻址也可以使用LBA进行寻址),
这两个地址相减就是我们这个分区的实际容量
扩展分区
由于MBR仅仅为分区表保留了64字节的存储空间,而每个分区则占用16字节的空间,
也就是只能分4个分区,而4个分区在实际情况下往往是不够用的。因此就有了扩展分区,
扩展分区中的每个逻辑分区的分区信息都存在一个类似MBR的扩展引导记录(简称EBR)中,
扩展引导记录包括分区表和结束标志“55 AA”,没有引导代码部分。也就是EBR中的前446个字节是空的。
EBR中分区表的第一项描述第一个逻辑分区,第二项指向下一个逻辑分区的EBR。如果下一个逻辑分区不存在,第二项就不需要了。
MBR分区的结构大致就介绍到这了。如果硬盘的MBR被破坏,可以复制其他硬盘的MBR到故障盘,然后修复分区表,也可以初始化故障盘然后修复分区表。
GPT
GPT磁盘分区结构解决了MBR只能分4个主分区的的缺点,理论上说,GPT磁盘分区结构对分区的数量好像是没有限制的。但某些操作系统可能会对此有限制。
保护MBR
保护MBR位于GPT磁盘的第一扇区,也就是0号扇区,有磁盘签名,MBR磁盘分区表和结束标志组成,没有引导代码。而且分区表内只有一个分区表项,这个表项GPT根本不用,只是为了让系统认为这个磁盘是合法的。
GPT头
GPT头位于GPT磁盘的第二个扇区,也就是1号扇区,该扇区是在创建GPT磁盘时生成,其作用是定义分区表的位置和大小。GPT头还包含头和分区表的校验和,这样就可以及时发现错误。
分区表
分区表位于GPT磁盘的2-33号扇区,一共占用32个扇区,能够容纳128个分区表项。每个分区表项大小为128字节。因为每个分区表项管理一共分区,所以允许GPT磁盘创建128个分区。
每个分区表项中记录着分区的起始,结束地址,分区类型的GUID,分区的名字,分区属性和分区GUID。
分区区域
GPT分区区域就是用户使用的分区,也是用户进行数据存储的区域。分区区域的起始地址和结束地址由GPT分区表定义。
GPT头备份
GPT头有一个备份,放在GPT磁盘的最后一个扇区,但这个GPT头备份并非完全GPT头备份,某些参数有些不一样。复制的时候根据实际情况更改一下即可。
分区表备份
分区区域结束后就是分区表备份,其地址在GPT头备份扇区中有描述。分区表备份是对分区表32个扇区的完整备份。如果分区表被破坏,系统会自动读取分区表备份,也能够保证正常识别分区。
GPT的分区结构相对于MBR要简单许多,并且分区表以及GPT头都有备份。
GPT使用:
[root@www ~]# parted /dev/sdb
align-check TYPE N 检查分区N的类型(最小|opt)是否对齐
help [COMMAND] 打印一般帮助,或按命令打印帮助
mklabel,mktable LABEL-TYPE 创建一个新的磁盘标签(分区表)
mkpart PART-TYPE [FS-TYPE] START END 做一个分区
name NUMBER NAME 将分区号作为名称
print [devices|free|list,all|NUMBER] 显示分区表、可用设备、空闲空间、所有找到的分区或特定的分区
partition
quit exit program
rescue START END 在开始和结束附近挽救丢失的分区
resizepart NUMBER END 调整分区号
rm NUMBER 删除分区号
select DEVICE 选择要编辑的设备
disk_set FLAG STATE 更改选定设备上的标志
disk_toggle [FLAG] 切换选定设备上的标志状态
set NUMBER FLAG STATE 更改分区号上的标志
toggle [NUMBER [FLAG]] 切换分区号上的标志状态
unit UNIT 将默认单元设置为单元
1、使用parted工具:parted /dev/sdb
2、输入:mklabel gpt 切换分区模式,print查看是否成功
3、输入mkpart
参考:https://blog.csdn.net/gui951753/article/details/79365416