在 CentOS Google VM 实例上进行 yum 更新后无法 SSH
Could not SSH after yum update on CentOS Google VM instance
我使用 Google 的默认启动磁盘 x86_64 built on 20200714
创建了一个 CentOS 7 实例。
我通过浏览器通过 SSH 成功登录,然后使用
更新了软件包
`sudo yum -y update`
重启虚拟机后,每当我尝试通过 SSH 登录时,都会出现以下错误:
Connection Failed
We are unable to connect to the VM on port 22. Learn more about possible causes of this issue.
知道为什么会发生这种情况吗?
这个bug是此时的热门话题。 RHEL 和 CentOS 7 和 8 可能会受到影响。 Red Hat 工程师正在处理这个错误。
目前首要的预防措施是:
- 请勿将受影响的勘误表 RHSA-2020:3217 应用于 RHEL 7。
- 请勿将受影响的勘误表 RHSA-2020:3216 应用于 RHEL 8。
- 请勿使用已应用的更新重新启动系统。
此处提供了有关此错误和可能的解决方法的更多信息:
https://access.redhat.com/solutions/5272311
此外,Google 问题跟踪器上有一个新注册的问题。大家可以关注一下:
https://issuetracker.google.com/162523000
如果您在同一区域中有一个健康的 VM 实例,并且与受影响的 VM 具有相同的 OS 版本,但没有应用错误的更新,则有机会手动修复损坏的 OS :
- 停止无法再启动的受影响实例。
- 编辑它以便分离启动盘。
- 将受影响的启动磁盘附加到具有相同 OS 版本的健康实例。
- 使用
lsblk
确定附加的磁盘名称。
- 将受影响的启动磁盘的 EFI 分区挂载到正常实例上(例如
mount /dev/sdb1 /mnt
)
- 将旧的 EFI 文件从健康实例的启动盘复制到挂载的受影响的启动盘:
# CentOS
cp /boot/efi/EFI/centos/shimx64.efi /mnt/EFI/centos/
# RHEL
cp /boot/efi/EFI/redhat/shimx64.efi /mnt/EFI/redhat/
umount /mnt
- 分离受影响的磁盘并将其作为引导磁盘附加回受影响的实例。
- 启动受影响的实例并检查结果。
我使用 Google 的默认启动磁盘 x86_64 built on 20200714
创建了一个 CentOS 7 实例。
我通过浏览器通过 SSH 成功登录,然后使用
更新了软件包`sudo yum -y update`
重启虚拟机后,每当我尝试通过 SSH 登录时,都会出现以下错误:
Connection Failed
We are unable to connect to the VM on port 22. Learn more about possible causes of this issue.
知道为什么会发生这种情况吗?
这个bug是此时的热门话题。 RHEL 和 CentOS 7 和 8 可能会受到影响。 Red Hat 工程师正在处理这个错误。
目前首要的预防措施是:
- 请勿将受影响的勘误表 RHSA-2020:3217 应用于 RHEL 7。
- 请勿将受影响的勘误表 RHSA-2020:3216 应用于 RHEL 8。
- 请勿使用已应用的更新重新启动系统。
此处提供了有关此错误和可能的解决方法的更多信息:
https://access.redhat.com/solutions/5272311
此外,Google 问题跟踪器上有一个新注册的问题。大家可以关注一下:
https://issuetracker.google.com/162523000
如果您在同一区域中有一个健康的 VM 实例,并且与受影响的 VM 具有相同的 OS 版本,但没有应用错误的更新,则有机会手动修复损坏的 OS :
- 停止无法再启动的受影响实例。
- 编辑它以便分离启动盘。
- 将受影响的启动磁盘附加到具有相同 OS 版本的健康实例。
- 使用
lsblk
确定附加的磁盘名称。 - 将受影响的启动磁盘的 EFI 分区挂载到正常实例上(例如
mount /dev/sdb1 /mnt
) - 将旧的 EFI 文件从健康实例的启动盘复制到挂载的受影响的启动盘:
# CentOS
cp /boot/efi/EFI/centos/shimx64.efi /mnt/EFI/centos/
# RHEL
cp /boot/efi/EFI/redhat/shimx64.efi /mnt/EFI/redhat/
umount /mnt
- 分离受影响的磁盘并将其作为引导磁盘附加回受影响的实例。
- 启动受影响的实例并检查结果。