Jan
29
2021
离线扩容云盘(Linux系统)
背景信息
本文示例中使用的配置如下所示。
资源 | 描述 |
---|---|
ECS实例的镜像 | 公共镜像Alibaba Cloud Linux 2.1903 LTS 64位 |
系统盘 | /dev/vda:使用MBR分区和ext4文件系统,由40 GiB扩容到60 GiB。 |
数据盘 |
|
步骤一:创建快照
在扩容云盘前,为云盘创建快照,做好数据备份。
步骤二:在控制台扩容云盘容量并重启(或启动)ECS实例
步骤三:查看云盘分区情况
进入ECS实例内部,查看系统盘和数据盘的分区类型(MBR和GPT)和文件系统类型(ext4、xfs等)。不同的分区和文件系统,后续扩容分区和文件系统操作中存在差异。
步骤四:扩容分区
通过查看云盘分区情况,在ECS实例内分区和文件系统并未扩容。此步骤介绍如何在ECS实例内部扩容云盘分区。
步骤五:扩容文件系统
此步骤介绍如何ECS实例内部扩容分区的文件系统。
常见问题
-
问题:运行
growpart /dev/vda 1
时,提示unexpected output in sfdisk --version [sfdisk,来自 util-linux 2.23.2]
。解决方案:-
运行
locale
命令查看ECS实例的字符编码类型,将非en_US.UTF-8的字符编码类型切换成en_US.UTF-8。-
运行以下命令,切换字符编码类型。
LANG=en_US.UTF-8
-
如果问题仍未解决,运行以下命令,切换字符编码类型。
export LC_ALL=en_US.UTF-8
-
如果问题仍未解决,运行以下命令,切换字符编码类型。
localectl set-locale LANG=en_US.UTF-8
-
如果您使用CentOS 8镜像,采用以上方案无法解决问题时,运行以下命令,切换字符编码类型。
export LANGUAGE=en_US.UTF-8
-
运行以下命令,切换字符编码类型。
-
如果问题仍未解决,请您尝试运行
reboot
命令重启ECS实例。
注意当您通过切换字符编码,成功完成扩容分区后,建议您按需切回原有字符编码。
-
运行
-
问题:运行
growpart /dev/vda 1
时,提示-bash: growpart: command not found
。解决方案:-
运行
uname -a
检查Linux内核的版本。本文操作适用于Linux内核版本3.6.0及以上的系统。如果Linux内核低于3.6.0版本,扩容分区操作请参见扩展低内核版本实例的系统盘分区和文件系统和扩展分区和文件系统_Linux数据盘。
-
安装growpart工具。
-
CentOS 7及以上版本运行以下命令。
yum install -y cloud-utils-growpart
-
Debian 9及以上版本、Ubuntu14及以上版本运行以下命令。
apt install -y cloud-guest-utils
-
CentOS 7及以上版本运行以下命令。
-
运行
如果您有其他问题,可以联系北京志远天成阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询!
本公司销售:阿里云新/老客户,只要购买阿里云,即可享受折上折优惠!>
我有话说: