执行发布升级后无法通过 ssh 进入 Oracle Cloud Ubuntu 20.04 实例

执行发布升级后无法通过 ssh 进入 Oracle Cloud Ubuntu 20.04 实例

之后我无法ssh进入 Oracle Cloud Ubuntu 20.04 实例do-release-upgrade。它正在顺利升级,但随后提示重新启动,重新启动后,我无法通过访问服务器ssh

我注意到我可以通过 oracle Cloud Console 访问它,但随后它会提示输入用户名和密码。用户名是 Ubuntu,但密码尚未设置,因为使用 putty 密钥访问 ssh。

我正在升级云服务器上的 Ubuntu 版本。我期望它允许我通过 ssh 连接到我的服务器,因为我通常在升级完成后通过 ssh 连接到它。

我尝试过使用 ChatGPT 来协助不同的选项,包括这种为“ubuntu”用户重置密码的方法。

ChatGPT 建议:

  • 重启实例。在重启过程中,按住Shift键以访问 GRUB 菜单。

  • 在 GRUB 菜单中,选择Advanced options for Ubuntu。选择以 结尾的选项(recovery mode)

  • 出现提示时,选择进入 root shell。

  • 根文件系统最初以只读模式挂载。以读/写模式重新挂载它:

    mount -o remount,rw /
    
  • 输入以下命令来更改用户密码ubuntu

    passwd ubuntu
    
  • 按照屏幕上的说明设置新密码。

  • 重新启动系统:

    reboot
    
  • 返回控制台窗口,输入用户名“ubuntu”,使用你设置的新密码登录。

但我仍然无法更改通过 Oracle Cloud Console 登录的密码,也无法通过 ssh 访问服务器。

答案1

无法连接到服务器的原因:

正如@Organic Marble 在评论中所说,您无法ssh访问服务器的原因是do-release-upgrade覆盖了您的 sshd 配置。您必须使用云控制台访问您的服务器并重新配置sshd

如果您想了解发生这种情况的原因,请检查以下内容:发布升级时是否需要替换定制的配置文件?

如何进入 GRUB 菜单:

我之前也遇到过类似的问题。不同之处在于您使用的是 Oracle Cloud Console,而我使用的是 Proxmox Console。大多数控制台都类似,所以差别应该不大。

ChatGPT 的建议与您需要执行的操作非常接近。不同之处在于,您需要在控制台中在Esc服务器启动/重新启动时按下。尝试按几次。

进入GRUB菜单后,您可以更改密码、设置 sshd 并执行任何您想做的事情。请不要盲目遵循 ChatGPT 的建议,您的系统可能已安装为读/写。

相关内容