AWS国际站 EBS 磁盘满了导致 EC2 无法启动?不停机扩容与根分区修复全过程

亚马逊aws / 2026-08-04 14:28:49

如果需要更深入咨询了解可以联系全球代理上TG: @cloudcup  他们在云平台领域有更专业的知识和建议,他们有国际阿里云,国际腾讯云,国际华为云,aws亚马逊,谷歌云一级代理的渠道,微软云开户充值。oss防风控上传加密系统。客服1V1服务,支持免实名、免备案、免绑卡。开通即享专属VIP优惠、充值秒到账、官网下单享双重售后支持。

EBS 磁盘满了导致 EC2 无法启动,现场最怕的不是空间不够,而是顺手重启、盲目删文件,或者账号和付款状态没准备好,结果救援实例、快照和扩容都卡住。处理这类问题,顺序比动作更重要。

先判断能不能在线扩容;已经起不来的,目标是把停机时间压到最短,而不是硬追求零中断。

EBS 磁盘满了导致 EC2 无法启动时,先别急着重启

先看这几个信号:如果还能登录,执行 df -h 和 df -i;如果空间没满但 inode 满了,表现也会像磁盘满;如果启动时直接进 emergency mode,通常还要查文件系统和 /etc/fstab。

  • 容量满:根分区 100%,服务日志、临时文件、包管理都会报错。
  • inode 满:小文件太多,哪怕还有剩余容量也写不进去。
  • 文件系统损坏:异常关机、强制重启后更容易出现。

不停机扩容的完整流程

只要实例还在运行,EBS 扩容本身可以在线完成。关键是不要只改卷大小,改完后还要把分区和文件系统一起扩进去。

  1. 先做快照。哪怕只是临时救火,也别跳过这一步。
  2. 在控制台修改 EBS 卷大小,或者用对应 API/CLI 提交扩容。
  3. AWS国际站 进入系统后确认设备名。Nitro 实例常见是 /dev/nvme0n1,老架构可能是 /dev/xvda。
  4. 先扩分区,再扩文件系统。常见顺序是 growpart 后接 resize2fs,若是 XFS 则用 xfs_growfs。
  5. 如果根盘套了 LVM,还要多做 pvresize 和 lvextend,不要直接跳到文件系统扩容。
  6. 最后再看 df -h、df -i,确认新空间已经挂到根分区。
场景推荐动作容易漏掉的点
还能 SSH,业务还在跑在线扩容卷改大后,分区和文件系统不会自动变大
能进系统但已经频繁报错先扩容,再清日志别在 100% 磁盘上大量删除后又忘了扩文件系统
完全起不来,进不了登录界面离线救援这时很难做到真正不停机,只能把停机时间压短

AWS国际站 如果已经无法启动,根分区修复要按救援流程走

严格来说,实例已经起不来,就不要再强调零停机了。更稳妥的做法是:先把根盘救出来,确认是空间问题还是文件系统问题,再决定清理还是扩容。

  1. 先拍快照,保留回滚点。
  2. 停止目标实例,分离根 EBS 卷。
  3. 把根卷挂到同一个可用区里的救援实例上。
  4. 在救援实例里识别磁盘,确认哪个分区是原来的根分区。
  5. 如果怀疑文件系统损坏,先做 fsck;如果只是日志和临时文件撑爆,先挂载后清理。
  6. 检查 /etc/fstab、UUID 和启动参数,避免因为挂载项写错导致再次进 emergency mode。
  7. 修复完成后再挂回原实例,启动验证。

很多人会忽略一个细节:磁盘满不是只有日志爆掉一种情况。数据库写满、Docker overlay2 膨胀、上传目录失控、包缓存堆积,都会在重启时把系统拖进半启动状态。

账号购买、实名认证、企业认证和支付状态,为什么会影响扩容

如果你是通过国际云账号、企业统一采购或渠道代付来做 AWS 资源管理,扩容时最常见的卡点不在技术,而在账号侧。救援实例、快照、EBS 卷、临时公网出口这些资源都要能正常下单,账号一旦被风控、付款失败或权限不足,修复就会中断。

要先确认的项常见卡点建议
账号状态账单异常、付款失败、账号限制先确保计费正常,别等到扩容时才发现下单被拒
支付方式信用卡失效、账单地址不一致、企业月结未开通提前维护主支付方式,保留备用付款链路
实名认证和企业认证资料不完整、主体信息不一致统一公司主体、联系人和付款主体,减少审核回退
风控审核新号、异地登录、突增资源申请紧急场景不要临时换卡、换主体、换登录环境
资源权限没有修改卷、创建快照、挂载磁盘的权限给运维账号预置最小但够用的 IAM 权限
资源配额可用区、实例族、EBS 数量或快照额度不够修复前先查配额,必要时先申请提升

如果你的采购模式里还有充值续费流程,别把账期和磁盘修复混在一起处理。先确认资金链路能跑通,再做扩容;否则最坏的情况是系统盘还没修好,余额或额度先断了。

成本控制别忽略:救火和长期扩容不是一回事

EBS 只要改大,费用就会按新容量计算。很多团队在应急时习惯一次性放大很多,后面却没有配套的日志轮转、保留周期和自动清理,结果成本一直挂着不降。更稳妥的方式是先把业务拉回安全线,再根据增长速度定二次扩容。

  • 临时救援实例选最小可用规格,修完就释放。
  • 快照保留到确认业务稳定后再决定是否长期留存。
  • 日志目录、缓存目录、Docker 数据目录要分开评估,别只盯根分区。
  • AWS国际站 如果经常满盘,应该把高增长目录单独挂盘,而不是每次都扩系统盘。

常见错误

  • 一上来先重启,结果系统反复进入启动失败状态。
  • 只扩了 EBS 卷,没有扩分区和文件系统。
  • 把 inode 满误判成容量满,删了很多文件却没有解决写入失败。
  • 在错误的可用区找救援实例,导致卷无法挂载。
  • XFS 盘用了 resize2fs,或者 ext4 盘用了错误的扩容命令。
  • 修完不检查 /etc/fstab,下一次启动还是回到同一个坑。

FAQ

Q1:能不能做到完全不停机?

如果实例还在运行,EBS 在线扩容可以做到业务不停机;如果已经无法启动,只能走救援和修复流程,严格意义上不可能完全零停机。

Q2:扩容后为什么 df 看不到新空间?

通常是只改了卷大小,分区和文件系统还没扩。先看 lsblk,再按分区类型处理,最后再看 df。

Q3:磁盘满了以后,是先删文件还是先扩容?

如果还能正常登录,优先扩容,再做清理;如果已经连 SSH 都不稳,先保住最小可启动空间,避免删到一半服务彻底起不来。

如果你这台 EC2 已经因为 EBS 满盘进不了系统,最实用的原则就一句:先保留回滚点,再分清是容量问题、inode 问题还是文件系统问题,然后按在线扩容或离线救援走。把账号权限、支付状态、风控和配额一起检查,通常比单纯盯着磁盘更能节省时间。

如果需要更深入咨询了解可以联系全球代理上TG: @cloudcup  他们在云平台领域有更专业的知识和建议,他们有国际阿里云,国际腾讯云,国际华为云,aws亚马逊,谷歌云一级代理的渠道,微软云开户充值。oss防风控上传加密系统。客服1V1服务,支持免实名、免备案、免绑卡。开通即享专属VIP优惠、充值秒到账、官网下单享双重售后支持。
Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系