从管理员组中删除后重新获得 Sudo 权限

从管理员组中删除后重新获得 Sudo 权限

我在编辑用户时不小心将自己从管理员组中移除。现在我无法再使用sudo。错误信息如下:ber 不在 sudoers 文件中。此事件将已报告

我启动了救援模式,但是,当进入根提示符,它要求我输入 root 密码。我没有 root 密码,并且提供了我自己的(第一个也是唯一的 ubuntu 用户)密码,它不允许进入。

我的硬盘已加密,但只有/主页/用户据我所知,这是部分,而不是整个磁盘。

我能做些什么?

答案1

嗯,你已经涵盖了我首先要建议的内容。如果整个磁盘未加密,救援模式会要求你输入密码,这似乎很烦人(我不知道,这可能是标准协议)。

我个人会进入实时环境(通过 Live CD 或 Live USB),挂载文件系统(假设它不是加密)并编辑其etc/group文件并将自己添加回来。结果行应如下所示(尽管 GID 可能不同):

admin:x:115:oli

或者在 Ubuntu 12.04 上,找到 group 的行sudo而不是admingroup。


或者,您也可以chroot从 LiveCD 运行命令。(LiveCD 的 sudo 密码是空白密码,只需在提示时按回车键即可)

sudo mount /dev/sdYY /mnt  # change sdYY to your root partition
sudo mount --bind /dev  /mnt/dev
sudo mount --bind /dev/pts  /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys  /mnt/sys
sudo chroot /mnt
sudo adduser your-username admin

对于 Ubuntu 12.04 及更高版本,将用户添加到sudo组而不是admin组:

sudo adduser your-username sudo

chroot它会将您带到文件系统内的 root shell,因此您可以执行一些有趣的操作,例如将用户添加到组中。它最适用于修复启动问题,但它可以执行很多操作。

答案2

在 grub 启动菜单中,按下e编辑内核启动命令行并single在其末尾添加单词。这将以单用户模式(以 root 身份)启动系统,并允许您执行任何修改。

相关内容