磁盘管理——MBR与GPT的分区

一、硬盘的结构

这里讲的主要是网上所谓的老式磁盘,它是由一个个盘片组成的,我们先从个盘片结构讲起。如下图所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(图中蓝色部分)。扇区是磁盘的最小组成单元,通常是512字节

blob.png

                        

磁盘由多个盘片组成,每个盘片都有一个可读写的磁头。磁头固定,盘片旋转一周所走的轨迹就是磁道。磁道又可以划分扇区,

扇区一般为512个字。相同磁道号组成的圆柱称为柱面/磁柱.如下图所示。

blob.png

磁头(head):256个

磁道(track):1024个

扇区(sector):63个

柱面(cylinder):head*track*512=8M

存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数

二、MBR分区

1、MBR: Master Boot Record,1982年,使用32位表示扇区数(2^32),分区不超过2T

2、如何分区:按柱面

3、0磁道0扇区:512bytes

446bytes: boot loader (与分区无关,引导加载器,不同的操作系统引导程序也不同centos5,6使用的是grub;cetos7是grub2)

64bytes:分区表(真正存放分区 的位置,每个分区要消耗16个字节)

16bytes: 标识一个分区

2bytes: 55AA(没有55AA系统会认为系统没有分区)

4、4个主分区;3主分区+1扩展(N个逻辑分区)


                            MBR分区结构

blob.png

三、GPT分区

GPT:GUID(Globals Unique Identifiers)partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z(4096Byte/block)

使用128位UUID 表示磁盘和分区GPT分区表自动备份在头和尾两份,并有CRC校验位

UEFI (统一扩展固件接口)硬件支持GPT,使操作系统启动

                    GPT分区结构

1.png

保护MBR:保护MBR位于GPT磁盘的第一扇区,也就是0号扇区,有磁盘签名,MBR磁盘分区表和结束标志组成,没有引导代码。而且分区表内只有一个分区表项,这个表项GPT根本不用,只是为了让系统认为这个磁盘是合法的。

GPT头:GPT头会定义分区表的起始位置,分区表的结束位置、每个分区表项的大小、分区表项的个数及分区表的校验和等信息。

分区表:每个分区表项中记录着分区的起始,结束地址,分区类型,分区名字,分区属性。

分区区域:GPT分区区域就是用户使用的分区,也是用户进行数据存储的区域。分区区域的起始地址和结束地址由GPT头定义。

GPT的优势

GPT意为GUID分区表。(GUID意为全局唯一标识符)。这是一个正逐渐取代MBR的新标准。它和UEFI相辅相成——UEFI用于取代老旧的BIOS,而GPT则取代老旧的MBR。之所以叫作“GUID分区表”,是因为你的驱动器上的每个分区都有一个全局唯一的标识符(globally
unique
identifier,GUID)——这
是一个随机生成的字符串,可以保证为地球上的每一个GPT分区都分配完全唯一的标识符。
这个标准没有MBR的那些限制。磁盘驱动器容量可以大得多,大到操作系统和文件系统都没法支持。它同时还支持几乎无限个分区数量,限制只在于操作系统——Windows支持最多128个GPT分区,而且你还不需要创建扩展分区。
        在MBR磁盘上,分区和启动信息是保存在一起的。如果这部分数据被覆盖或破坏,事情就麻烦了。相对的,GPT在整个磁盘上保存多个这部分信息的副本,因此它更为健壮,并可以恢复被破坏的这部分信息。GPT还为这些信息保存了循环冗余校验码(CRC)以保证其完整和正确——如果数据被破坏,GPT会发觉这些破坏,并从磁盘上的其他地方进行恢复。而MBR则对这些问题无能为力——只有在问题出现后,你才会发现计算机无法启动,或者磁盘分区都不翼而飞了。

四、模拟恢复MBR分区

1、添加硬盘,使之立即生效

blob.png

2、查看分区,存放在0磁道0扇区

blob.png

3、查看分区的二进制列表,其中446字节是它的boot loader,后面64字节是它真正存放分区的位置,最后是一个55aa的标志位

blob.png

4、备份MBR

blob.png

5、查看是否备份成功

blob.png

6、数据迁移,恢复数据,要求迁移到的磁盘是空磁盘

blob.png

blob.png

7、模拟破坏

blob.png

模拟破坏55aa

blob.png

已经破坏了55AA,系统会认为没有分区了

blob.png

9、恢复分区表

blob.png

                      

原创文章,作者:xiaoqing,如若转载,请注明出处:http://www.178linux.com/42606

(1)
xiaoqingxiaoqing
上一篇 2016-09-02 08:48
下一篇 2016-09-02 08:48

相关推荐

  • LVS

        Linux虚拟服务器(LVS)是基于Linux内核的操作系统的负载平衡软件。     LVS提供了良好的可扩展性,可靠性和可服务性。 LVS项目的主要工作是开发先进的IP 负载平衡软件(IPVS),应用级负载平衡软件(KTCPVS)和集群管理组件。 IPVS:在…

    Linux干货 2017-08-21
  • 权限

    用户组和管理权限

    2017-11-30
  • NFS(Network File System)介绍与应用(双httpd + php-fpm + nfs + mysql 搭建discuz论坛)

    NFS相关介绍 一、NFS简介     1. NFS(Network File System): NFS是一个文件共享协议, 也是是在类Unix系统中在内核中实现的文件系统。      2. 起源: 最早是由SUN公司研发,非常古老,只是实现文件共享,安全控制方面比较简…

    Linux干货 2015-07-21
  • 进程及任务管理

    进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合     进程ID(Process ID,PID)号码被用来标记各个进程     UID、GID、和SELi…

    Linux干货 2016-09-09
  • shell编程之循环及函数

    for 循环 for 变量名 in 列表;do    循环体 done   执行机制: 依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中 的元素耗尽,循环结束   列表生成方式: (1)直接给出列表 (2)整数列表: (a) {start..end} (b) $(seq [start [s…

    Linux干货 2016-08-24
  • nmcli命令使用,解析性能监控工具

    nmcli nmcli地址配置工具,NetworkManager client 网络管理客户端 相关命令:nmcli connection show        查看当前连接状态 nmcli connection reload      重启服务 nmcli connection sho…

    Linux干货 2016-09-07