我不小心锁定了我的 linux root 用户,现在我无法登录

我不小心锁定了我的 linux root 用户,现在我无法登录

我不小心使用命令将我的 root 用户添加到我的 sftp 组:

sudo usermod -a -G sftp ubuntu

现在每次我尝试登录我的 Linux 服务器时都会显示以下错误:在此输入图像描述

我的服务器中没有任何其他用户。我如何解决它?

答案1

由于您使用的是 AWS EC2 实例,因此实际上只有一种恢复选项:停止该实例,将 EBS 卷安装到另一个 EC2 实例,然后手动修改 /etc/group 文件以ubuntusftp组中删除用户。

AWS 提供了有关如何将 EBS 卷挂载到另一个 EC2 实例上的说明在这个文档链接。为了对抗链接腐烂,步骤是:

使用控制台将 EBS 卷附加到实例

  1. 打开 Amazon EC2 控制台https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择卷。

  3. 选择要附加的卷,然后选择操作、附加卷。

笔记

您只能附加处于“可用”状态的卷。

  1. 对于实例,输入实例的 ID 或从选项列表中选择实例。

笔记

该卷必须附加到同一可用区中的实例。

如果卷已加密,则只能将其附加到支持 Amazon EBS 加密的实例类型。有关更多信息,请参阅 Amazon EBS 加密。

  1. 对于设备名称,输入卷支持的设备名称。此设备名称由 Amazon EC2 使用。挂载卷时,实例的块设备驱动程序可能会分配不同的设备名称。有关更多信息,请参阅 Linux 实例上的设备名称。

  2. 选择附加卷。

  3. 连接到实例并安装卷。有关更多信息,请参阅使 Amazon EBS 卷可在 Linux 上使用。

ubuntu从组中删除用户后sftp,您可以断开该卷与您正在使用的 EC2 实例的连接,启动出现错误的原始 EC2 实例,并正常通过 SSH 连接到该实例。

答案2

不要以 root 身份登录。以管理用户身份登录并用于sudo -s获取 root shell。

如果失败,请启动救援图像并用它来重置 root 的组成员身份

相关内容