
本教程适用于 Ubuntu/Debian 系统,全程无需重启。
登录实例,确认当前状态:
# 查看磁盘分区情况 lsblk # 查看根分区使用情况和文件系统类型 df -h / df -T /
登录 Oracle Cloud 控制台
进入:Block Storage → Boot Volumes
找到对应实例的引导卷
点击 Edit,输入更大的容量(只能扩不能缩)
点击 Save Changes 保存
sudo apt-get update sudo apt-get install cloud-guest-utils -y
让系统识别到新大小:
echo "1" | sudo tee /sys/class/block/sda/device/rescan
然后用 lsblk 确认磁盘总大小已更新。
sudo growpart /dev/sda 2
如果输出 CHANGED: partition=2 ...,说明分区已扩展
如果输出 NOCHANGE: partition 2 is size xxx. it cannot be grown,说明分区已经最大,跳过此步(你遇到的就是这个情况)
根据文件系统类型执行对应命令:
# ext4(最常见) sudo resize2fs /dev/sda2 # 如果是 xfs sudo xfs_growfs /
df -h /
现在根分区应该显示为新的大小了。
# 安装工具 sudo apt-get update && sudo apt-get install cloud-guest-utils -y # 刷新磁盘 echo "1" | sudo tee /sys/class/block/sda/device/rescan # 扩展分区(如果提示 NOCHANGE 就跳过) sudo growpart /dev/sda 2 # 扩展文件系统(ext4) sudo resize2fs /dev/sda2 # 验证 df -h /
| 问题 | 解决方法 |
|---|---|
growpart: command not found |
sudo apt-get install cloud-guest-utils -y |
NOCHANGE: partition cannot be grown |
分区已最大,直接执行 resize2fs |
resize2fs: Device or resource busy |
正常提示,不影响扩容 |
| 文件系统是 xfs | 用 xfs_growfs / 代替 resize2fs |
| 需要重启吗? | 不需要,在线操作即可 |