云硬盘扩容

概述

本文阐述的操作对象是数据盘,不包含系统盘,您可以根据下文中的引导进行合理的硬盘扩容操作。

注意事项

扩容文件系统操作不慎可能影响已有数据,因此建议您在操作前手动创建备份数据。

扩容文件系统将导致一定时间的业务中断,建议您选择合适的时间谨慎操作。

MBR 分区形式支持的磁盘最大容量为2TB。如果您的硬盘分区为 MBR 格式,且需要扩容到超过 2TB 时,建议您重新创建并挂载一块数据盘,使用 GPT 分区方式后将数据拷贝至新盘上。
对于 Linux 操作系统而言,当磁盘分区形式选用 GPT 时,fdisk 分区工具将无法使用,需要采用 parted 工具。

对于Linux系统,以 root 用户执行以下命令,查询云硬盘使用的分区形式。

fdisk -l

若结果如下图所示(根据操作系统不同略有不同),则说明使用 MBR 分区形式。


若结果如下两图所示(根据操作系统不同略有不同),则说明使用 GPT 分区形式。

操作场景

扩容云硬盘完成后,需要将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成一个独立的新分区。硬盘待挂载状态执行了扩容操作,扩容后的硬盘空间将自动识别。
请根据不同的操作系统,不同的分区形式参考下表进行扩容操作:

扩展分区及文件系统 分区形式 操作场景
Windows MBR/GPT 将扩容部分的容量划分至原有分区(MBR/GPT)
Linux MBR 将扩容部分的容量划分至原有分区(MBR)
将扩容部分的容量格式化成独立的新分区(MBR)
GPT 将扩容部分的容量划分至原有分区(GPT)
将扩容部分的容量格式化成独立的新分区(GPT)

扩展分区及文件系统(Windows)

本次场景为1000GB扩容至1020GB。

前提条件

待扩容云硬盘已挂载Windows 云服务器且已创建文件系统。

将扩容部分的容量划分至原有分区(MBR/GPT)。

1.登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。

2.在右键菜单中选择扩容。

3.选择需要的新容量大小(必须大于当前大小)。

4.完成支付。

5.将扩容后的云硬盘绑定对应云服务器。

6.登录windows云服务器。

7.查看数据盘是否已经变为扩容后的大小(本例中执行扫描操作后识别到硬盘由原来的1000GB扩容到了1020GB)。如下图所示:

8.扩展卷,右键单击磁盘空间的任一空白处,选择【扩展卷】。

根据扩展卷向导的指引完成扩展卷操作。完成后新增的数据盘空间将会合入原有卷中。如下图所示:

扩展分区及文件系统(Linux)

前提条件

待扩容云硬盘已挂载Linux 云服务器且已创建文件系统。

将扩容部分的容量划分至原有分区(MBR)。

本次场景为300GB扩容至400GB。

1.登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。

2.在右键菜单中选择扩容。

3.选择需要的新容量大小(必须大于当前大小)。

4.完成支付。

5.将扩容后的云硬盘绑定对应云服务器。

6.登录Linux云服务器。

7.查看目标分区是否被挂载,若挂载先执行umount命令卸载。

8.执行fdisk 待扩容硬盘路径,此处为。

fdisk /dev/sdb

删除分区,删除分区前请提前做好重要数据的备份操作,新建分区,first sector必须和原分区保持一致,last sector根据新的分区容量分配,可选择默认最大,只建一个分区。
最后输入wq保存磁盘信息。

9.执行fdisk –l 查看新的分区信息,新分区已扩容至400GB。

将扩容部分的容量格式化成独立的新分区(MBR)。

本次场景为400GB扩容至500GB。

1.登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。

2.在右键菜单中选择扩容。

3.选择需要的新容量大小(必须大于当前大小)。

4.完成支付。

5.将扩容后的云硬盘绑定对应云服务器。

6.登录Linux云服务器。

7.以 root 用户执行以下命令,查看已挂载的数据盘分区信息,确保带扩容硬盘处于umount状态。

8.执行以下命令,查看数据盘扩容后未分区的信息。

fdisk –l

9.执行以下命令,新建一个新分区。本文以磁盘路径是/dev/sdc为例,则执行:

fdisk /dev/sdc

按照界面的提示,依次输入“p”(查看现有分区信息)、“n”(新建分区)、“p”(新建主分区)、“2”(新建第2个主分区),两次回车(使用默认配置),输入 “w”(保存分区表),开始分区。如下图所示

从下图可知,新增的100GB分给了主分区2:

10.最后将新的分区挂载到自己指定的路径下。

将扩容部分的容量划分至原有分区(GPT)。

本次场景为3TB扩容至3.5TB。

1.登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。

2.在右键菜单中选择扩容。

3.选择需要的新容量大小(必须大于当前大小)。

4.完成支付。

5.将扩容后的云硬盘绑定对应云服务器。

6.登录Linux云服务器。

7.查看目标分区是否被挂载,若挂载先执行umount命令卸载。

df -TH

8.以 root 用户执行以下命令,确认云硬盘的容量变化。建议您在进行扩容操作前提前备份好重要数据以防丢失,本文以磁盘路径是/dev/sdb为例,则执行:

parted /dev/sdb print

若在过程中提示如下图所示信息,请输入Fix。

9.如下图显示,新增的500GB容量已加载到硬盘上:

10.执行parted /dev/sdb命令,进入 parted 分区工具。

执行unit s命令,将显示和操纵单位变成 sector(默认为GB)。
执行print命令,查看分区信息,并记录已有分区的 Start 值。
本文中 Start 值为 2048s。
执行rm 1命令,删除原有分区。

11.执行mkpart primary <原分区起始扇区> 100%命令新建一个主分区,请确保新分区与原始分区的Start值保持一致。

执行print命令,查看新分区是否已创建成功。
返回结果如下图所示,即表示新分区已创建成功。

执行q命令,退出 parted 工具。

12.请先将sdb1挂载到目录,再执行xfs_growfs /dev/sdb1,调整分区大小。(ext4文件系统请先使用resize2fs /dev/sdb1调整分区大小,再进行挂载操作,与xfs相反)

13.执行lsblk扩容成功则如下图所示:

14.执行mount /dev/sdb1 挂载路径 命令,手动挂载新分区,此处为/data/part1。

将扩容部分的容量格式化成独立的新分区(GPT)。

本次场景为3.5TB扩容至4TB。

1.登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。

2.在右键菜单中选择扩容。

3.选择需要的新容量大小(必须大于当前大小)。

4.完成支付。

5.将扩容后的云硬盘绑定对应云服务器。

6.登录Linux云服务器。

7.检查目标分区是否挂载,若挂载请先卸载。

8.以 root 用户执行以下命令, 确认云硬盘的容量变化。

parted <磁盘路径> print
本文以磁盘路径是/dev/sdb为例,则执行:
parted /dev/sdb print
若出现Fix/ignore,请选择Fix。

如下图,sdb硬盘扩容已加载:

9.执行以下命令,进入 parted 分区工具。

parted /dev/sdb

执行print命令,查看分区信息,并记录已有分区的 End 值,以此值作为下一个分区的起始偏移值。
执行以下命令,新建一个主分区。此分区将从已有分区的末尾开始,覆盖硬盘所有的新增空间。

本文以 End 值是3758GB为例,执行以下命令:

mkpart primary 3758GB 100%

执行以下命令,查看新分区是否已创建成功。

print

执行quit命令,退出 parted 工具。

10.格式化新的分区。

mkfs.xfs –f /dev/sdb2

11.将新的分区挂载至相应的路径下:

mount /dev/sdb2 /data/part2