問題描述
符合如下條件的Alibaba Cloud Linux 2實例在系統盤配置不是默認值20 GB時,擴容磁盤失敗,系統顯示系統盤大小仍然為默認值20 GB。
鏡像:aliyun_2_1903_x64_20G_alibase_20200114.qboot.vhd鏡像(以下簡稱qboot鏡像)。
內核:4.19.81-17.al7.x86_64內核版本。
例如系統盤配置為300 GB,擴容vda1分區至非20 GB后,還是顯示20 GB,如下圖所示:
查看對應的/var/log/cloud-init.log
日志,發現磁盤resize失敗。
問題原因
該問題的原因是由于qboot鏡像啟動優化去除了initramfs過程,導致實例啟動后出現以下情況:
/proc/mounts
中/
根目錄的掛載設備為/dev/root
。系統沒有正確創建軟鏈接
/dev/root
。
因此在實例啟動過程中,cloud-init應用無法正確識別系統根分區信息,導致擴容失敗。
解決方案
方案一:擴容系統盤的分區和文件系統
參考以下步驟,擴容系統盤的分區和文件系統。
執行以下命令,對系統盤第一個分區進行擴容。
growpart /dev/vda 1
執行以下命令,擴容系統盤的
/dev/vda1
分區文件系統。resize2fs /dev/vda1
說明以上命令是擴容EXT4格式的文件系統。如果您使用的是XFS文件系統,需執行
xfs_growfs /dev/vda1
命令擴容文件系統。更多信息,請參見擴容分區和文件系統(Linux)。
方案二:更換系統盤
該問題在aliyun_2_1903_x64_20G_qboot_alibase_20200904.vhd版本的qboot鏡像中已修復,您使用新鏡像即可。具體操作,請參見更換操作系統(系統盤)。
文檔內容是否對您有幫助?