4.3 初始化数据盘
4.3.6 初始化容量大于 2TB 的 Linux 数据盘(parted)
操作场景
本文以裸金属服务器的操作系统为“CentOS 7.4 64位”、云硬盘容量为3 TB举例,采 用Parted分区工具为容量大于2 TB的数据盘设置分区。
MBR格式分区支持的磁盘最大容量为2 TB,GPT分区表最大支持的磁盘容量为18 EB,
因此当为容量大于2 TB的磁盘分区时,请采用GPT分区方式。对于Linux操作系统而 言,当磁盘分区形式选用GPT时,fdisk分区工具将无法使用,需要采用parted工具。
[root@bms-centos74 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk
步骤2 执行以下命令,进入parted分区工具,开始对新增数据盘执行分区操作。
parted 新增数据盘
以新挂载的数据盘“/dev/vdb”为例:
parted /dev/vdb 回显类似如下信息:
[root@bms-centos74 ~]# parted /dev/vdb GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
步骤3 输入“p”,按“Enter”,查看当前磁盘分区形式。
回显类似如下信息:
(parted) p
Error: /dev/vdb: unrecognised disk label Model: Virtio Block Device (virtblk) Disk /dev/vdb: 3299GB
Sector size (logical/physical): 512B/512B Partition Table: unknown
Disk Flags:
(parted)
“Partition Table”为“unknown”表示磁盘分区形式未知。
步骤4 输入以下命令,设置磁盘分区形式。
mklabel 磁盘分区方式
磁盘分区形式有MBR和GPT两种,大于2 TB的磁盘容量,请采用GPT分区方式:
mklabel gpt
注意
MBR支持的磁盘最大容量为2 TB,GPT最大支持的磁盘容量为18 EB,当前数据盘支持 的最大容量为32 TB,如果您需要使用大于2 TB的磁盘容量,分区形式请采用GPT。
当磁盘已经投入使用后,此时切换磁盘分区形式时,磁盘上的原有数据将会清除,因 此请在磁盘初始化时谨慎选择磁盘分区形式。
步骤5 输入“p”,按“Enter”,设置分区形式后查看磁盘分区形式。
回显类似如下信息:
(parted) mklabel gpt (parted) p
Model: Virtio Block Device (virtblk) Disk /dev/vdb: 3299GB
Sector size (logical/physical): 512B/512B Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags (parted)
步骤6 输入“unit s”,按“Enter”,设置磁盘的计量单位为磁柱。
步骤7 以为整个磁盘创建一个分区为例,输入“mkpart opt 2048s 100%”,按“Enter”。
“2048s”表示磁盘起始容量,“100%”表示磁盘截止容量,此处仅供参考,您可以 根据业务需要自行规划磁盘分区数量及容量。
回显类似如下信息:
(parted) mkpart opt 2048s 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? Cancel
若出现以上性能优化提示,请先输入“Cancel”,停止分区。然后找出对应磁盘最优 性能的初始磁柱值,再使用该值进行分区即可。本示例中性能最优的初始磁柱值即为 2048s,因此系统没有该提示。
步骤8 输入“p”,按“Enter”,查看新建分区的详细信息。
回显类似如下信息:
(parted) p
Model: Virtio Block Device (virtblk) Disk /dev/vdb: 6442450944s
Sector size (logical/physical): 512B/512B Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags 1 2048s 6442448895s 6442446848s opt
表示新建分区“dev/vdb1”的详细信息。
步骤9 输入“q”,按“Enter”,退出parted分区工具。
步骤10 执行以下命令,查看磁盘分区信息。
lsblk
回显类似如下信息:
[root@bms-centos74 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk
mkfs -t ext4 /dev/vdb1 回显类似如下信息:
[root@bms-centos74 ~]# mkfs -t ext4 /dev/vdb1 mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2) Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks 201326592 inodes, 805305856 blocks
40265292 blocks (5.00%) reserved for the super user First data block=0
Maximum filesystem blocks=2952790016 24576 block groups
32768 blocks per group, 32768 fragments per group 8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
格式化需要等待一段时间,请观察系统运行状态,不要退出。
mkdir /mnt/sdc
步骤13 执行以下命令,将新建分区挂载到步骤12中新建的挂载点下。
mount /dev/vdb1 挂载点
以挂载新建分区至“/mnt/sdc”为例:
mount /dev/vdb1 /mnt/sdc 步骤14 执行以下命令,查看挂载结果。
df -TH
回显类似如下信息:
[root@bms-centos74 ~]# df -TH
Filesystem Type Size Used Avail Use% Mounted on 定 /dev/vdb1的方法,因为云中设备的顺序编码在关闭或者开启服务器过程中可能发 生改变,例如/dev/vdb1可能会变成/dev/vdb2。推荐使用UUID来配置自动挂载数据 盘。
说明
磁盘的UUID(Universally Unique Identifier)是Linux系统为磁盘分区提供的唯一的标识字符 串。
步骤1 执行如下命令,查询磁盘分区的UUID。
blkid 磁盘分区
以查询磁盘分区“/dev/vdb1”的UUID为例:
blkid /dev/vdb1 回显类似如下信息:
[root@bms-centos74 ~]# blkid /dev/vdb1
/dev/vdb1: UUID="bdd29fe6-9cee-4d4f-a553-9faad281f89b" TYPE="ext4" PARTLABEL="opt"
PARTUUID="c7122c92-ed14-430b-9ece-259920d5ee74"
表示“/dev/vdb1”的UUID。
步骤2 执行以下命令,使用VI编辑器打开“fstab”文件。
vi /etc/fstab
步骤3 按“i”,进入编辑模式。
步骤4 将光标移至文件末尾,按“Enter”,添加如下内容。
UUID=bdd29fe6-9cee-4d4f-a553-9faad281f89b /mnt/sdc ext4 defaults 0 2
步骤5 按“ESC”后,输入:wq,按“Enter”。
保存设置并退出编辑器。
----结束