一块全新的数据盘挂载到ECS实例后,往往需要创建并挂载至少一个文件系统。本文介绍如何在Linux系统中分区格式化新的数据盘。
前提条件
说明 此处挂载操作指在控制台将云盘挂载到ECS实例,并非在ECS实例操作系统内通过mount命令挂载文件系统。
背景信息
数据盘的设备名默认由系统分配,命名规则如下所示:
- I/O优化实例的数据盘设备名为/dev/vd[b-z],例如/dev/vdb、/dev/vdc和/dev/vdd等。
- 非I/O优化实例的数据盘设备名为/dev/xvd[b-z],例如/dev/xvdb、/dev/xvdc和/dev/xvdd等。
数据盘支持创建GPT分区和MBR分区,二者区别如下:
- GPT:能够识别大于2 TiB的分区,创建分区数量无限制。
- MBR:只能识别小于或等于2 TiB的分区,最多创建4个分区。
注意事项
格式化操作可能存在如下风险:
- 磁盘分区和格式化是高风险行为,请慎重操作。本文操作仅适用处理一块全新的数据盘。
如果您的数据盘上有数据,请务必为数据盘创建快照,避免数据丢失。具体操作,请参见创建一个云盘快照。
- 云服务器ECS仅支持数据盘分区操作,不支持系统盘分区操作。
如果您强行使用第三方工具对系统盘做分区操作,可能引发系统崩溃和数据丢失等未知风险。仅允许在扩容系统盘后做扩展分区或新增分区操作,具体操作,请参见在线扩容云盘(Linux系统)。
操作指导
如果您创建GPT分区,请参见以下操作:
如果您创建MBR分区,请参见以下操作:
本文示例中使用的配置如下所示。
资源 | 描述 |
---|---|
ECS实例的镜像 | 公共镜像Alibaba Cloud Linux 3.2104 64位 |
数据盘 |
|
步骤一:登录ECS实例并查看数据盘
登录ECS实例并检查数据盘是否已经挂载到ECS实例。
步骤二:为数据盘创建GPT分区
按以下步骤为数据盘创建GPT分区,支持2 TiB以上容量。
步骤二:为数据盘创建MBR分区
按以下步骤为数据盘创建MBR分区,MBR分区不支持大于2 TiB容量。
说明 如果您需要配置大于2 TiB容量数据盘,或者后续可能需要扩容到2 TiB以上,建议您使用GPT分区,具体操作,请参见
步骤二:为数据盘创建GPT分区。
步骤三:为分区创建文件系统
在新分区上创建一个文件系统。以下命令介绍如何创建ext4和xfs文件系统,您可以根据实际需求,创建对应的文件系统。
说明 如果数据盘的容量大于16 TiB,您需要使用指定版本的e2fsprogs工具包格式化数据盘。具体操作,请参见
附录一:Linux实例升级e2fsprogs工具包。
- 运行以下命令,创建一个ext4文件系统。
mkfs -t ext4 /dev/vdb1
- 运行以下命令,创建一个xfs文件系统。
mkfs -t xfs /dev/vdb1
本示例中,创建一个ext4文件系统。
步骤四:配置/etc/fstab文件并挂载分区
在/etc/fstab中写入新分区信息,启动开机自动挂载分区。
注意 建议您在
/etc/fstab中使用全局唯一标识符UUID来引用新分区。由于释放云盘等操作可能会导致其他云盘的设备名变动,如果在
/etc/fstab中直接使用设备名,当设备名变动时可能影响您的存储数据。
常见问题
问题:创建GPT分区时,分区未对齐如何解决?
解决方案:
- 建议您运行以下命令。
cat /sys/block/vdb/queue/optimal_io_size cat /sys/block/vdb/queue/minimum_io_size cat /sys/block/vdb/alignment_offset cat /sys/block/vdb/queue/physical_block_size
- 根据
(<optimal_io_size>+<alignment_offset>)/<physical_block_size>
的公式计算出最佳分区模式的起始扇区值。假设1024为计算得出的推荐扇区值,则您可以运行
mkpart primary 1024s 100%
重新划分一个主分区。