前言
EBS 卷仅支持单向扩容, 不允许直接缩容 (没毛病). 对于非 Windows 系统所在的数据卷, 可以直接创建一个新的小容量 EBS 卷挂载到实例后进行文件级别的复制. 而对于 Windows 系统所在的根卷, 或者数据卷中存在持续读写的文件 (例如 SQL Server 的数据库), 就需要关机后进行冷处理.
具体步骤
- 检查当前系统根卷空间使用情况, 可以看到我这台实例中用的根卷容量为 100 GB, 实际使用空间只有不到 20 GB. 目标期望将卷容量缩小到 50 GB.

- 在 EC2 控制台打开实例详情页面, 分别记录下实例所在的可用区 (AZ) 以及根卷对应的 ID 信息

- 创建一个新的 50 GB 大小的卷, 注意使用和原实例相同的 AZ. 创建后注意记录新卷的 ID

- 启动一台新的 EC2 Windows Server 2025 实例作为冷操作期间的
工具实例, 注意该实例需要保持和原 Windows 实例使用相同的 AZ

- 将原 Windows 实例 Stop 关机, 等待实例状态变为 Stopped 之后, 将根卷分离
注意, Stop EC2 实例后, 如果之前有使用自动分配的公网 IP, 再次启动时 IP 地址会重新分配.
- 等待原 Windows 根卷状态变为 Available 之后, 将它还有前面创建的 50 GB 容量的小卷都挂载到工具实例, 远程连接到工具实例, 打开 Edge 浏览器下载 DiskGenius 工具

也可以在自己电脑上下载好了复制粘贴到工具实例远程桌面内
-
解压
DG6111742_x64.zip压缩包后, 运行DiskGenius.exe程序 -
同意协议进入 DiskGenius 工具主界面, 检查两个 EBS 卷的容量和信息

-
点击菜单 工具 - 克隆磁盘

-
选择源磁盘, 留意源磁盘包含分区和 Windows 系统

-
选择目标磁盘, 留意是空闲的 50GB 容量

-
确认无误后开始任务

注意选择
锁定后执行

-
等待克隆任务完成


-
完成克隆任务后, 退出 DiskGenius, 并直接关闭工具实例.
-
将 50GB 容量的新卷从工具实例分离, 并重新挂载到原 Windows 实例, 注意由于是系统根卷, 所以挂载的设备名必须选择
/dev/sda1

-
启动原 Windows 实例, 检查确认新的小容量系统根卷正常工作.

