步骤一:登录ECS实例并查看数据盘
远程连接ECS实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
运行以下命令,获取数据盘的设备名称。
fdisk -lu
运行结果如下所示,表示当前ECS实例有两块云盘,
/dev/vda
是系统盘,/dev/vdb
是新增数据盘。步骤二:为数据盘创建分区
重要
MBR分区不支持2 TiB以上容量。如果您使用的云盘容量大于2 TiB或者后续有可能会扩容到2 TiB以上,分区时请采用GPT分区格式。
Parted工具适用于MBR分区和GPT分区,fdisk分区工具只适用于MBR分区。
创建GPT分区创建MBR分区按以下步骤通过Parted分区工具为小于等于2 TiB的数据盘创建GPT分区,GPT分区也支持2 TiB以上容量。
运行以下命令,安装Parted工具。
yum install -y parted
说明此步骤中yum命令适用于CentOS等Linux发行版本。其他Linux发行版本,请根据实际使用的包管理软件修改安装命令。例如Debian或Ubuntu,请使用
apt-get install <软件包名称>
。使用Parted工具为数据盘进行分区。
运行以下命令,开始分区。本操作以数据盘
/dev/vdb
为例。parted /dev/vdb
其中,
/dev/vdb
是数据盘的设备名称,请您根据实际环境替换。在Parted交互命令行输入以下内容,设置GPT分区格式。
mklabel gpt
输入以下内容,划分一个主分区,并设置分区的开始位置和结束位置。
本操作以划分一个主分区、分区名为primary且100%容量给到第一个分区为例。
mkpart primary 1 100%
说明如果您的单块云盘需要创建多个分区,您需要重复执行本步骤去创建其他分区。
运行以下命令,检查分区是否对齐。
其中,
1
是对应的分区号,通常建议您做分区对齐,以获取更好的云盘性能。align-check optimal 1
如果分区是对齐的,结果如下所示:
1 aligned
说明如果返回的是
1 not aligned
,表示分区未对齐。如何处理,请参见初始化云盘FAQ。输入以下内容,查看分区表。
输入以下内容,退出Parted工具。
quit
分区过程如下所示。
运行以下命令,使系统重读分区表。
partprobe
运行以下命令,查看新分区信息。本操作以数据盘
/dev/vdb
为例。fdisk -lu /dev/vdb
其中,
/dev/vdb
是数据盘的设备名称,请您根据实际环境替换。运行结果如下所示,如果出现gpt的相关信息,表示新分区已创建完成。
步骤三:为分区创建文件系统
在新分区上创建一个文件系统。不同文件系统支持的分区大小不同,请您根据实际需求创建文件系统。
运行以下命令,安装e2fsprogs工具。
yum install -y e2fsprogs
说明此步骤中yum命令适用于CentOS等Linux发行版本。其他Linux发行版本,请根据实际使用的包管理软件修改安装命令。例如Debian或Ubuntu,请使用
apt-get install <软件包名称>
。运行以下命令,创建文件系统。以下示例命令介绍如何创建ext4和xfs文件系统。
创建ext4文件系统创建xfs文件系统mkfs -t ext4 /dev/vdb1
其中,
/dev/vdb1
是数据盘的分区名称,请您根据实际环境替换。重要当数据盘容量为16 TiB,在创建ext4文件系统报错时,您需要检查e2fsprogs工具包的版本是否高于1.42,并安装高版本的e2fsprogs工具包。具体操作,请参见如何升级e2fsprogs工具包?。
ext4文件系统的lazy init功能会影响数据盘的I/O性能,您可以关闭ext4文件系统的lazy init功能。具体操作,请参见如何关闭Linux实例的lazy init功能?。
如下图所示的示例信息表示为数据盘分区
/dev/vdb1
创建一个ext4文件系统。步骤四:配置/etc/fstab文件并挂载分区
如果您需要设置开机自动挂载云盘,需要在/etc/fstab中写入新分区信息,启动开机自动挂载分区。
重要建议您在/etc/fstab中使用全局唯一标识符UUID来引用新分区。由于释放云盘等操作可能会导致其他云盘的设备名变动,如果在/etc/fstab中直接使用设备名,当设备名变动时可能影响您的存储数据。
运行以下命令,备份/etc/fstab文件。
cp /etc/fstab /etc/fstab.bak
在/etc/fstab里写入新分区信息。
如果您使用root用户,可以运行以下命令修改/etc/fstab文件。
echo `blkid /dev/vdb1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 defaults 0 0 >> /etc/fstab
其中:
/dev/vdb1
:数据盘的分区名称,您需要根据实际环境进行替换。
/mnt
:分区的挂载点,您需要根据实际环境进行替换。您可以将分区挂载至环境已有目录下,也可以先通过mkdir
命令创建新的挂载目录,然后再挂载。
ext4
:分区的文件系统类型,您需要根据已创建的文件系统类型修改。说明
Ubuntu 12.04系统不支持barrier,您需要运行
echo `blkid /dev/vdb1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 barrier=0 0 0 >> /etc/fstab
命令。如果您的操作系统不是Ubuntu 12.04,请忽略该说明信息。如果单盘有多个连续分区的情况,需要分别将分区信息写入/etc/fstab中。例如数据盘
/dev/vdb
有2个分区/dev/vdb1
和/dev/vdb2
,需要分别执行以下命令:echo `blkid /dev/vdb1 | awk '{print $2}' | sed 's/\"//g'` </dev/vdb1的挂载点> </dev/vdb1的文件系统类型> defaults 0 0 >> /etc/fstab echo `blkid /dev/vdb2 | awk '{print $2}' | sed 's/\"//g'` </dev/vdb2的挂载点> </dev/vdb2的文件系统类型> defaults 0 0 >> /etc/fstab
如果您是普通用户,可以手动修改/etc/fstab文件。具体操作,请参见在fstab文件中配置UUID方式自动挂载数据盘。
运行以下命令,查看/etc/fstab中的新分区信息。
cat /etc/fstab
结果如下所示。
运行以下命令,挂载/etc/fstab配置的文件系统。如果无报错输出,表示您的/etc/fstab配置无误。
mount -a
运行以下命令,检查挂载结果是否符合您的预期。
df -h
结果如下所示,如果出现新建文件系统的信息,表示文件系统挂载成功。