You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无损将Debian EC2的dev/xvdf替换为根卷dev/xvda并缩容至80GB

Debian EC2实例根EBS卷缩容步骤(从500GB到80GB)

1. 初始化新卷(/dev/xvdf)

  • 先确认新卷状态:lsblk,确保/dev/xvdf未分区
  • 给新卷创建分区:
    fdisk /dev/xvdf
    
    • 输入n创建新分区,选择主分区(p),分区号设为1,起始扇区用默认值,结束扇区直接按回车(因为新卷本身就是80GB)
    • 输入w保存分区表
  • 格式化分区为ext4(和原根卷文件系统保持一致):
    mkfs.ext4 /dev/xvdf1
    

2. 完整复制原根卷数据到新卷

  • 创建临时挂载点并挂载新分区:
    mkdir /mnt/new-root
    mount /dev/xvdf1 /mnt/new-root
    
  • 用rsync复制所有有效数据(排除系统临时/挂载目录,避免无效复制):
    rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/new-root
    
    • 参数说明:-a保留权限、所有者等属性;-A保留ACL规则;-X保留扩展属性;-v显示复制进度

3. 配置新卷的引导与系统挂载规则

  • 挂载必要的系统目录,以便进入新卷的系统环境:
    mount --bind /dev /mnt/new-root/dev
    mount --bind /proc /mnt/new-root/proc
    mount --bind /sys /mnt/new-root/sys
    
  • 切换到新卷的系统环境:
    chroot /mnt/new-root
    
  • 安装GRUB引导程序(确保新卷能作为根卷启动):
    grub-install /dev/xvdf
    update-grub
    
  • 查看新分区的UUID(后续修改挂载规则要用):
    blkid /dev/xvdf1
    
  • 编辑/etc/fstab,把根分区(/)的UUID替换成上面查到的新卷UUID,确保文件系统类型为ext4
  • 退出新卷的系统环境:
    exit
    
  • 卸载临时挂载的系统目录:
    umount /mnt/new-root/sys
    umount /mnt/new-root/proc
    umount /mnt/new-root/dev
    umount /mnt/new-root
    

4. 切换根卷并验证系统

  • 停止EC2实例(确保所有数据写入完成)
  • 在AWS控制台操作:
    • 分离原根卷(/dev/xvda),务必保留原卷作为备份,不要立即删除
    • 将新卷(原/dev/xvdf)挂载到实例的根卷位置(/dev/xvda)
  • 启动实例,连接后验证:
    • 用df -h查看根卷容量是否为80GB
    • 检查系统服务、数据是否正常

内容的提问来源于stack exchange,提问作者Abhishek Panda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 12:55:08