🙊
关于作者
  • 个人简历
  • 联系作者
  • 运维日常记录
    • RAID 磁盘阵列
    • MBR 与 GPT 分区
    • Linux 命令行判断GPT和MBR分区
    • CentoS 7 系统 扩容根分区
  • Linux运维学习笔记
    • 计算机网络基础知识
    • Linux 系统启动过程
    • Linux 命令基本格式
    • Linux 文件删除原理
    • Linux 目录结构说明
    • Linux 查看命令帮助信息
    • Linux Yum 命令
    • Linux Apt 命令
  • Linux 运维管理
    • Linux 硬件管理
    • Linux 软件管理
    • Linux 磁盘管理
    • Linux 系统管理
    • Linux 网络管理
    • Linux 用户和组管理
    • Linux 文件与目录管理
    • Linux 文件压缩与解压缩管理
    • Linux SSL证书自动更新管理
  • 运维环境搭建
    • CentOS 7 安装与优化
    • CentOS 安装高版本Node.js
    • CentOS 升级安装Python2.7.X
    • CentOS 安装 Python3.8.X
    • CentOS 安装 PHP7.4.X
    • CentOS 安装 Mysql 8.0
    • CentOS 安装 Zabbix 5.0
    • Windows Server 部署 IIS
    • Cronsun 任务管理器部署
    • Teltport 堡垒机部署
    • Jump Server 堡垒机搭建及使用
    • CI & CD 持续集成部署
    • ELK6.5.0+Filebeat 日志系统部署
    • Lustre 分布式并行文件系统部署
  • 系统安全加固
    • Linux 操作系统加固
    • Windows 操作系统安全加固
    • Password 安全加固
    • OpenSSL 安全加固
    • NFS 服务安全加固
    • Rsync 服务安全加固
    • IIS 服务安全加固
    • PHP 语言环境安全加固
    • Apache 服务安全加固
    • Nginx 服务安全加固
    • Tomcat 服务安全加固
    • MySQL 服务安全加固
    • PostgreSQL 服务安全加固
    • Redis 服务安全加固
    • MongoDB 服务安全加固
    • 暴力破解攻击和防御
  • 云原生运维教程
    • Docker 理论
    • Docker 基本架构
    • Docker 基本概念
    • Docker 基本使用
      • 容器
      • 镜像
      • 仓库
    • Docker 存储
    • Docker 网络
    • Docker 安装
  • Linux 系统故障排查
    • Linux 系统重置密码方法
    • Linux 系统误操作修改目录权限为 777 修复方法
  • Windows 系统故障排查
    • Windows 和 Windows Server 中启用/禁用 SMBv1、SMBv2 和 SMBv3
    • Windows10建立映射网络驱动器报错,无法挂载共享文件系统,解决办法
  • 运维工具使用
    • 常用 Git 命令简介及使用
    • 常用 SVN 命令简介及使用
    • 常用 Vi / Vim 文本编辑工具简介及使用
    • 国内常用加速源使用及配置
    • 软碟通制作U启动和再生龙恢复Linux系统及备份
    • 常用JetBrains系列IDE快捷键
  • 中间件教程学习
    • Nginx 极简教程
    • Nginx 安装
    • Nginx 配置
    • Nginx 问题集
    • Mysql 教程
    • Mysql 运维
    • Mysql 原理
    • Redis 教程
    • Redis 持久化
    • Redis 复制
    • Redis 哨兵
    • Redis 集群
    • Redis 运维
    • PostgreSQL 教程
    • H2 教程
    • SqLite 教程
    • 数据库中间件 flyway
  • Nginx 入门教程
  • MySQL 入门教程
  • Nosql 数据库
  • 常用工具快捷键
    • Windows10常用快捷键大全
  • Group 1
由 GitBook 提供支持
在本页
  • 什么是分区表
  • MBR分区方案
  • MBR分区方案重点记住两点:
  • GPT分区方案
  • BIOS 与 EFI
  • MBR和GPT 分区的优缺点

这有帮助吗?

  1. 运维日常记录

MBR 与 GPT 分区

上一页RAID 磁盘阵列下一页Linux 命令行判断GPT和MBR分区

最后更新于3年前

这有帮助吗?

博客作者:联系请,搬运不易,希望请作者喝咖啡,可以点击

本文介绍了MBR与GPT这两种不同硬盘分区方案,对不同的情况下,如何正确选择MBR分区方案还是GPT分区方案,给出了建议。

什么是分区表

电脑中,有一块硬盘:物理硬盘是不能被直接使用的,要在该硬盘上划分出分区后,才能够使用。

其实仅仅划分出分区后,这块硬盘仍然是不能被使用的,需要在划分好的分区上创建文件系统,比如FAT或NTFS,之后才能够被使用。

一块物理硬盘,可以划分成多个分区,分区表定义与保存了硬盘的分区信息,分区表位于硬盘开头的一段特定的物理空间内,操作系统等软件通过读取分区表内的信息,就能够获得该硬盘的分区信息。

硬盘的空间被分成了C、D、E三个分区,这三个分区的信息,则保存在硬盘最开头的分区表中。

这张图其实不准确,一些细节甚至是错误的,不过如果你第一次接触分区表的概念,这张图能让你迅速理解分区表及其作用。

有两种类型的分区方案: MBR与GPT

MBR分区方案

这是采用MBR分区方案的硬盘分区示意图,关于主分区、扩展分区与逻辑分区的各自含义,后面会有说明。

MBR是传统的分区表,我们列出MBR分区表的一些重要特点:

  • 1、MBR分区方案使用硬盘的第一个物理扇区中的64个字节作为分区表的空间保存硬盘分区信息,每个分区的信息要占16个字节,所以,MBR分区表最多只能保存4个分区的分区信息。

  • 2、MBR分区方案中,有三种类型的分区,主分区、扩展分区和逻辑分区,扩展分区与逻辑分区是为了突破分区表中只能保存4个分区的限制而出现的。

  • 3、MBR分区表中保存的分区信息都是主分区与扩展分区的分区信息,扩展分区不能直接使用,需要在扩展分区内划分一个或多个逻辑分区后才能使用,逻辑分区的分区信息保存在扩展分区内而不是保存在MBR分区表内,这样,就可以突破MBR分区表只能保存4个分区的限制。

  • 4、16个字节的分区信息保存有分区活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、起始扇区位置(4个字节)、分区总扇区数目(4个字节)等内容,这里最重要的是:分区的起始扇区位置与分区的总扇区数,都是用4个字节表示的。

  • 5、一般每个扇区的容量是512字节,4个字节的扇区能表示的最大容量是2TB,由4可知,在MBR分区表中,分区的起始位置不能大于2TB,分区的最大容量,也不能大于2TB。所以,对2TB以上容量的物理硬盘,不适合使用MBR分区方案。

MBR分区方案重点记住两点:

  • 1、本来MBR分区表只能保存四个分区的信息,但通过扩展分区与逻辑分区的使用,MBR突破了这个限制。

  • 2、由于MBR分区表中,表示地址的参数是只有4个字节,所以导致MBR分区方案中,分区的起始位置不能大于2TB,分区的最大容量,也不能大于2TB,所以,对2TB以上容量的物理硬盘,不适合使用MBR分区方案。

有一些硬盘厂商,尝试扩大扇区的大小,来突破MBR不适合2TB容量以上的硬盘这一限制,所以有时你会发现市场上存在的硬盘,不完全是每个扇区512字节的,有1024字节甚至2048字节每扇区的,但扩大扇区的大小,又会带来很多其他的问题,特别是会严重影响硬盘的速度,所以这种方法,没有被广泛接受。

GPT分区方案

相比较于MBR,GPT是新一代的分区方案,GPT比MBR要复杂,这张图,简明扼要的显示除了GPT分区方案的硬盘结构。

首先,你会注意到,这张用LBA 0、LBA 1这样的方法来表明硬盘上的地址,这是因为以前一般都是用chs方式对硬盘寻址的,现在一般都用LBA方式对硬盘寻址,关于chs与LBA,LBA 0指的是物理序号为0的第一个扇区,LBA 1指的是物理序号为1的第二个扇区,依次类推。

下面比照着上面这张图,解释下GPT分区方案。

  • 1、保留MBR,GPT的分区方案,硬盘的第一个物理扇区,仍然是一个前面讲过的MBR,这个MBR主要是出于软件兼容性的考虑,对GPT分区方案本身来讲,其实没有啥意义。

  • 2、GPT分区表头,这个在保留MBR之后,也就是占用第二个物理扇区,GPT分区表头中,定义了分区的数量,基本上,你可以认为GPT分区的数量是没有限制的;

  • 3、GPT分区表,从第三个扇区开始,是实际的分区表。请注意:每个扇区可以保存4个分区信息,说明每个分区的分区信息占用的空间是128个字节。

  • 4、从3中,我们知道每个分区的信息占用了四分之一个扇区,也就是128字节的空间,对比一下MBR分区方案中,每个分区的信息只有16个字节,所以GPT分区方案,有充足的空间去存储分区的开始位置及总的容量等,基本上,不用考虑对分区容量的限制。

  • 5、从3中,我们知道,GPT分区方案,分了多少个区,就在分区表中有多少个分区信息。然而实际情形并不是这样,事实上,如图中所示:如果你使用windows操作系统,通常GPT分区表占用32个扇区的空间,可以保存128个分区信息,用不到的空间会被保留,实际使用了多少分区信息与保留了多少分区信息,在2中的GPT分区表头中设置。我们的电脑,通常不会有超过10个的分区,所以GPT分区表中的空间,90%以上都是保留空间,其实就是被浪费了。

  • 6、接下来的两个部分,很简单,分别是GPT分区表,及GPT分区表头的备份。

BIOS 与 EFI

本文只对BIOS与EFI做基本的介绍。

计算机其实是一堆硬件组成的:CPU、内存、硬盘、主板、显示器、键盘鼠标...,而操作系统是软件,运行在这一堆硬件之上,这个大多数人应该都能理解。

那BIOS与EFI是什么呢?可以把BIOS理解为硬件与软件的中介,操作系统等软件通过BIOS或EFI这个中介来间接操作硬件。

实际上操作系统等软件是可以直接操作硬件的,但这么做,太麻烦了。比如你让打印机打印一个字母A,如果不通过BIOS或EFI这个中介,你至少需要写二十行以上的汇编代码,而且这些代码中,大部分都是例行公事的一些打印准备工作,无聊透顶。所以BIOS与EFI作为硬件软件的中介,是必须的,非常重要。

BIOS与EFI又是什么关系呢?可以这样理解:BIOS是早期的硬件软件中介方式,随着硬件与软件技术的快速发展,BIOS这种中介方式不能适应先进的硬件软件了,于是就出现了EFI这种新的中介方式。

你可能在一些计算机方面的文章中看到过UEFI这个词,简单的说,UEFI就是新版的EFI,事实上现在我们接触到的EFI,都是UEFI。一个计算机是使用BIOS还是使用UEFI,是由这台计算机的主板决定的,如果你使用的计算机比较老,多半用的是支持BIOS的主板;如果很新,多半用的是支持UEFI的主板。

需要说明的是:出于兼容性的考虑,大多数UEFI主板,可以选择仍然使用BIOS方式,就是说UEFI主板,既可以使用新的UEFI中介,还可以使用老的BIOS中介(通常这种方式被称为Legacy BIOS)。关于BIOS与EFI,还有很多东西可以写,但估计写的更多,会让你更加困惑,所以,暂时只介绍这么多。

MBR和GPT 分区的优缺点

1、传统的BIOS只支持从MBR分区的硬盘启动,MBR分区的分区表保存在硬盘的第一个扇区,而且只有64字节,所以最多只能有四个表项。也就是说,我们只能把硬盘分为4主分区,或者分成小于等于3个主分区再加一个扩展分区,扩展分区又可以分为多个逻辑分区,MBR分区的优点就是简单,所以很多操作系统都可以从MBR分区的硬盘启动,缺点就是MBR分区不能识别大于2T的硬盘空间,也不能有大于2T的分区;

2、GPT分区的硬盘可以解决以上MBR分区的所有缺点,它没有4个主分区的限制,想分几个主分区就可以分几个主分区,它可以识别大于2T的硬盘空间,每个分区的大小也可以超过2T。但是它的缺点是需要操作系统支持。比如只有WinXP 64位、Win Vista、Win 7和Win 8和比较新的Linux发行版支持GPT分区的硬盘。而且,如果没有EFI的支持的话,以上系统也只能将GPT分区的硬盘当成数据盘,不能从GPT分区的硬盘启动;

3、要从GPT分区的硬盘启动,则主板使用EFI、硬盘使用GPT分区、操作系统支持GPT和EFI这三个条件缺一不可。目前比较新的64位Linux系统和Win8系统都是支持EFI的,所以都是需要从GPT分区的硬盘启动的。

4、以上分区策略都是固定分区,硬盘分区一旦完成,则分区的大小不可改变,如果要改变分区的大小的话,只有重新分区。而且由于没有办法把多个硬盘分到一个区,所以再怎么分,每个分区的大小都有限。所以我们需要一种动态分区的东西。LVM就是这样一个东东,它叫逻辑卷管理。使用LVM的机制是这样的:首先把硬盘分区或者整块硬盘标记为一个物理卷(PV),然后再创建一个卷组(VG),把一个或多个物理卷加入卷组,最后对卷组进行分区,每一个分区称为一个逻辑卷(LV)。LVM的优点就是可以随时向卷组中添加物理卷扩展卷组的大小,以可以动态调整逻辑卷的大校这在服务器中尤其有用,比如说有一个原本有100个用户的服务器,其/home目录下就会有100个用户的主目录,如果给他们每人分配20G的空间的话,就会占满一个2T的硬盘,如果这时再来100个用户怎么办?如果使用LVM就可以顺利解决这个问题,我们可以再加一个3T的硬盘,然后把这个硬盘加入卷组就可以扩大卷组的大小,然后再调整/home所在的逻辑卷的大小即可。LVM既可以搭配MBR使用,也可以搭配GPT使用。

GPT最重要的特点是:使用GPT分区方案,没有硬盘容量不能超过2TB大小的限制,这是GPT区别于MBR的特点与优点!

MBR 与 GPT
MBR 与 GPT
MBR 与 GPT
点击
联系博客作者