一、磁盘分区管理
1、磁盘使用流程
硬盘安装->分区规划->格式化->挂载使用
二、分区规划
1、MBR分区模式
1)概述
MBR是主引导记录(Master Boot Record)的英文缩写,在传统硬盘分区模式中,引导扇区是每个分区的第一扇区,而主引导扇区是硬盘的第一扇区。为了方便计算机访问硬盘,把硬盘上的空间划分成许许多多的区块(英文叫sectors,即扇区),然后给每个区块分配一个地址,称为逻辑块地址。
在MBR中,分区表的大小是固定的,一共可设置4个主分区,或者0~3个主分区+1个扩展分区(n个逻辑分区),其中扩展分区不能格式化,在MBR分区表中逻辑块地址采用32位二进制数表示,因此一共可表示2^32(2的32次方)个逻辑块地址。如果一个扇区大小为512字节,那么MBR硬盘最大分区容量仅为2TB。
2)命令
fdisk
功能:磁盘分区工具
格式:fdisk 硬盘设备
常用选项
-l 查看分区表
-s 查看分区块大小
交互常用选项
m 列出指令帮助
p 查看现有的分区表
n 新建分区
d 删除分区
q 放弃更改并退出
w 保存更改并退出
3)实例
查看所有分区
root@localhost:~# fdisk -l #查看所有分区
Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9f8bacab
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 100665343 100663296 48G 83 Linux
/dev/sda2 100667390 104855551 4188162 2G 5 Extended
/dev/sda5 100667392 104855551 4188160 2G 82 Linux swap / Solaris
Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors #sdb为新添加硬盘,待分区
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
查看分区块大小
root@localhost:~# fdisk -s /dev/sda1 #查看分区块大小
50331648
创建分区
root@localhost:~# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x4ec6e610.
Command (m for help):
Command (m for help): n #新建一个分区,输入n后回车
Partition type
p primary (0 primary, 0 extended, 4 free) #创建主分区
e extended (container for logical partitions) #创建拓展分区
Select (default p): p
Partition number (1-4, default 1):1 #设置主分区编号为1,输入1后回车
First sector (2048-41943039, default 2048): #选择开始的扇区,按照默认直接回车即可
Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): +10G
#设置分区大小,这里设置为10GB
Command (m for help): p #打印分区表
Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x4ec6e610
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
#刚创建的分区信息
Command (m for help): w #保存更改并退出
2、GPT分区模式
1)概述
GPT是GUID磁碟分割表(GUID Partition Table)的英文缩写,含义“全局唯一标识磁盘分区表”,是一个实体硬盘的分区表的结构布局的标准。在GTP磁盘的第一个数据块中同样有一个与MBR(主引导记录)类似的标记,叫做PMBR。PMBR的作用是,当使用不支持GPT的分区工具时,整个硬盘将显示为一个受保护的分区,它有自己的分区表,即GPT分区表。
GPT的分区比MBR更先进,是因为在GPT分区表头中可自定义分区数量的最大值,也就是说GPT分区表的大小不是固定的。最多可支持128个主分区,最大支持18EB磁盘(1EB=1024 PB=1024 x1024 TB),GPT分区中逻辑块地址采用64位二进制数表示,此外,GPT分区在硬盘的末端还有一个备份分区表,保证了分区信息不容易丢失。
2)命令
parted
功能:磁盘分区工具
格式:parted 硬盘设备
交互常用选项
help 查看指令帮助
mktable msdos | gpt 建立指定模式分区表
mkpart primary 文件系统类型
print 查看分区表
rm 删除指定的分区
quit 退出交互环境
3)实例
创建分区
root@localhost:~# parted /dev/sdc
(parted) mkpart
File system type? [ext2]? ext4 #选择文件类型
Start? 0% #指定大小或百分比作为起始位置
End? 10% #指定大小或百分比作为结束位置
(parted) print #查看分区表
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: sun
Disk Flags:
Number Start End Size File system Flags
1 14MB 2147MB 1933MB ext4
(parted) quit #退出交互环境
三、识别分区表
1、概述
当硬盘的分区表被更改以后,需要将分区表的变化及时通知 Linux内核,可以使用partprobe命令,识别新分区表,或者重启系统。否则在访问分区时可能会找不到准确的设备。
2、命令
partprobe
功能:通知内核识别新分区表
格式:partprobe 硬盘
3、实例
root@localhost:~# partprobe /dev/sdb
四、格式化分区
1、命令
mkfs
功能:格式化分区
格式:mkfs 工具集 分区设备路径