大硬盘(大于2T)分区方法

Posted JackLee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大硬盘(大于2T)分区方法相关的知识,希望对你有一定的参考价值。

背景

       在使用fdisk建立分区时,我们最大只能建立2TB大小的分区。如需建立超过2T的分区需要采用GPT磁盘模式。下文补充一下GPT和MBR的基础知识和分超过2T分区的方法。

基本概念

MBR

1、MBR,该磁盘模式是我们常用的模式,英文全称为Master Boot Record,缩写:MBR,中文名称为主引导记录,又称为主引导扇区。

2、采用MBR型分区结构的硬盘(其磁盘卷标类型为MS-DOS),最多只能识别4个主要分区。所以对于一个采用此种分区结构的硬盘来说,想要得到4个以上的主要分区是不可能的。这里就需要引出扩展分区了。扩展分区也是主分区(Primary partition)的一种,但它与主分区的不同在于理论上可以划分为无数个逻辑分区,每一个逻辑分区都有一个和MBR结构类似的扩展引导记录(EBR)。在MBR分区表中最多4个主分区或者3个主分区+1个扩展分区,也就是说扩展分区只能有一个,然后可以再细分为多个逻辑分区。

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

GPT

1、GPT,英文全称为GUID Partition Table,缩写:GPT,中文名称为全局唯一标识分区表。它是EFI(可扩展固件接口标准)的一部分,用来替代Bios中的主引导记录分区表。

2、在MBR硬盘中,分区信息直接存储于主引导记录(MBR)中(主引导记录中还存储着系统的引导程序)。但在GPT硬盘中,分区表的位置信息储存在GPT头中。但出于兼容性考虑,硬盘的第一个扇区仍然用作MBR,之后才是GPT头。

MBR与GPT对比

类别主引导方式主分区数量最大容量支持多少位系统分区方法
MBR BIOS+MBR 4 2T 32和64 fdisk
GPT UEFI+GPT 128 18EB(1EB=1024PB=1048576TB) 64 parted

GPT的分区方法与实操案例

GPT分区主要采用parted命令实现 案例:20GB的硬盘分成2个分区,一个10GB,另一个5.5GB,并格式化成ext4挂载。

1、查看磁盘号

fdisk -l

案例的磁盘号为/dev/sdb

2、采用parted分区

[[email protected] ~]# parted /dev/sdb //输入parted命令+磁盘号

GNU Parted 2.1

Using /dev/sdb

Welcome to GNU Parted! Type ‘help‘ to view a list of commands. //提示help会列举命令

(parted) help

 align-check TYPE N                        check partition N for TYPE(min|opt) alignment
 check NUMBER                             do a simple check on the file system
 cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER   copy file system to another partition
 help [COMMAND]                           print general help, or help on COMMAND
 mklabel,mktable LABEL-TYPE               create a new disklabel (partition table)
 mkfs NUMBER FS-TYPE                      make a FS-TYPE file system on partition NUMBER
 mkpart PART-TYPE [FS-TYPE] START END     make a partition
 mkpartfs PART-TYPE FS-TYPE START END     make a partition with a file system
 move NUMBER START END                    move partition NUMBER
 name NUMBER NAME                         name partition NUMBER as NAME
 print [devices|free|list,all|NUMBER]     display the partition table, available devices, free space, all found partitions, or a particular partition
 quit                                     exit program
 rescue START END                         rescue a lost partition near START and END
 resize NUMBER START END                  resize partition NUMBER and its file system
 rm NUMBER                                delete partition NUMBER
 select DEVICE                            choose the device to edit
 set NUMBER FLAG STATE                    change the FLAG on partition NUMBER
 toggle [NUMBER [FLAG]]                   toggle the state of FLAG on partition NUMBER
 unit UNIT                                set the default unit to UNIT
 version                                  display the version number and copyright information of GNU Parted

(parted) mklabel gpt //将MBR磁盘格式化为GPT

(parted) mkpart /dev/sdb1 //分区1

File system type? [ext2]? ext4 //文件系统类型

Start? 0 //柱头开始

End? 10GB //分区结束位置

Warning: The resulting partition is not properly aligned for best performance.

Ignore/Cancel? Ignore

(parted) print //打印分区

Model: VMware, VMware Virtual S (scsi)

Disk /dev/sdb: 21.5GB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

Number Start End Size File system Name Flags

1     17.4kB  10.0GB  10000MB               /dev/sdb1

(parted) mkpart /dev/sdb2 //分区2

File system type? [ext2]? ext4 //分区文件类型

Start? 10GB //分区开始位置

End? 15.5GB //分区结束位置

(parted) print

Model: VMware, VMware Virtual S (scsi)

Disk /dev/sdb: 21.5GB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

Number Start End Size File system Name Flags

1      17.4kB  10.0GB  10000MB               /dev/sdb1
2      10.0GB  15.5GB  5500MB                /dev/sdb2

3、格式化

[[email protected] ~]# mkfs.ext4 /dev/sdb1

[[email protected] ~]# mkfs.ext4 /dev/sdb2

4、挂载

[[email protected] ~]# mount /dev/sdb1 /home/test1

[[email protected] ~]# mount /dev/sdb2 /home/test2

5、添加开机自挂载

vim /ets/fstab

添加

/dev/sdb1 /home/test1 ext4 defaults 0 0

/dev/sdb2 /home/test2 ext4 defaults 0 0

 

以上是关于大硬盘(大于2T)分区方法的主要内容,如果未能解决你的问题,请参考以下文章

Linux挂载大硬盘(大于2T)

CentOS 7.3 64位系统硬盘初始化的方法

CentOS中管理大于2T的磁盘分区

CentOS 7使用parted对大于2T的硬盘分区

parted在2T以上硬盘上分区操作

MBR分区形式支持2T以上大硬盘,怎么做到的?