Linux分区之parted命令

  之前使用最多的分区命令无疑是fdisk了,大多数情况下fdisk可以满足日常工作上的需求,极个别情况就需要使用parted命令了,至于及个别情况就要从MBR和GPT说起。

MBR主引导扇区

  主引导扇区,是计算机开机后访问硬盘时所必须要读取的首个扇区,主引导扇区记录着硬盘本身的相关信息以及硬盘各个分区的大小及位置信息,是数据信息的重要入口。如果它受到破坏,硬盘上的基本数据结构信息将会丢失,需要用繁琐的方式试探性的重建数据结构信息后才可能重新访问原先的数据。
  硬盘分区表占据主引导扇区的64个字节,可以对四个分区的信息进行描述,其中每个分区的信息占据16个字节。主引导记录仅仅包含一个64个字节的硬盘分区表。由于每个分区信息需要16个字节,所以对于采用MBR型分区结构的硬盘,最多只能识别4个主要分区(Primary partition)。对于一个采用此种分区结构的硬盘来说,想要得到4个以上的主要分区是不可能的。这里就需要引出扩展分区了。扩展分区也是主要分区的一种,但它与主分区的不同在于理论上可以划分为无数个逻辑分区。

MBR分区特点:

  • 在MBR分区表中最多4个主分区或者3个主分区+1个扩展分区,也就是说扩展分区只能有一个,然后可以再细分为多个逻辑分区。
  • 在Linux系统中,硬盘分区命名为sda1-sda4或者hda1-hda4(其中a表示硬盘编号可能是a、b、c等等)。在MBR硬盘中,分区号1-4是主分区(或者扩展分区),逻辑分区号只能从5开始。
  • 在MBR分区表中,一个分区最大的容量为2T,且每个分区的起始柱面必须在这个disk的前2T内。你有一个3T的硬盘,根据要求你至少要把它划分为2个分区,且最后一个分区的起始扇区要位于硬盘的前2T空间内。如果硬盘太大则必须改用GPT。

MBR分区的第三个特点也就是我这里所说的极个别情况,MBR分区表中一个分区的最大容量为2T,所以我们使用fdisk规划分区时最大为2T,如果是大数据服务器或者日志服务器,很可能不能满足我们的需求,这时我们就需要使用GPT分区表,使用parted命令来规划分区。

GPT分区表

  全局唯一标识分区表(GUID Partition Table,缩写:GPT)是一个实体硬盘的分区表的结构布局的标准。它是可扩展固件接口(EFI)标准(被Intel用于替代个人计算机的BIOS)的一部分,被用于替代BIOS系统中的一32bits来存储逻辑块地址和大小信息的主引导记录(MBR)分区表。GPT可管理硬盘大小达到了18EB(1EB=1024PB=1,048,576TB)

分区表对应使用分区命令

分区表 使用命令
MBR分区表 fdisk/parted
GPT分区表 parted

  很直观的体现出其实parted的功能比fdisk更强。

parted命令使用

两种运行模式:

  • 命令行模式
  • 交互模式

命令行模式

parted /dev/sdb mktable gpt:设置数据盘类型为GPT分区表
parted /dev/sdb mkpart p1 ext4 1MiB 10MiB:设置第一个分区名为p1,文件系统类型为ext4,大小为1MiB到10MiB。(与fdisk分区命令一致当磁盘分区表类型为MBR时分区还需要指定主分区或拓展分区)
parted -l

Model: ATA CentOS Linux-1 (scsi)
Disk /dev/sdb: 10.7GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  10.5MB  9437kB               p1

交互模式

parted /dev/sdb

(parted) mkpart
Partition name?  []? p1
File system type?  [ext2]? ext4
Start? 0
End? 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? ignore
(parted) print
Model: ATA CentOS Linux-1 (scsi)
Disk /dev/sdb: 10.7GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      17.4kB  10.7GB  10.7GB  ext4         p1

(parted)

挂载使用

mount /dev/sdb1 test
cd test
touch 1.txt
ls

[root@centos-linux test]# ls
1.txt
[root@centos-linux test]#
posted @ 2018-12-11 16:44  Federico  阅读(1560)  评论(0编辑  收藏  举报