操作场景
云硬盘是云上可扩展的存储设备,您可以在创建云硬盘后随时扩展其大小,以增加存储空间,同时不失去云硬盘上原有的数据。
云硬盘扩容 完成后,需要将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成一个独立的新分区。
注意事项
扩容文件系统操作不慎可能影响已有数据,因此强烈建议您在操作前手动 创建快照 备份数据。
前提条件
- 已扩容云硬盘空间。
- 该云硬盘已挂载 到 Linux 云服务器并已创建文件系统。
- 已登录待扩展分区及文件系统的 Linux 云服务器。
操作步骤
确认扩展方式
以 root 用户执行以下命令,查询云硬盘使用的分区形式。
- fdisk -l
- 若结果如下两图所示(根据操作系统不同略有不同),则说明使用 GPT 分区形式。
![691e282e4674b6299145604f55085993.png](https://i-blog.csdnimg.cn/blog_migrate/cc7cc2b26d93dd9c96cb5cffd50d3772.jpeg)
![ce5ecd7998927de8cd76147854e15877.png](https://i-blog.csdnimg.cn/blog_migrate/68af567d48f62f85e85f2b05a1e88300.png)
-
- 若结果如下图所示(根据操作系统不同略有不同),则说明使用 MBR 分区形式。注意:
MBR 分区形式支持的磁盘最大容量为2TB。如果您的硬盘分区为 MBR 格式,且需要扩容到超过 2TB 时,建议您重新创建并挂载一块数据盘,使用 GPT 分区方式后将数据拷贝至新盘上。对于 Linux 操作系统而言,当磁盘分区形式选用 GPT 时,fdisk 分区工具将无法使用,需要采用 parted 工具。
- 若结果如下图所示(根据操作系统不同略有不同),则说明使用 MBR 分区形式。注意:
![ed385e81fd4f2231efef8f5ea96dd2d6.png](https://i-blog.csdnimg.cn/blog_migrate/578ba77fc67270ed8730649e3aba5301.jpeg)
分区形式操作指引说明GPT将扩容部分的容量划分至原有分区(GPT)同样适用于未分区直接格式化的场景。将扩容部分的容量格式化成独立的新分区(GPT)可保持原有分区不变。MBR将扩容部分的容量划分至原有分区(MBR)同样适用于未分区直接格式化的场景。将扩容部分的容量格式化成独立的新分区(MBR)可保持原有分区不变。
将扩容部分的容量划分至原有分区(GPT)
以 root 用户执行以下命令,确认云硬盘的容量变化。
- parted <磁盘路径> print
本文以磁盘路径是/dev/vdb
为例,则执行: - parted /dev/vdb print
若在过程中提示如下图所示信息,请输入Fix
。
![f6035bf6b4ef8a0aed8f21923430d416.png](https://i-blog.csdnimg.cn/blog_migrate/4eda77ce31d6c3b880120ce03c6415a0.jpeg)
如下图所示,扩容后的云硬盘大小为107GB,已有分区的大小为10.7GB。
![8aaf93f306ea44012cbd51cc1d9f125a.png](https://i-blog.csdnimg.cn/blog_migrate/baabe04f632058949a3e5d00d7d95a9f.jpeg)
执行以下命令,确认该云硬盘是否还有分区已挂载。
- mount | grep '<磁盘路径>'
本文以磁盘路径是/dev/vdb
为例,则执行: - mount | grep '/dev/vdb'
如下图所示,云硬盘上有一个分区(vdb1)挂载在/data
上。
![d5685ff31a0aa585d814ef329aabb233.png](https://i-blog.csdnimg.cn/blog_migrate/2c2fa8f38c818e528d9b271ff0ad39d6.png)
执行以下命令,解挂数据盘。
- umount <挂载点>
本文以挂载点是/data
为例,则执行: - umount /data
说明:
请将云硬盘上所有分区的文件系统都解挂,。可重复执行以下命令,确认该硬盘上所有分区的文件系统都已解挂。 - mount | grep '/dev/vdb'
![6c770fc746764b487e7aff6345380b4a.png](https://i-blog.csdnimg.cn/blog_migrate/1e63eef6a689ce222607134eaba56592.png)
执行以下命令,进入 parted 分区工具。
- parted '<磁盘路径>'
本文以磁盘路径是/dev/vdb
为例,则执行: - parted '/dev/vdb'
- 执行以下命令,将显示和操纵单位变成 sector(默认为GB)。
- unit s
- 输