云服务器磁盘扩容实战:不卸载不停机的无损扩容方法
本内容发表于:2026-07-20 14:36:45
浏览量
1055

云服务器磁盘扩容实战:不卸载不停机的无损扩容方法

微信图片_2026-07-20_143314_308.png

去年一个客户,服务器磁盘写满了,业务告警。运维说:“得停机扩容,等半夜没人用的时候重启。”我问他:“云上扩容需要停机吗?”他愣了一下:“物理机扩容不都要停机吗?”

物理机扩容要关机换硬盘。云上扩容不需要。云磁盘本身就是虚拟化的存储资源,扩容是后端存储层面的操作,实例不需要关机,磁盘也不需要卸载。

那台服务器,从扩容到生效,全程10分钟,业务没有中断过一秒。

01 云上扩容不需要停机

云磁盘和物理磁盘的本质区别在于:物理磁盘扩容要换硬件,云磁盘扩容是修改后端的存储分配记录。对操作系统来说,它看到的是一块“变大了的磁盘”,不是一块“新磁盘”。

只要操作顺序正确,扩容全程不影响业务:云控制台扩容时,磁盘依然挂载在实例上,读写不受影响。操作系统内扩展分区和文件系统时,不需要卸载磁盘,也不需要重启实例。

适用场景:系统盘和数据盘都支持在线扩容,前提是实例状态为“运行中”且磁盘状态为“使用中”。如果磁盘是MBR分区且分区数量已达上限,则需先卸载分区再重新创建,此时需要停机

02 操作流程:两步走

云上扩容分两步:先在云控制台扩容磁盘,再登录服务器扩展分区和文件系统。只做第一步,空间不会增加。

第一步:云控制台扩容

以阿里云为例:进入ECS控制台,找到目标实例,在“云盘”标签页选中待扩容磁盘,点击“更多”→“磁盘扩容”,输入目标容量后提交。扩容过程几分钟,业务不受影响。操作前建议创建快照备份数据

腾讯云类似:进入云硬盘控制台,选择要扩容的磁盘,点击“扩容”并设置新容量

第二步:操作系统内扩展

控制台扩容完成后,登录服务器执行命令。

03 Linux系统扩容操作

查看磁盘与分区状态lsblk 查看磁盘大小是否已更新,df -h 查看文件系统使用情况

扩展分区:使用 growpart 工具

bash

# CentOS安装yum install -y cloud-utils-growpart# Ubuntu安装apt-get install -y cloud-guest-utils# 扩容分区(注意设备名与分区号之间有空格)growpart /dev/vdb 1

如果磁盘是裸设备(整块盘直接格式化,没有分区),跳过此步。

扩展文件系统

  • ext4:resize2fs /dev/vdb1

  • XFS:xfs_growfs /mount_point(挂载点路径)

验证结果df -h 确认新增空间已生效。

04 常见问题

扩容后df -h没变化:忘了执行第二步,或分区扩展未生效。重新执行 growpart 和文件系统扩展命令

growpart报错“unable to resize”:分区表不支持在线扩容,或磁盘空间已用满需要先清理临时文件。

扩容后原数据还在吗:在线扩容不格式化磁盘,原有数据完整保留

写在最后

那位客户后来按流程操作,磁盘从50G扩到100G,全程10分钟,业务没停过。他说:“原来云上扩容这么简单,以前白白停机了好几次。”

云上扩容不需要停机,但操作顺序不能错:先控制台扩容,再操作系统扩展分区,最后扩展文件系统。三步做完,空间就有了。下次磁盘满了,不用等半夜了。