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

无法登录AWS EC2实例问题排查及复用咨询

AWS EC2 Ubuntu 20.04实例宕机无法SSH的问题排查与解决

一、可能的宕机原因

  • 资源耗尽或磁盘满:Laravel应用、PHP-FPM、Nginx等进程占用过多CPU/内存,触发系统OOM Killer杀死核心进程;或者日志、缓存文件填满磁盘,导致系统无法读写关键文件。
  • 软件/内核故障:系统更新、Laravel依赖包更新引发内核panic,或是sshd(SSH服务)配置损坏,无法正常启动。
  • 网络配置异常:安全组误关闭22端口、弹性IP解绑、子网路由配置错误,导致外部无法连接;也可能是系统内部网络服务故障。
  • AWS底层硬件问题:实例所在物理机出现硬件故障,导致实例无法正常启动,部分场景下可通过控制台迁移实例解决。

二、复用原实例的操作步骤

因为无法SSH登录,只能通过EBS磁盘挂载的方式救援:

  1. 分离并挂载原实例磁盘到新实例
    • 先停止故障实例,在EC2控制台找到该实例对应的根EBS卷,点击「分离卷」。
    • 找到你新建的正常实例,点击「附加卷」,选择刚才分离的EBS卷,挂载点选非根卷位置(比如/dev/sdf)。
    • 登录新实例,执行命令挂载磁盘:
      sudo mkdir /mnt/recovery
      sudo mount /dev/xvdf1 /mnt/recovery  # 设备名可能需调整,可通过lsblk查看实际名称
      
    • 此时可直接访问原实例的所有数据,备份Laravel代码、数据库文件(比如/mnt/recovery/var/lib/mysql)、配置文件等。
  2. 排查并修复故障(可选)
    • 查看原实例日志找问题:
      sudo cat /mnt/recovery/var/log/syslog
      sudo cat /mnt/recovery/var/log/auth.log  # 查看SSH相关错误
      
    • 检查磁盘空间:df -h /mnt/recovery,如果是磁盘满了,清理冗余日志或无用文件后,可尝试把磁盘挂回原实例重启。
  3. 恢复原实例
    • 修复完成后,先卸载挂载的磁盘:sudo umount /mnt/recovery,然后在控制台分离该卷,重新附加到原实例的根卷位置(通常是/dev/sda1),启动原实例尝试登录。

三、无付费支持时的AWS求助方式

  • AWS re:Post社区:在AWS官方社区的EC2板块发帖,描述清楚实例状态、故障现象,会有AWS官方人员和资深用户免费提供解决方案。
  • AWS官方文档:直接搜索「AWS EC2无法SSH登录」「EC2实例无法启动」,文档里有分步排查的详细指南,覆盖大部分常见问题。
  • 免费支持案例:如果是AWS自身硬件故障、服务异常等问题,可在AWS支持控制台提交「服务健康」或「账户相关」的免费案例,AWS会进行响应处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 04:10:41