硬盘——MBR分区

分区描述:

分区是对硬盘空间的再次划分.划分空间是为了实现文件的隔离.为后期的文件存储进行规划.
对硬盘的操作基本上可以分为分区与格式化.分区是对硬盘空间的再次划分,而格式化是在分区的基础上对分区进行文件存储的方式进行规划,就是创建文件系统.格式化可以直接格式化整个硬盘.也可以格式化单独的分区.

分区种类:

文件的分区类型可以分为MBR与GPT

MBR分区类型最大支持4个主分区,也可将其中一个主分区更改为扩展分区,然后在扩展分区中创建逻辑分区.理论上逻辑分区是可以无限创建的.MBR分区表中使用32位二进制数表示一个分区的扇区数,所以在MBR分区中,每个分区最大为2T

MBR分区的引导空间位于磁盘的0磁道0扇区.大小为512字节.其中前446字节存放的是bootloader.而后的64字节存放的是磁盘的分区信息.每个分区表项大小为16字节,一共可以存放4个分区的信息.这也是MBR分区类型最大只能划分4个主分区的原因.

这里写图片描述
每个分区表项的数据排列为:第一字节:可引导标志位,80H为可引导标志,00H为不可引导标志.随后的第234字节,标示了本分区的起始磁头号,扇区号,柱面号,磁头号占据第二字节,扇区号占据第三字节的低6位,柱面占据第三字节的高2位与第四字节.第5字节存放分区的类型:具体见下图:
这里写图片描述

分区工具:

parted:
支持交互式与非交互式两种操作,可以直接使用命令进入交互式操作.同时支持GPT与MBR分区操作.
mklabel : 创建磁盘的标签.即创建磁盘分区表使用的类型.MBR或GPT
parted /dev/sdb mklabel gpt|msdos
print: 打印分区表及相关信心
parted /dev/sdb print
mkpart: 创建分区
parted /dev/sdb mkpart primary 1 200
rm: 删除分区
parted /dev/sdb rm 1
-l : 显示列表
parted -l

gdisk
GPT类型的分区工具,交互式操作。
-l:显示分区信息,可能会出现已经建立了分区表但是没有分区的情况.
或者命令后面声明,操作的磁盘分区,进入交互式操作模式。
p :打印 t:更改分区表类型 n:创建新的分区 d:删除分区 w:保存退出 q:退出
c : 以柱面的方式显示分区的信息 u : 以扇区的方式显示分区的信息
a : 指定分区为启动分区,可以指定多个分区,但是可能会引起故障.
v : 校验分区表
L : 显示分区类型的列表,这里的分区类型仅仅是指明该分区的用途,并无实际的作用。即便指定了一个错误的类型,也不影响使用。
t :更改分区的类型,对应上面的L显示的用途。
注:在fdisk/gdisk中,块大小代表1k。

fdisk:
支持 msdos分区类型的工具,即MBR分区。
使用方式同gdisk
g : 创建一个新的GPT分区表,但是会覆盖之前原有的分区表.
o : 创建一个新的MBR分区表,但是会覆盖之间的分区表.如果之前的分区表为GPT新创建的分区如果不进行继续的分区,在次进入fdisk时分区表类型不会发生改变.造成这种情况的原因可能是GPT分区表的结构,前面有一个保护的MBR分区表,创建新的MBR分区表时只覆盖了前面的保护MBR分区表但是后续的真正的GPT分区并没有发生改变。

partprobe:
在linux中,分区的参数在内存中存在一份。但真实的物理设备上的分区表信息并不会与内存中的分区表实时同步。需要手动进行更新。内存信息位于/proc/partations 中。
linux中df命令读取的是内存中的信息。fdisk,gdisk的工具才会读取硬盘的数据。
partprobe,进行内存信息与磁盘的信息进行同步。
partprobe /dev/sda

在linux中需要使用另类的命令重读分区表:
新增分区时同步:
partx –a /dev/sdb
kpartx –a /dev/sdb
删除分区时同步:
partx –d –nr M-N /dev/sdb

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页