云硬盘扩容
云硬盘扩容
1. 概述
本文阐述的操作对象是数据盘,不包含系统盘,您可以根据下文中的引导进行合理的硬盘扩容操作。
2. 注意事项
扩容文件系统操作不慎可能影响已有数据,因此建议您在操作前手动创建备份数据。
扩容文件系统将导致一定时间的业务中断,建议您选择合适的时间谨慎操作。
MBR 分区形式支持的磁盘最大容量为2TB。如果您的硬盘分区为 MBR 格式,且需要扩容到超过 2TB 时,建议您重新创建并挂载一块数据盘,使用 GPT 分区方式后将数据拷贝至新盘上。 对于 Linux 操作系统而言,当磁盘分区形式选用 GPT 时,fdisk 分区工具将无法使用,需要采用 parted 工具。
对于Linux系统,以 root 用户执行以下命令,查询云硬盘使用的分区形式。
fdisk -l
若结果如下图所示(根据操作系统不同略有不同),则说明使用 MBR 分区形式。
若结果如下两图所示(根据操作系统不同略有不同),则说明使用 GPT 分区形式。
3. 操作场景
扩容云硬盘完成后,需要将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成一个独立的新分区。硬盘待挂载状态执行了扩容操作,扩容后的硬盘空间将自动识别。
请根据不同的操作系统,不同的分区形式参考下表进行扩容操作:
扩展分区及文件系统 | 分区形式 | 操作场景 |
---|---|---|
Windows | MBR/GPT | 将扩容部分的容量划分至原有分区(MBR/GPT) |
Linux | MBR | 将扩容部分的容量划分至原有分区(MBR) |
Linux | MBR | 将扩容部分的容量格式化成独立的新分区(MBR) |
Linux | GPT | 将扩容部分的容量划分至原有分区(GPT) |
Linux | GPT | 将扩容部分的容量格式化成独立的新分区(GPT) |
3.1. 扩展分区及文件系统(Windows)
本次场景为1000GB扩容至1020GB。
前提条件
待扩容云硬盘已挂载Windows 云服务器且已创建文件系统。
将扩容部分的容量划分至原有分区(MBR/GPT)。
- 登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。
- 在右键菜单中选择扩容。
- 选择需要的新容量大小(必须大于当前大小)。
- 完成支付。
- 将扩容后的云硬盘绑定对应云服务器。
- 登录windows云服务器。
查看数据盘是否已经变为扩容后的大小(本例中执行扫描操作后识别到硬盘由原来的1000GB扩容到了1020GB)。如下图所示:
扩展卷,右键单击磁盘空间的任一空白处,选择【扩展卷】。
根据扩展卷向导的指引完成扩展卷操作。完成后新增的数据盘空间将会合入原有卷中。如下图所示:
3.2. 扩展分区及文件系统(Linux)
前提条件
待扩容云硬盘已挂载Linux 云服务器且已创建文件系统。
将扩容部分的容量划分至原有分区(MBR)。
本次场景为300GB扩容至400GB。
- 登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。
- 在右键菜单中选择扩容。
- 选择需要的新容量大小(必须大于当前大小)。
- 完成支付。
- 将扩容后的云硬盘绑定对应云服务器。
- 登录Linux云服务器。
- 查看目标分区是否被挂载,若挂载先执行umount命令卸载。
执行fdisk 待扩容硬盘路径,此处为。
fdisk /dev/sdb
删除分区,删除分区前请提前做好重要数据的备份操作,新建分区,first sector必须和原分区保持一致,last sector根据新的分区容量分配,可选择默认最大,只建一个分区。
最后输入wq保存磁盘信息。执行fdisk –l 查看新的分区信息,新分区已扩容至400GB。
将扩容部分的容量格式化成独立的新分区(MBR)。
本次场景为400GB扩容至500GB。
- 登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。
- 在右键菜单中选择扩容。
- 选择需要的新容量大小(必须大于当前大小)。
- 完成支付。
- 将扩容后的云硬盘绑定对应云服务器。
- 登录Linux云服务器。
- 以 root 用户执行以下命令,查看已挂载的数据盘分区信息,确保带扩容硬盘处于umount状态。
执行以下命令,查看数据盘扩容后未分区的信息。
fdisk –l
执行以下命令,新建一个新分区。本文以磁盘路径是/dev/sdc为例,则执行:
fdisk /dev/sdc
按照界面的提示,依次输入“p”(查看现有分区信息)、“n”(新建分区)、“p”(新建主分区)、“2”(新建第2个主分区),两次回车(使用默认配置),输入 “w”(保存分区表),开始分区。如下图所示
从下图可知,新增的100GB分给了主分区2:
最后将新的分区挂载到自己指定的路径下。
将扩容部分的容量划分至原有分区(GPT)。
本次场景为3TB扩容至3.5TB。
- 登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。
在右键菜单中选择扩容。
选择需要的新容量大小(必须大于当前大小)。
完成支付。
将扩容后的云硬盘绑定对应云服务器。
登录Linux云服务器。
查看目标分区是否被挂载,若挂载先执行umount命令卸载。
df -TH
以 root 用户执行以下命令,确认云硬盘的容量变化。建议您在进行扩容操作前提前备份好重要数据以防丢失,本文以磁盘路径是/dev/sdb为例,则执行:
parted /dev/sdb print
若在过程中提示如下图所示信息,请输入Fix。
如下图显示,新增的500GB容量已加载到硬盘上:
执行parted /dev/sdb命令,进入 parted 分区工具。
执行unit s命令,将显示和操纵单位变成 sector(默认为GB)。 执行print命令,查看分区信息,并记录已有分区的 Start 值。 本文中 Start 值为 2048s。 执行rm 1命令,删除原有分区。执行mkpart primary <原分区起始扇区> 100%命令新建一个主分区,请确保新分区与原始分区的Start值保持一致。
执行print命令,查看新分区是否已创建成功。 返回结果如下图所示,即表示新分区已创建成功。执行q命令,退出 parted 工具。
- 请先将sdb1挂载到目录,再执行xfs_growfs /dev/sdb1,调整分区大小。(ext4文件系统请先使用resize2fs /dev/sdb1调整分区大小,再进行挂载操作,与xfs相反)
执行lsblk扩容成功则如下图所示:
执行mount /dev/sdb1 挂载路径 命令,手动挂载新分区,此处为/data/part1。
将扩容部分的容量格式化成独立的新分区(GPT)。
本次场景为3.5TB扩容至4TB。
- 登录 【云控制台】>【计算】>【云硬盘】,确认目标硬盘为空闲状态。
在右键菜单中选择扩容。
选择需要的新容量大小(必须大于当前大小)。
完成支付。
将扩容后的云硬盘绑定对应云服务器。
登录Linux云服务器。
检查目标分区是否挂载,若挂载请先卸载。
以 root 用户执行以下命令, 确认云硬盘的容量变化。
parted <磁盘路径> print 本文以磁盘路径是/dev/sdb为例,则执行: parted /dev/sdb print 若出现Fix/ignore,请选择Fix。
如下图,sdb硬盘扩容已加载:
执行以下命令,进入 parted 分区工具。
parted /dev/sdb
执行print命令,查看分区信息,并记录已有分区的 End 值,以此值作为下一个分区的起始偏移值。 执行以下命令,新建一个主分区。此分区将从已有分区的末尾开始,覆盖硬盘所有的新增空间。
本文以 End 值是3758GB为例,执行以下命令:mkpart primary 3758GB 100%
执行以下命令,查看新分区是否已创建成功。
print
执行quit命令,退出 parted 工具。
格式化新的分区。
mkfs.xfs –f /dev/sdb2
将新的分区挂载至相应的路径下:
mount /dev/sdb2 /data/part2