使用parted对硬盘进行分区

   在linux系统中,分区通常可以使用fdisk和parted工具,分区表通常有MBR分区表和GPT分区表。对于磁盘大小小于2T的磁盘,我们可以使用fdisk和parted命令工具进行分区。

MBR分区表的特点(通常使用fdisk命令进行分区)

(1)所支持的最大磁盘大小:2T

(2)最多支持4个主分区或者是3个主分区加上一个扩展分区

GPT分区表的特点(使用parted命令进行分区)

(1)支持最大卷:18EB(1EB=1024TB)

(2)最多支持128个分区

parted的安装
yum  install -y parted
查看设备
[root@haodou60 yum.repos.d]# fdisk -l
Disk /dev/sda: 999.7 GB, 999653638144 bytes
255 heads, 63 sectors/track, 121534 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
从上面的列表结果可以看出/dev/sda是一个完整的新硬盘,还没有进行分区。
对/dev/sda进行分区
[root@haodou60 yum.repos.d]# parted /dev/sda
GNU Parted 2.1
使用 /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
错误: /dev/sda: unrecognised disk label
上面说的是还没有设置 disk label,具体可以使用哪些label呢?
label-type must be one of these supported disk labels:bsdloop (raw disk access)gptmacmsdospc98sun
Example:(parted) mklabel msdos
我们使用gpt进行分区
(parted) mklabel gpt
(parted) p
Model: Dell VIRTUAL DISK (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number  Start  End  Size  File system  Name  标志
这时再用p命令,发现没有报错信息了。下面开始正式进行分区,我这里是将所有的空间分成一个区。
(parted) mkpart primary 0 100%
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? I
(parted) p
Model: Dell VIRTUAL DISK (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number  Start   End     Size    File system  Name     标志
1      17.4kB  1000GB  1000GB               primary
分区完后,输入quit进行退出

分区完后需要使分区生效

使用命令Partx -a,运行下面的命令两遍即可

partx -a /dev/sda


parted的常用命令

mktable gpt  /dev/sda 把磁盘/dev/sda格式化为gpt分区表

mkpart primary 0MB 50MB 创建一个50M大小的主分区

mkpart extened 5-0MB 100MB 创建一个50M大小的扩展分区

rm 1 删除number为1的分区

print /dev/sda 显示磁盘/dev/sda的相关信息


在非交互模式中使用parted进行分区

parted /dev/sdb mklabel gpt mkpart 1 ext3 1 5T